ros-drivers / velodyne

ROS support for Velodyne 3D LIDARs
http://ros.org/wiki/velodyne
Other
646 stars 643 forks source link

velodyne_driver output different between ROS2 and ROS1 #496

Open cjffly opened 1 year ago

cjffly commented 1 year ago

Please complete the following information: ROS1:

ROS2:

Describe the bug Using the same pcap file, the velodyne_packets and velodyne_pointcloud output from ros1 and ros2 are different, leading the visualization in rviz show different. ros2 pipeline shows multiple reflection of the same objects at wront location. (like a ghost image)

See rviz output video below: ROS1:

https://user-images.githubusercontent.com/11035640/207976588-6118e148-58f8-48bd-96ea-307710a9a5a3.mp4

ROS2:

https://user-images.githubusercontent.com/11035640/207976598-8ac2dbd8-e3da-4557-8ebd-91b0846aa38d.mp4

I exam the velodyne_driver output, (topic velodyne_packets), for the first output frame (using rostopic echo -n 1 for ros1 or ros2 topic echo --once in ros2), ros1 has more packets (151 packets) than ros2(128 packets). (The actual data for the 128 packets from ros2 are the same as those in ros1 output, just missing the rest packets). I wonder what make the velodyne driver treat the same pcap file differently?

cjffly commented 1 year ago

[update]

I found this issue is has nothing to do with the driver, but related to the pointcloud calibration file. If I change all the rot_correction to 0.0, I would be normal again.

@JWhitleyWork Do you know how the calibration file/rot_crrection works?

JWhitleyWork commented 1 year ago

Unfortunately I don't. Which sensor are you using and which configuration file?