Closed yutouwd closed 3 years ago
Hey @yutouwd,
As you can see on the tf
output, your transformation tree is not connected.
With the odometry nodes we are publihsing from the imu_new
to camera
frames, while all your bag messages are coming from the map
frame. Also, I cant't really tell based on this picture, but your bag also seems to have an odometry topic that publishes to the odom
frame. Keep in mind also, that the pointclouds needs to be published under the imu_new
frame. Sadly it is not the best architecture design that I hardcoded that parameter, but shouldn't be hard for you to refactor that to a rosparam.
That static transform in the launch file can help connecting static frames and add necessary rotation that might be helpful for your visualization purposes.
Cheers, David
Hello @RozDavid,
Our bag do have an odometry topic. So I use this script to remove the odom
and I also publish a static transform between world
and base_link
. In this way, the local map can update normally. But after I test many times, I find that there is no match between local map and target map. Now, our tf view_frame
is:
In the left is map
to base_link
.
Am I doing it in a right way? And I do not understand what you say refactor that to a rosparam
. Would you please be more specific? Thank you so much.
Hi David @RozDavid,
Hope everything goes fine with you.
I'm kind of having a similar issue with @yutouwd. I published a static transform between the world
and base_link
. However, I also find that there is no match (i.e. no successful localizaztion) between the local map and the target map.
Any possible reason for this?
Thanks and Best Regards, William
Hey @WilliamWoo45,
Can you see how the local map around the robot is building up and visualized? If no local map available there, matches cannot be recognized with the target map. If the local map is not updating that should be due to transformation inconsistencies (either with transforms from the past in your rosbag or detached tf tree), or you are not subscribed to the correct lidar pointcloud topic in the right frame.
Hello @RozDavid,
Thanks for your response. Actually in my case, the local map is building up and keep updating, as shown in the GIF below:
And I confirm that I subscribed to the correct LiDAR pointcloud topic (/velodyne_points) in the right frame.
Hello @RozDavid,
Now I can run the demo on kitti dataset, and it has a good performance. But when I try to run it on our rosbag, I find the local map don't update after first few scan. Like the following picture:
rosrun tf view_frame
result is:Another question is: in the
kitti_loam_segmap.launch
there is a line:<node pkg="tf2_ros" type="static_transform_publisher" name="static_broadcaster" args="0 0 0 0.5 0.5 0.5 0.5 world imu_new" />
. What is it used for?