Posted by
Ross_L on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Troubleshooting-mapping-with-kinect-v2-rplidar-and-jetson-tx2-tp5517p5552.html
Hi
Using your launch file, there are now significant improvements, thank you!

I reduced the forward and rotation speeds to about 0.15 in the teleop node, and changed the frame to map in rviz. I also realised I had some parameters set within RVIZ' mapcloud section regarding update frequency and voxel size, which I altered to 0, 0 and 0.008 respectively. I also switched back to using SURF detection.
I noticed in your suggested launch file you used the following:
<arg name="database_path" default="rtabmap.db"/>
<arg name="rgb_topic" default="/kinect2/qhd/image_color_rect"/>
<arg name="depth_topic" default="/kinect2/qhd/image_depth_rect"/>
<arg name="camera_info_topic" default="/kinect2/qhd/camera_info"/>
rather than the throttled topics, does this have an advantage over the non throttled?
Unfortunately as you will see, I am still seeing a lot of mismatching, though the map is a lot more recognisable.
Would using visual odometry help, if the wheel odom is out? I am not sure how to prevent the launch file using the wheel odom as I assumed you just changed the visual_odometry parameter to true. I do not think I am going to be able to crrect the wheel odom until I have a new motor, as it appears there is a hardware problem with one of the wheel encoders. It always reports 40 clicks per turn more on one of the wheels.
The map also seems to stop updating after a time, I am not sure why as rostopic hz appears to show the clouds still publishing.
Here is my new database:
https://drive.google.com/file/d/1X44Hit6F1J_h2mfQJ0vOMjfA5Wmwmz-B/view?usp=sharingExcuse the mess in the house, what with all this roboting I've not had time to tidy up!

EDIT: Just to check - I took the launch parameters for the kinect throttled topics from this page:
https://wiki.ros.org/rtabmap_ros/Tutorials/RemoteMapping and used the following:
<!-- Use same nodelet used by Freenect/OpenNI -->
<group ns="camera">
<node pkg="nodelet" type="nodelet" name="data_throttle" args="load rtabmap_ros/data_throttle camera_nodelet_manager" output="screen">
<param name="rate" type="double" value="$(arg rate)"/>
<param name="decimation" type="int" value="$(arg decimation)"/>
<param name="approx_sync" type="bool" value="$(arg approx_sync)"/>
<remap from="rgb/image_in" to="rgb/image_rect_color"/>
<remap from="depth/image_in" to="depth_registered/image_raw"/>
<remap from="rgb/camera_info_in" to="rgb/camera_info"/>
<remap from="rgb/image_out" to="data_throttled_image"/>
<remap from="depth/image_out" to="data_throttled_image_depth"/>
<remap from="rgb/camera_info_out" to="data_throttled_camera_info"/>
</node>
</group>
I realise now that is for the original kinect, should it be different for the kinect 2 with
kinect2_bridge?