ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

rasmus25's profile - activity

2014-07-11 08:27:41 -0500 answered a question Is there a node/package for periodic camera calibration?

I have not heard of such a package. Surely you could run anything periodically with just a simple script, but the cleanest way to do what you are after is use the OpenCV function solvePNP(). It takes as an input the 2D pixel coordinates of your calibration pattern points and the corresponding 3D world coordinates. The output is the translation vector and the rotation vector. You can get a rotation matrix out of the rotation vector with OpenCV function Rodrigues(). The pattern 2D coordinates can be found from the image using either findChessboardCorners() or findCirclesGrid(), depending on your pattern.

This is exactly what OpenCV uses for camera calibration and ROS simply uses OpenCV for the task. You will find the OpenCV examples on the Internet.

One thing to keep in mind is that due to the possible symmetry of your calibration pattern, the rotation vector might be 180 degrees rotated from what you expect.

Sorry for giving an OpenCV answer to a ROS question.