Parent TF frame in camera_pose_calibration
The individual calibrations are correct, but the calibration_tf_publisher
saves all of the transforms relative to the /world
frame (e.g. /world -> cam1
and /world -> /cam2
instead of /cam1 -> /cam2
). The resulting TF tree is incorrect because /world
is different for each pairwise calibration [1].
Is there any way I can save the transformation between the cameras without including the /world
parent frame?
If I was calibrating three cameras (cam1
through cam3
), I would calibrate cam1
-cam2
and cam2
-cam3
separately. Currently, the calibration_tf_publisher
would save the following transforms:
/world
-/cam1
(calibration 1)/world
-/cam2
(calibration 1)/world
-/cam2
(calibration 2)/world
-/cam3
(calibration 2)
Because the world frame is arbitrary and differs between the two calibrations, there are two conflicting transforms from /world
to /cam2
. I would prefer that calibration_tf_publisher
directly publish the transformation between the cameras (with no /world
intermediate):
/cam1
-/cam2
(calibration 1)/cam2
-/cam3
(calibration 2)
I don't think this would cause any problems with multiple-camera calibration, either: all of the transforms could be published as children of the first camera.