0
$\begingroup$

Rosanswers logo

Hi all,

from the SLAM algorithm I use, I can get a mesh or a Pointcloud representation of the map. Can I somehow run the standard navigation stack? My idea is to use a empty static map and use the sensor input for the Map. Is that possible? Are there better solutions?

Regards


Originally posted by BBlumhofe on ROS Answers with karma: 3 on 2021-12-21

Post score: 0


Original comments

Comment by Mike Scheutzow on 2021-12-23:
Are you trying to create a SLAM implementation on your own? Which of the many existing ROS SLAM packages have you studied? I applaud your ambition, but it's not clear from your short paragraph that you understand the difficulty of the problem .

Comment by BBlumhofe on 2021-12-23:
I don‘t want to build a SLAM Algorithm on my own. I am trying to use Kimera (https://github.com/MIT-SPARK/Kimera-VIO-ROS) to navigate with the robot. Kimera outputs a pointcloud or a mesh of the Environment which i want to use for navigation. As far as I understood I have to reduce to pointcloud to a 2d map to use the navigation stack. Is there a way to use ros packages to do this or do i habe to do it on my own? Are there packages from which i don‘t know which enable me to navigate on a mesh?

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

There is an existing ros package to convert a pointcloud to a laserscan, then the navigation stack can be configured to work with that laserscan.

http://wiki.ros.org/pointcloud_to_laserscan


Originally posted by Mike Scheutzow with karma: 4903 on 2021-12-23

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by BBlumhofe on 2021-12-23:
but this is only for the sensing isn't it? ROS navigation stack needs a static map in 2d or did I understand the documentation wrong?

Comment by BBlumhofe on 2021-12-24:
The poitncloud to laser idea worked not for me because the robot has to navigate into multiple rooms and the laserscan reduce the map to the first wall and do not see the room behind that wall as I would expect. I have seen that Kimera outputs the occupied nodes as a marker array. Is it possible to use that for navigation?

Comment by Mike Scheutzow on 2021-12-26:
I don't know how smart that package is about extracting a plane from a point cloud. If you are sure the information you want is present in the point cloud, it may be best to write your own custom extractor.

Comment by BBlumhofe on 2021-12-27:
Thanks a lot for your help. I found a workaround for my problem. I extract the relevant part of the pointcloud with pcl_ros and then integrate it into the costmap2D via the voxel layer. Then I can use the standard ROS-navigation package.

Comment by Mike Scheutzow on 2021-12-28:
I'm glad you got it working. Thank you for sharing your solution.

$\endgroup$

Your Answer

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