MIT-SPARK / Kimera-Semantics

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

No 3D geometric reconstruction when fed a colored pointcloud #26

Open julienip opened 4 years ago

julienip commented 4 years ago

Hi Toni,

I provided a colored pointcloud to the kimera-senantics node but it doesn't output a 3D Geometric scene. I can see the ROS INFO : updating mesh in my terminal but not the timings messages that happen when I do have a 3D geometric scene in rviz.

You mention a pose estimate that need to be given too but I don't see that input in the kimera_semantics_node.

Thanks for your help.

Hi @kmfrick, yes! as long as you feed a colored pointcloud with the semantic segmentation and a pose estimate, kimera-semantics will output a 3D geometric and semantic reconstruction of the scene.

Originally posted by @ToniRV in https://github.com/MIT-SPARK/Kimera-Semantics/issues/17#issuecomment-600236679

julienip commented 4 years ago

After puting some traces to see the difference between when it's working and when it is not... And after commenting the following test in trasformer.cc: // Previous behavior was just to use the latest transform if the time is in // the future. Now we will just wait. if (!tflistener.canTransform(to_frame, from_frame_modified,time_to_lookup)) { return false; }

I have :

[ERROR] [1587074514.738952279, 1585211039.058771156]: Error getting TF transform from sensor data: "left_cam" passed to lookupTransform argument source_frame does not exist.

So, I guess I have some issues with my rosbag inputs.

in the launch file, I see : Change sensor frame to:

I think I am getting closer to my answer... :)

ToniRV commented 4 years ago

Hi @julienip, The pose is inferred from the TF tree in ROS (it will look for the tfs you mentioned above, left_cam or left_cam_base_link depending on what you use). Nevertheless, you can also subscribe to a pose topic transform, which will be used in case you set the parameter use_tf_transforms to false: Note that these are parameters already available in voxblox, and therefore the documentation remains the same, note here https://voxblox.readthedocs.io/en/latest/pages/The-Voxblox-Node.html

use_tf_transforms
If true the ros tf tree will be used to get the pose of the sensor relative to the world (sensor_frame and world_frame will be used). If false the pose must be given via the transform topic.