LimHyungTae / patchwork

SOTA fast and robust ground segmentation using 3D point cloud (accepted in RA-L'21 w/ IROS'21)
MIT License
481 stars 75 forks source link

md5sum mismatch : Connection drop #12

Closed BhooshanDeshpande closed 2 years ago

BhooshanDeshpande commented 2 years ago

I am trying to run rosbag_kitti.launch on a rosbag which contains sensor::PointCloud2 message. Using Ubuntu 20.04, ROS Noetic.

On running rosbag, I am getting --

[ERROR] [1645128512.247642039]: Client [/ros_kitti_bhooshan_Legion] wants topic /os_cloud_node/points to have 
datatype/md5sum [patchwork/node/8ffdb3dcfd475161209f2ce2c04a5bcc], but our version has 
[sensor_msgs/PointCloud2/1158d486dd51d683ce2f1be655c3c181]. Dropping connection.

According to internet there is a mismatch in what the subscriber is asking for and what my rosbag is publishing. The same rosbag works well on pub_for_legoloam.launch. I compared the two files and found out the difference being line 150 in rosbag_kitti.cpp :

    ros::Subscriber NodeSubscriber = nh.subscribe<patchwork::node>("/node", 5000, callbackNode);

and line 90 on pub_for_legloam.cpp :

    ros::Subscriber NodeSubscriber = nh.subscribe<sensor_msgs::PointCloud2>("/node", 5000, callbackNode);

That's what I think on a primary check. Can you help? You can try running any rosbag with PointCloud2 msgs and try running it with rosbag_kitti.launch. Could it be due to ROS Noetic??

LimHyungTae commented 2 years ago

Sorry for the late reply!! I think it's the problem of ROS noetic. On my desktop (ROS Melodic), it still works fine. I think this is because the rosbag is from the ROS Melodic. :( Why don't you use offline Kitti mode?

YixFeng commented 2 years ago

I meet the same problem, but I use the ROS Melodic. Maybe the problem is caused by other things. Could you help?

DavidsShi commented 2 years ago

I meet the same problem,too. I use the ROS Melodic.Could you help?

hwan0806 commented 2 years ago

@XFFer @DavidsShi I think we have to create a new ros node which convert msg datatype from sensor_msgs/PointCloud2 to patchwork/node. Then, this issue will be solved.

DavidsShi commented 2 years ago

@XFFer @DavidsShi I think we have to create a new ros node which convert msg datatype from sensor_msgs/PointCloud2 to patchwork/node. Then, this issue will be solved.

Thank you so much ,the problem has been solved~

LimHyungTae commented 2 years ago

Holy moly!!!! sorry for my late reply. I'm about to graduate in this year so I have no time haha....

Anyway, I'm terrible sorry for providing less-generalized examples. I think using pre-made rosbag is not helpful for generalization, and not intuitive as well.

:+1: So I extensively modify README.md and contents. So you can run by following instructions:


Online (ROS Callback) KITTI dataset

We also provide rosbag example. If you run our patchwork via rosbag, please refer to this example.

  1. After building this package, run the roslaunch as follows:
roslaunch patchwork run_patchwork.launch is_kitti:=true

Then you can see the below message:

  1. Set the data_path in launch/kitti_publisher.launch for your machine, which is same with the aforementioned parameter in "Offline KITTI dataset" part.

  2. Then, run ros player (please refer to nodes/ros_kitti_publisher.cpp) by following command at another terminal window:

roslaunch patchwork kitti_publisher.launch

In short, I just added psuedo-publisher for compatibility.


:+1: And here's other revised example when you use your own ros bag file capture by your mobile robot:

#### Online (via your ROS bag file)

It is easy by re-using `run_patchwork.launch`.

1. Remap the topic of subscriber, i.g. modify remap line as follows:

Note that the type subscribed data is `sensor_msgs::PointCloud2`.

2. Next, launch the roslaunch file as follows:

roslaunch patchwork run_patchwork.launch is_kitti:=false


Note that `is_kitti=false` is important! Because it decides which rviz is opened. The rviz shows only estimated ground and non-ground because your own dataset may have no point-wise labels.

3. Then play your bag file!

rosbag play $YOUR_BAG_FILE_NAME$.bag

LimHyungTae commented 2 years ago

Anyway, thank you for your kind assistance @hwan0806 !!!!

LimHyungTae commented 2 years ago

May I close this issue? If there are any problem, please feel free to say to me