I'm trying to do multiple camera mapping with 3 D435s in addition to a 2D lidar to get data. We were able to use the scan data when only using one the camera, but once we switch to multiple cameras, the scan data fails to appear when visualizing rtabmap and there are errors printed to the terminal. All the data is from the same bag when we launched our 1 camera and 3 camera launch file for rtabmap, and I can echo the scan topic.
I attached the launch file we've been trying to use. Sorry if this is an easy fix, but we're not familiar with rtabmap. Thanks!
1) "rtabmap_args" argument is not used anywhere, you may add it to args="$(arg rtabmap_args)" of rtabmap node.
2) do you use robot_localization package? set "two_d_mode" because the input odometry poses are not 2D, causing occupancy grids not correctly generated.
3) you may have to update the TF between cameras / lidar and the base as the walls seen by the left camera doesn't match the lidar scan. Also, you may offset in Z the whole robot so that the ground in the clouds match the xy plane. We can do it by adding a TF frame base_footprint -> base_link, modify odometry node's base frame id to base_footprint instead of base_link then on rtabmap side: