How to change parent in tf tree
Hi, I am trying to evaluate a SLAM algorithm within gazebo 7.0, ROS Kinetic running on Ubuntu 16.04
This algorithm provides me a transform between the (estimated) camera and the resulting point cloud. The input source is a cam rigidly attached to a drone for which I gain a TF tree connected to the world frame.
My idea was to:
1) initially provide a fixed transform between the estimated camera link and the actual camera link when the drone is in the starting position. (with no/zero transform and rotation) resulting in the following (simplified) tree world->drone->camera/estimated camera->point cloud
2) getting the transform with a listener from world to the point cloud (world->point cloud)
3) inverse the transform between the estimated camera and the point cloud (point cloud->camera)
4) apply the transform (world->point cloud) instead of the one between the camera and estimated camera to get:
world---->drone->camera
|---->point cloud->estimated camera
unfortunately I could not find out how to remove the old parent (estimated camera) form the the point cloud and therefore get an circular tf dependency instead.
could somebody give me a hint how to or am I following a completely wrong/unsupported idea? (the final goal would be to compare the error/offset between the two frames of the cameras)