MIT-SPARK / Kimera-Semantics

Real-Time 3D Semantic Reconstruction from 2D data
BSD 2-Clause "Simplified" License
640 stars 136 forks source link

cannot launch pointcloud_recolor node #18

Closed julienip closed 4 years ago

julienip commented 4 years ago

Hi team, Hi Toni,

I am interested to run the pointcloud_recolor node as I would like to feed it with a point cloud from DSO "poincloud_in" and a semantic segmentation mask "image_in".

So I set the "run_stereo_dense" from the kimera_semantics.launch file to true and run it. However the terminal returns "cannot launch pointcloud_recolor node". I checked the ROS_PACKAGE_PATH and the pointcloud_recolor folder was missing. So I added it.

Now I have : cannot launch node of type [pointcloud_recolor/poincloud_recolor"].

My question: How can I execute the "pointcloud_recolor" method if I create a rosbag that contains "pointcloud_in" topic?

Thank you for your guidance :)

ToniRV commented 4 years ago

Hi @julienip,

Just to check, did you clone git@github.com:ToniRV/ROS_pointcloud_recolor.git in your catkin workspace?

git clone git@github.com:ToniRV/ROS_pointcloud_recolor.git

If that is the case, then can you run:

catkin build pointcloud_recolor

And if that works I would do:

catkin build kimera

Source the catkin workspace:

source ~/catkin_ws/devel/setup.bash

And run again the launch file.

If that doesn't work I might have changed the API accidentally? Let me know :)

julienip commented 4 years ago

It kind of works :) I have "caught an uknown color". Results are not what I expected :

ToniRV commented 4 years ago

So the problem is that Kimera-Semantics needs a mapping from colors to semantic labels, checkout these csv files: https://github.com/MIT-SPARK/Kimera-Semantics/tree/master/kimera_semantics_ros/cfg I would add your custom one there and then link to your .csv file in the launch file: https://github.com/MIT-SPARK/Kimera-Semantics/blob/master/kimera_semantics_ros/launch/kimera_semantics.launch

<param name="semantic_label_2_color_csv_filepath"
    value="$(find kimera_semantics_ros)/cfg/tesse_multiscene_office1_segmentation_mapping.csv"/>
julienip commented 4 years ago

Thanks for the hint. You saved me time. In the future I would like to map the label IDs/color of my semseg to your recolor method. I noticed this is also in your To Do list. ;)

julienip commented 4 years ago

To have the correct colors when using "pointcloud_recolor", correct the following: In poincloud_recolor.cpp:151 to poincloud_recolor.cpp:153, inverse the index: out_r = bgr [2] ; out_r = bgr [1] ; out_r = bgr [0] ; to out_r = bgr [0] ; out_r = bgr [1] ; out_r = bgr [2] ;

ToniRV commented 4 years ago

Thanks @julienip, I updated pointcloud_recolor.