jaymwong / seline

6-DOF eye-hand pose estimation and calibration for robotic systems with sufficiently good kinematics.
BSD 2-Clause "Simplified" License
10 stars 5 forks source link

Monocular camera #18

Open GianlucaCerilli opened 5 years ago

GianlucaCerilli commented 5 years ago

Hi, is it possible to use this code for calibrating a monocular camera mounted on the end-effector of a kinova jaco2 manipulator?

Thank you

jaymwong commented 5 years ago

seline was written to calibrate the eye hand transformation between a stationary camera with the end effector, using a known model of the end effector for pose estimation. To do this, you need to obtain a known transform between the world (or base_link) frame of your robot to the model you're perceiving and estimating the pose of. If the model is the end effector, this is easy since we can directly look at the forward kinematics to get it.

In the case of your example, you could possibly take the camera at the end effector and point it towards the base of the robot. Assuming you have a model for the base and you know the world to origin of that model, you can likely use seline in this scenario. That is also under the assumption that the camera you have is not simply a monocular RGB camera, but you can get a point cloud out of it. (There are methods to estimate a point cloud or depth map from monocular images: See 1, 2, but I'm not sure how well they work).