introlab / rtabmap

RTAB-Map library and standalone application
https://introlab.github.io/rtabmap
Other
2.83k stars 787 forks source link

VelodyneLaserScan: PointCloud2 missing one or more required fields! (x,y,ring) after run rtabmap with localization #1275

Open qetuo105487900 opened 6 months ago

qetuo105487900 commented 6 months ago

VelodyneLaserScan: PointCloud2 missing one or more required fields! (x,y,ring) after run rtabmap with localization what happend ? everyone had meet this problem ?

First, i run the robot driver and sensors. there is a sensor fusion with 2d lidar and 3d laserscan to use for obstabcle avoidance. didn't use in rtabmap.

Second, i use this parameter on demo_husky.launch with original velodyne point cloud.

  <arg name="initial_pose"   default="0.00841955 0.085911 0 0 0 -1.6405"/>
  <arg name="database_path" default="~/.ros/itc_1F.db"/>
  <arg name="navigation"   default="false"/>
  <arg name="localization" default="true"/>
  <arg name="icp_odometry" default="true"/>
  <arg name="rtabmap_viz"  default="false"/>
  <arg name="camera"       default="true"/>
  <arg name="lidar2d"      default="false"/>
  <arg name="lidar3d"      default="true"/>
  <arg name="lidar3d_ray_tracing" default="true"/>
  <arg name="slam2d"       default="true"/>
  <arg name="depth_from_lidar" default="false"/>

then i get this from 3d lidar, it is so weird. i never meet this problem when i run slam with cartographer. Screenshot from 2024-05-06 15-52-36

matlabbe commented 6 months ago

This error is independent of rtabmap. Are you feeding the right Pointcloud2 msg to velodyne_laserscan node? That should be the original velodyne point cloud topic (not an output of rtabmap nodes).