-
Notifications
You must be signed in to change notification settings - Fork 560
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to fix the map. Using Oak-D-Pro-W. Very noisy map, not suitable for Nav2 #1228
Comments
@matlabbe , thank you so much for getting back and looking into this with such detail. def generate_launch_description():
parameters=[{'frame_id':'oak-d-base-frame',
'subscribe_rgbd':True,
'subscribe_odom_info':True,
'approx_sync':False,
'wait_imu_to_init':True,
'Grid/RayTracing':'True',
'Grid/3D':'False',
'Grid/MaxGroundHeight': '-0.15',
# 'Grid/MaxGroundAngle': '10.0',
# "Odom/Strategy": '1',
"Grid/MaxObstacleHeight":'2'
}]
remappings=[('imu', '/imu/data')]
return LaunchDescription([
# Launch camera driver
IncludeLaunchDescription(
PythonLaunchDescriptionSource([os.path.join(
get_package_share_directory('depthai_examples'), 'launch'),
'/stereo_inertial_node.launch.py']),
launch_arguments={'depth_aligned': 'false',
'enableRviz': 'false',
'monoResolution': '400p'}.items(),
),
# Sync right/depth/camera_info together
Node(
package='rtabmap_sync', executable='rgbd_sync', output='screen',
parameters=parameters,
remappings=[('rgb/image', '/right/image_rect'),
('rgb/camera_info', '/right/camera_info'),
('depth/image', '/stereo/depth')]),
# Compute quaternion of the IMU
Node(
package='imu_filter_madgwick', executable='imu_filter_madgwick_node', output='screen',
parameters=[{'use_mag': False,
'world_frame':'enu',
'publish_tf':False}],
remappings=[('imu/data_raw', '/imu')]),
# Visual odometry
Node(
package='rtabmap_odom', executable='rgbd_odometry', output='screen',
parameters=parameters,
remappings=remappings),
# VSLAM
Node(
package='rtabmap_slam', executable='rtabmap', output='screen',
parameters=parameters,
remappings=remappings,
arguments=['-d']),
# Visualization
Node(
package='rtabmap_viz', executable='rtabmap_viz', output='screen',
parameters=parameters,
remappings=remappings)
]) Further, I also have an on-board lidar, that can provide laserscan or pointcloud data. To improve the detection in case of such featureless hallways. But, I don't know how, I can add the lidar as a backup (with the Oak-D) being the primary. |
@matlabbe , thank you for the advise. It worked great. For some reason, it didn't work directly with the lidar's point-cloud (it's a Helios-32 from Robosense). But when I passed it through the |
You may want to do icp_odometry instead (example here). There is a lot of drift or you didn't set correctly the fixed_frame_id of point_cloud_assembler, causing point_cloud_assembler to not correctly assemble the point clouds. I would not use point_cloud_assembler until the mapping is debugged. |
I recommend setting "Grid/FlatObstacleDetected" to false. Because the data from stereo depth estimation is noisy. Even after decimation and filtering, it is still easy to generate some small clusters when performing ground segmentation. Either you need to carefully tune the cluster related parameters. |
I realized, I posted, this issue in the wrong repo, so, moving it here.
I've tried playing with various parameters within rtabmap (
Grid/CellSize
,Grid/ClusterRadius
,Grid/MinClusterSize
,Grid/MaxGroundAngle
,Grid/MinGroundHeight
etc. As it was suggested in other posts, but nothing seems to resolve it.I'm including the db file here along with the Rviz screenshots for reference.
You can see how the visual odom thinks that it's going within the ground. Not sure where to fix that. If it's a camera issue, or something in the TFs ?
The text was updated successfully, but these errors were encountered: