Ask Your Question
0

Realsense D435i distortion

asked 2021-03-08 08:22:23 -0500

Evan gravatar image

updated 2021-04-22 11:18:17 -0500

miura gravatar image

Hi ! I'm an Embedded Systems student and I need your help :) !

  • First my distribution is Melodic and I'm on Jetson Xavier NX (Ubuntu 18.04 LTS). I use an Intel Realsense D435i to make 3D SLAM in RTAB-Map.

  • Now my problem ! I use IMU and visual odemetry fusing in ukf (robot_localization package). The results looks likes good, but I can watching distortion in max range cloud map.

I want to fixe that problem and for that I want to remove or delete the max range datas to just take the datas without distortion. To do that I think there are 2 soltutions :

  • First modify the Realsense code. I currently try that but I'm stuck beacause I don't find this parameter.
  • Make a code can take datas from /camera/aligned_depth_to_color/image_raw topic, filter the max range datas and publish it on new topic and remap RTAB-Map (arg name="depth_topic") by the new topic.

THX for help !

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2021-03-08 10:31:02 -0500

matlabbe gravatar image

D435i depth accuracy is not very good over ~3.5 meters. Instead of filtering the depth images, you can adjust set rtabmap parameter Grid/RangeMax to 3.5 for example.

<node pkg="rtabmap_ros" type="rtabmap" name="rtabmap">
  ...
  <param name="Grid/RangeMax" value="3.5"/>
</node>
edit flag offensive delete link more

Comments

Hi, thank you for your answer !

I want to test that but in rtabmap.launch file, there are not param name "Grid/RangeMax". I'm using the opensource_tracking.launch file in realsense2_camera package, I just remove linear_accel_cov and unite_imu_method and I add the gyro and accel "true". Now in <include file="path_to_rtabmap.launch"> I add <arg name="Grid/RangeMax" value="3.5"/> but when I'm roslaunch I have an error because there are not Grid/RangeMax in the rtabmap_ros.launch .

I'm searching for find that param or my mistakes.

Evan gravatar image Evan  ( 2021-03-09 03:51:05 -0500 )edit

Hi matlabbe,

I find the solutions to my problem, in my case I use RTAB-Map to make 3D SLAM and i have changed cloud_max_depth and cloud_min_depth values to [3 ; 0.3] (Intel Realsense D435i settings). I think Grid/RangeMax is for 2D occupancy grid but i'm not sure.

Now I have an other question, it's the cloud_decimation setting. I don't understand what is it :) .

RTAB-Map it's a really good package, you make good job ! Thank you for your help !!!

Evan gravatar image Evan  ( 2021-03-10 07:03:11 -0500 )edit

cloud_max_depth and cloud_min_depth are remapped to Grid/RangeMax and Grid/RangeMinparameters : https://github.com/introlab/rtabmap_r...

cloud_decimation is remapped to Grid/DepthDecimation, which is the decimation of the depth image before creating point cloud.

If you are using rtabmap.launch, you can feed the RTAB-Map's parameters (those shown with rtabmap --params) by doing: roslaunch rtabmap_ros rtabmap.launch args:="--delete_db_on_start --Grid/RangeMax 3 --Grid/RangeMin 0.3 --Grid/DepthDecimation 4"

matlabbe gravatar image matlabbe  ( 2021-03-11 19:54:12 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2021-03-08 08:22:23 -0500

Seen: 281 times

Last updated: Mar 10 '21