Javatpoint Logo
Javatpoint Logo

calibrateHandEye() Python OpenCV


In this article, we are discussing calibrateHandEye() Python openCV. The OpenCV in Python is an open-supply pc imaginative and prescient. It is a Machine Learning software program library widely used for various packages. Python's calibrateHandEye() function is used to find the matrix transformation between a robot hand and its connected eye, including a camera. The openCV is given numerous functions. These functions are used for many applications like computer vision responsibilities, photo processing, and consisting of the calibrateHandEye() feature. This text discusses the concepts related to the calibrateHandEye() feature of Python opencv, concerned with some examples.

Concept of calibrateHandEye() Python OpenCV?

Now we briefly talk about the concept of calibrateHandEye() Python openCV. Python's calibrateHandEye() function determines the matrix transformation between an eye and its hands. In the case of the transformation matrix, it is a 3×4 matrix that represents the relationship between the translation and rotation of 2 structures.

Within the context of a robot eye, the eye coordinates are within the eye's coordinate device, and the hand coordinates are in the hand's coordinate system. The calibrateHandEye() function of Python opencv takes two arrays as input: one array represents the hand coordinates, and the other represents the eye coordinates. The calibrateHandEye() function returns the transformation matrix that maps one system to the alternative system.

You have some point in a system. The points are hard and fast corresponding points in each system used to the function. These points could not be in the other devices and must be present in the same devices; the example is meters or millimeters. The more points you have got, the extra correct the result will be. You want to define the coordinates of the hand and eye in each structure and bypass them to the calibrateHandEye() feature as arrays. For further value, you may want at least 4 points to get a correct result.

The calibrateHandEye() function in Python determines the 3*4 matrix transformation. The characteristic will then return the transformation matrix:

As soon as you have got the 3*4 transformation matrix, then you can use it to convert the coordinates from one device to the opposite device like this:


Now we discuss the program code of the calibrateHandEye() features in Python openCV. The code is written in Python in Visual Studio code, and the code is given below -


Now we compile the above program and run it in any manner. After running the program, we found the output, and this output is given below -

[[ 0.9675689 0.24536189 -0.14182647]
 [ -0.1567890 0.03456278 -0.98763569]
 [ -0.27773836 0.9575204 0.077712234]]


Now we explain the above program below. Here we first imported the important libraries. At that point, two clusters of facilitates for the hand and eye positions are initialized.

The calibrateHandEye work is then utilized to discover the change lattice (X) between the hand and eye arrange frameworks. The coming about X network is, at that point, printed. The calibrateHandEye work is utilized to calibrate the hand-eye relationship for automated frameworks, where the position of a hand is related to the position of an eye. Then we initialize the rotation matrix.

The point characterizes a turn framework (x_target2cam) and interpretation vector (x_target2cam) between the target and the camera. The work computes the change between the two arranged frameworks by comparing focuses in both spaces.


In this article, we are discussing calibrateHandEye() Python openCV. Here we discuss the concept of the calibrateHandEye() and share the program code of calibrateHandEye().

Youtube For Videos Join Our Youtube Channel: Join Now


Help Others, Please Share

facebook twitter pinterest

Learn Latest Tutorials


Trending Technologies

B.Tech / MCA