0
$\begingroup$

Rosanswers logo

I am using Autoware 1.14 in ROS Melodic, installed from source and built with CUDA.
I want to use the lidar localizer algorithms with my ROS system that contains another autonomous car package.

Specifically, my system's TF tree is as follows: map -> odom -> base_footprint -> base_link ->the rest of the TF frames.

When I am using the NDT Matching algorithm, it provides a transform map -> base_link and it changes completely my TF tree and several other functionalities.

So, I thought to change the NDT algorithms's (matching and mapping) source code, so that they provide a transform from map to odom instead of base_link.

Does this sound correct? Or is there any other way to make this work?
Thanks in advance.


Originally posted by kosmastsk on ROS Answers with karma: 210 on 2020-08-17

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

In order to solve this problem, I made the lidar_localizer nodes totally independent from the rest of the Autoware packages. It is important to have the odom --> base_link transform, which is provided by Gazebo, another simulator or the robot itself. So, changing the source code to publish from map --> odom, another change needs to be made. Before publishing the transform, you should subtract the odom-->base_link from map-->base_link which is calculated by the code and then publish its result as map-->odom.


Originally posted by kosmastsk with karma: 210 on 2020-09-16

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.