mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-03 16:27:46 +08:00
Stereo: added subpixel kpts processing, added test_stereo_odometry.launch
CoreWrapper: Fixed corrupted image when reextracting features git-svn-id: http://rtabmap.googlecode.com/svn/trunk/ros-pkg@1847 f169173b-cf89-36c8-b27e-44dbe73f0c83
This commit is contained in:
@@ -27,7 +27,7 @@
|
||||
<node pkg="nodelet" type="nodelet" name="disparity2depth" args="load rtabmap/disparity_to_depth standalone_nodelet"/>
|
||||
</group>
|
||||
|
||||
<!-- Odometry: Choose between viso2_ros, fovis_ros and homemade packages -->
|
||||
<!-- Odometry: Choose between viso2_ros, fovis_ros and homemade approach (default) -->
|
||||
<!--
|
||||
<node pkg="viso2_ros" type="stereo_odometer" name="stereo_odometer" output="screen">
|
||||
<remap from="stereo" to="/stereo_camera"/>
|
||||
@@ -37,6 +37,7 @@
|
||||
<param name="ref_frame_change_method" value="1"/>
|
||||
</node>
|
||||
-->
|
||||
<!--
|
||||
<node pkg="fovis_ros" type="fovis_stereo_odometer" name="stereo_odometer" >
|
||||
<remap from="/stereo/left/image" to="/stereo_camera/left/image_rect" />
|
||||
<remap from="/stereo/right/image" to="/stereo_camera/right/image_rect" />
|
||||
@@ -44,60 +45,26 @@
|
||||
<remap from="/stereo/right/camera_info" to="/stereo_camera/right/camera_info" />
|
||||
<remap from="odometry" to="stereo_odometer/odometry" />
|
||||
</node>
|
||||
<!--
|
||||
<node pkg="rtabmap" type="visual_odometry" name="visual_odometry" output="screen">
|
||||
<remap from="rgb/image" to="stereo_camera/left/image_rect_color"/>
|
||||
<remap from="depth/image" to="stereo_camera/depth"/>
|
||||
<remap from="rgb/camera_info" to="stereo_camera/left/camera_info"/>
|
||||
<remap from="odom" to="/stereo_odometer/odometry"/>
|
||||
|
||||
<param name="frame_id" type="string" value="/base_link"/>
|
||||
|
||||
<param name="Odom/Type" type="string" value="6"/>
|
||||
-->
|
||||
<node pkg="rtabmap" type="stereo_odometry" name="stereo_odometer" output="screen">
|
||||
<remap from="left/image_rect" to="/stereo_camera/left/image_rect_color"/>
|
||||
<remap from="right/image_rect" to="/stereo_camera/right/image_rect_color"/>
|
||||
<remap from="left/camera_info" to="/stereo_camera/left/camera_info"/>
|
||||
<remap from="right/camera_info" to="/stereo_camera/right/camera_info"/>
|
||||
<remap from="odom" to="/stereo_odometer/odometry"/>
|
||||
|
||||
<param name="frame_id" type="string" value="base_link"/>
|
||||
|
||||
<param name="Odom/Type" type="string" value="6"/>
|
||||
<param name="Odom/NearestNeighbor" type="string" value="3"/>
|
||||
<param name="Odom/MinInliers" type="string" value="10"/>
|
||||
<param name="Odom/LocalHistory" type="string" value="500"/>
|
||||
<param name="Odom/MaxDepth" type="string" value="3"/>
|
||||
<param name="Odom/NNDR" type="string" value="0.8"/>
|
||||
<param name="Odom/WordsRatio" type="string" value="0.5"/>
|
||||
<param name="Odom/LocalHistory" type="string" value="1000"/>
|
||||
<param name="Odom/InlierDistance" type="string" value="0.01"/>
|
||||
<param name="GFTT/MaxCorners" type="string" value="400"/>
|
||||
<param name="Odom/NNDR" type="string" value="0.6"/>
|
||||
<param name="GFTT/MaxCorners" type="string" value="1000"/>
|
||||
<param name="BRIEF/Bytes" type="string" value="16"/>
|
||||
</node>
|
||||
-->
|
||||
<!--
|
||||
<node pkg="rtabmap" type="stereo_odometry" name="stereo_odometry" output="screen">
|
||||
<remap from="left/image_rect" to="stereo_camera/left/image_rect_color"/>
|
||||
<remap from="right/image_rect" to="stereo_camera/right/image_rect_color"/>
|
||||
<remap from="left/camera_info" to="stereo_camera/left/camera_info"/>
|
||||
<remap from="right/camera_info" to="stereo_camera/right/camera_info"/>
|
||||
<remap from="odom" to="/stereo_odometer/odometry"/>
|
||||
|
||||
<param name="frame_id" type="string" value="/base_link"/>
|
||||
|
||||
<param name="min_disparity" type="int" value="0"/>
|
||||
<param name="max_disparity" type="int" value="128"/>
|
||||
<param name="k" type="int" value="10"/>
|
||||
|
||||
<param name="Odom/Type" type="string" value="6"/>
|
||||
<param name="Odom/NearestNeighbor" type="string" value="3"/>
|
||||
<param name="Odom/MinInliers" type="string" value="10"/>
|
||||
<param name="Odom/Iterations" type="string" value="200"/>
|
||||
<param name="Odom/MaxDepth" type="string" value="4"/>
|
||||
<param name="Odom/NNDR" type="string" value="0.8"/>
|
||||
<param name="Odom/WordsRatio" type="string" value="0.5"/>
|
||||
<param name="Odom/LocalHistory" type="string" value="200"/>
|
||||
<param name="Odom/InlierDistance" type="string" value="0.01"/>
|
||||
<param name="GFTT/MaxCorners" type="string" value="800"/>
|
||||
<param name="BRIEF/Bytes" type="string" value="16"/>
|
||||
<param name="BRISK/Octaves" type="string" value="0"/>
|
||||
<param name="BRISK/Thresh" type="string" value="10"/>
|
||||
</node>
|
||||
-->
|
||||
|
||||
|
||||
<group ns="rtabmap">
|
||||
|
||||
</node>
|
||||
|
||||
<group ns="rtabmap">
|
||||
<!-- Visual SLAM (robot side) -->
|
||||
<!-- args: "delete_db_on_start" and "udebug" -->
|
||||
<node name="rtabmap" pkg="rtabmap" type="rtabmap" output="screen" args="--delete_db_on_start">
|
||||
@@ -117,11 +84,18 @@
|
||||
<param name="Rtabmap/TimeThr" type="string" value="700"/>
|
||||
<param name="Rtabmap/DetectionRate" type="string" value="1"/>
|
||||
<param name="SURF/HessianThreshold" type="string" value="600"/>
|
||||
<param name="LccBow/MaxDepth" type="string" value="0"/>
|
||||
<param name="RGBD/LocalLoopDetectionSpace" type="string" value="false"/>
|
||||
<param name="RGBD/LocalLoopDetectionTime" type="string" value="false"/>
|
||||
|
||||
<param name="LccBow/MinInliers" type="string" value="10"/>
|
||||
<param name="LccBow/InlierDistance" type="string" value="0.05"/>
|
||||
<param name="LccBow/InlierDistance" type="string" value="0.02"/>
|
||||
<param name="LccBow/MaxDepth" type="string" value="3"/>
|
||||
|
||||
<param name="LccReextract/FeatureType" type="string" value="4"/>
|
||||
<param name="LccReextract/LoopClosureFeatures" type="string" value="true"/>
|
||||
<param name="LccReextract/MaxDepth" type="string" value="3"/>
|
||||
<param name="LccReextract/NNDR" type="string" value="0.8"/>
|
||||
<param name="LccReextract/NNType" type="string" value="3"/>
|
||||
</node>
|
||||
|
||||
<!-- Visualisation (client side) -->
|
||||
@@ -138,9 +112,9 @@
|
||||
</node>
|
||||
</group>
|
||||
|
||||
<!-- RVIZ -->
|
||||
<!--
|
||||
<node pkg="rviz" type="rviz" name="rviz" args="-d $(find rtabmap)/launch/config/rgbd.rviz"/>
|
||||
|
||||
<!-- sync cloud with odometry and voxelize the point cloud (for fast visualization in rviz) -->
|
||||
<node pkg="nodelet" type="nodelet" name="standalone_nodelet" args="manager" output="screen"/>
|
||||
<node pkg="nodelet" type="nodelet" name="data_odom_sync" args="load rtabmap/data_odom_sync standalone_nodelet">
|
||||
<remap from="rgb/image_in" to="camera/rgb/image_rect_color"/>
|
||||
@@ -164,5 +138,5 @@
|
||||
<param name="queue_size" type="int" value="10"/>
|
||||
<param name="voxel_size" type="double" value="0.01"/>
|
||||
</node>
|
||||
|
||||
-->
|
||||
</launch>
|
||||
@@ -3,6 +3,17 @@
|
||||
|
||||
<!-- RGB-D LOCALIZATION VERSION -->
|
||||
|
||||
<!-- ODOMETRY ARGUMENTS: "type", "nn" and "local_map":
|
||||
-Feature type: 0=SURF 1=SIFT 2=ORB 3=FAST/FREAK 4=FAST/BRIEF 5=GFTT/FREAK 6=GFTT/BRIEF 7=BRISK
|
||||
-Nearest neighbor strategy : 0=Linear, 1=FLANN_KDTREE, 2=FLANN_LSH, 3=BRUTEFORCE
|
||||
Set to 1 for float descriptor like SIFT/SURF
|
||||
Set to 3 for binary descriptor like ORB/FREAK/BRIEF/BRISK
|
||||
-Local map size: number of unique features to keep track
|
||||
-->
|
||||
<arg name="type" default="0" />
|
||||
<arg name="nn" default="1" />
|
||||
<arg name="local_map" default="0" />
|
||||
|
||||
<!-- TF FRAMES -->
|
||||
<node pkg="tf" type="static_transform_publisher" name="base_to_camera_tf"
|
||||
args="0.0 0.0 0.0 0.0 0.0 0.0 /base_link /camera_link 100" />
|
||||
@@ -16,6 +27,10 @@
|
||||
<remap from="rgb/camera_info" to="/camera/depth_registered/camera_info"/>
|
||||
|
||||
<param name="frame_id" type="string" value="base_link"/>
|
||||
|
||||
<param name="Odom/Type" type="string" value="$(arg type)"/>
|
||||
<param name="Odom/NearestNeighbor" type="string" value="$(arg nn)"/>
|
||||
<param name="Odom/LocalHistory" type="string" value="$(arg local_map)"/>
|
||||
</node>
|
||||
|
||||
<!-- Visual SLAM (robot side) -->
|
||||
|
||||
@@ -5,6 +5,17 @@
|
||||
<!-- WARNING : Database is automatically deleted on each startup -->
|
||||
<!-- See "delete_db_on_start" option below... -->
|
||||
|
||||
<!-- ODOMETRY ARGUMENTS: "type", "nn" and "local_map":
|
||||
-Feature type: 0=SURF 1=SIFT 2=ORB 3=FAST/FREAK 4=FAST/BRIEF 5=GFTT/FREAK 6=GFTT/BRIEF 7=BRISK
|
||||
-Nearest neighbor strategy : 0=Linear, 1=FLANN_KDTREE, 2=FLANN_LSH, 3=BRUTEFORCE
|
||||
Set to 1 for float descriptor like SIFT/SURF
|
||||
Set to 3 for binary descriptor like ORB/FREAK/BRIEF/BRISK
|
||||
-Local map size: number of unique features to keep track
|
||||
-->
|
||||
<arg name="type" default="6" />
|
||||
<arg name="nn" default="3" />
|
||||
<arg name="local_map" default="2000" />
|
||||
|
||||
<!-- TF FRAMES -->
|
||||
<node pkg="tf" type="static_transform_publisher" name="base_to_camera_tf"
|
||||
args="0.0 0.0 0.0 0.0 0.0 0.0 /base_link /camera_link 100" />
|
||||
@@ -16,9 +27,10 @@
|
||||
<remap from="rgb/image" to="/camera/rgb/image_rect_color"/>
|
||||
<remap from="depth/image" to="/camera/depth_registered/image_raw"/>
|
||||
<remap from="rgb/camera_info" to="/camera/depth_registered/camera_info"/>
|
||||
|
||||
<param name="Odom/MinInliers" type="string" value="10"/>
|
||||
<param name="Odom/InlierDistance" type="string" value="0.01"/>
|
||||
|
||||
<param name="Odom/Type" type="string" value="$(arg type)"/>
|
||||
<param name="Odom/NearestNeighbor" type="string" value="$(arg nn)"/>
|
||||
<param name="Odom/LocalHistory" type="string" value="$(arg local_map)"/>
|
||||
|
||||
<param name="frame_id" type="string" value="base_link"/>
|
||||
</node>
|
||||
@@ -33,6 +45,10 @@
|
||||
<remap from="depth/image" to="/camera/depth_registered/image_raw"/>
|
||||
<remap from="rgb/camera_info" to="/camera/depth_registered/camera_info"/>
|
||||
<remap from="odom" to="odom"/>
|
||||
|
||||
<param name="RGBD/LocalLoopDetectionTime" type="string" value="false"/>
|
||||
<param name="LccBow/MinInliers" type="string" value="10"/>
|
||||
<param name="LccBow/InlierDistance" type="string" value="0.02"/>
|
||||
|
||||
<param name="queue_size" type="int" value="30"/>
|
||||
</node>
|
||||
|
||||
@@ -4,6 +4,18 @@
|
||||
<!-- RGB-D MAPPING VERSION -->
|
||||
<!-- WARNING : Database is automatically deleted on each startup -->
|
||||
<!-- See "delete_db_on_start" option below... -->
|
||||
|
||||
<!-- ODOMETRY ARGUMENTS: "type", "nn" and "local_map":
|
||||
-Feature type: 0=SURF 1=SIFT 2=ORB 3=FAST/FREAK 4=FAST/BRIEF 5=GFTT/FREAK 6=GFTT/BRIEF 7=BRISK
|
||||
-Nearest neighbor strategy : 0=Linear, 1=FLANN_KDTREE, 2=FLANN_LSH, 3=BRUTEFORCE
|
||||
Set to 1 for float descriptor like SIFT/SURF
|
||||
Set to 3 for binary descriptor like ORB/FREAK/BRIEF/BRISK
|
||||
-Local map size: number of unique features to keep track
|
||||
-->
|
||||
<arg name="type" default="6" />
|
||||
<arg name="nn" default="3" />
|
||||
<arg name="local_map" default="2000" />
|
||||
|
||||
|
||||
<!-- TF FRAMES -->
|
||||
<node pkg="tf" type="static_transform_publisher" name="base_to_camera_tf"
|
||||
@@ -16,9 +28,10 @@
|
||||
<remap from="rgb/image" to="/camera/rgb/image_rect_color"/>
|
||||
<remap from="depth/image" to="/camera/depth_registered/image_raw"/>
|
||||
<remap from="rgb/camera_info" to="/camera/depth_registered/camera_info"/>
|
||||
|
||||
<param name="Odom/MinInliers" type="string" value="10"/>
|
||||
<param name="Odom/InlierDistance" type="string" value="0.01"/>
|
||||
|
||||
<param name="Odom/Type" type="string" value="$(arg type)"/>
|
||||
<param name="Odom/NearestNeighbor" type="string" value="$(arg nn)"/>
|
||||
<param name="Odom/LocalHistory" type="string" value="$(arg local_map)"/>
|
||||
|
||||
<param name="frame_id" type="string" value="base_link"/>
|
||||
</node>
|
||||
@@ -33,7 +46,11 @@
|
||||
<remap from="depth/image" to="/camera/depth_registered/image_raw"/>
|
||||
<remap from="rgb/camera_info" to="/camera/depth_registered/camera_info"/>
|
||||
<remap from="odom" to="odom"/>
|
||||
|
||||
|
||||
<param name="RGBD/LocalLoopDetectionTime" type="string" value="false"/>
|
||||
<param name="LccBow/MinInliers" type="string" value="10"/>
|
||||
<param name="LccBow/InlierDistance" type="string" value="0.02"/>
|
||||
|
||||
<param name="queue_size" type="int" value="30"/>
|
||||
</node>
|
||||
|
||||
|
||||
@@ -1,18 +1,16 @@
|
||||
|
||||
<launch>
|
||||
|
||||
<!-- Arguments: "type", "nn" and "local_map" -->
|
||||
|
||||
<!-- Feature type: 0=SURF 1=SIFT 2=ORB 3=FAST/FREAK 4=FAST/BRIEF 5=GFTT/FREAK 6=GFTT/BRIEF -->
|
||||
<arg name="type" default="0" />
|
||||
|
||||
<!-- Nearest neighbor strategy : 0=Linear, 1=FLANN_KDTREE, 2=FLANN_LSH -->
|
||||
<!-- Should be 1 for float descriptor like SIFT/SURF -->
|
||||
<!-- Should be 2 for binary descriptor like ORB/FREAK/BRIEF -->
|
||||
<arg name="nn" default="1" />
|
||||
|
||||
<!-- local map size: number of unique features to keep track -->
|
||||
<arg name="local_map" default="0" />
|
||||
<!-- ODOMETRY ARGUMENTS: "type", "nn" and "local_map":
|
||||
-Feature type: 0=SURF 1=SIFT 2=ORB 3=FAST/FREAK 4=FAST/BRIEF 5=GFTT/FREAK 6=GFTT/BRIEF 7=BRISK
|
||||
-Nearest neighbor strategy : 0=Linear, 1=FLANN_KDTREE, 2=FLANN_LSH, 3=BRUTEFORCE
|
||||
Set to 1 for float descriptor like SIFT/SURF
|
||||
Set to 3 for binary descriptor like ORB/FREAK/BRIEF/BRISK
|
||||
-Local map size: number of unique features to keep track
|
||||
-->
|
||||
<arg name="type" default="6" />
|
||||
<arg name="nn" default="3" />
|
||||
<arg name="local_map" default="2000" />
|
||||
|
||||
<!-- TF FRAMES -->
|
||||
<node pkg="tf" type="static_transform_publisher" name="base_to_camera_tf"
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
<launch>
|
||||
|
||||
<!-- ODOMETRY ARGUMENTS: "type", "nn" and "local_map":
|
||||
-Feature type: 0=SURF 1=SIFT 2=ORB 3=FAST/FREAK 4=FAST/BRIEF 5=GFTT/FREAK 6=GFTT/BRIEF 7=BRISK
|
||||
-Nearest neighbor strategy : 0=Linear, 1=FLANN_KDTREE, 2=FLANN_LSH, 3=BRUTEFORCE
|
||||
Set to 1 for float descriptor like SIFT/SURF
|
||||
Set to 3 for binary descriptor like ORB/FREAK/BRIEF/BRISK
|
||||
-Local map size: number of unique features to keep track
|
||||
-->
|
||||
<arg name="type" default="6" />
|
||||
<arg name="nn" default="3" />
|
||||
<arg name="local_map" default="5000" />
|
||||
|
||||
<node pkg="camera1394stereo" type="camera1394stereo_node" name="camera1394stereo_node" output="screen" >
|
||||
<param name="video_mode" value="format7_mode3" />
|
||||
<param name="format7_color_coding" value="raw16" />
|
||||
<param name="bayer_pattern" value="bggr" />
|
||||
<param name="bayer_method" value="" />
|
||||
<param name="stereo_method" value="Interlaced" />
|
||||
<param name="camera_info_url_left" value="" />
|
||||
<param name="camera_info_url_right" value="" />
|
||||
</node>
|
||||
|
||||
<arg name="pi/2" value="1.5707963267948966" />
|
||||
<arg name="optical_rotate" value="0 0 0 -$(arg pi/2) 0 -$(arg pi/2)" />
|
||||
<node pkg="tf" type="static_transform_publisher" name="camera_base_link"
|
||||
args="$(arg optical_rotate) base_link stereo_camera 100" />
|
||||
|
||||
<!-- Run the ROS package stereo_image_proc -->
|
||||
<group ns="/stereo_camera" >
|
||||
<node pkg="stereo_image_proc" type="stereo_image_proc" name="stereo_image_proc"/>
|
||||
|
||||
<!-- Odometry -->
|
||||
<node pkg="rtabmap" type="stereo_odometry" name="stereo_odometry" output="screen">
|
||||
<remap from="left/image_rect" to="left/image_rect_color"/>
|
||||
<remap from="right/image_rect" to="right/image_rect_color"/>
|
||||
<remap from="left/camera_info" to="left/camera_info"/>
|
||||
<remap from="right/camera_info" to="right/camera_info"/>
|
||||
<remap from="odom" to="odom_stereo"/>
|
||||
|
||||
<remap from="odom_local_map" to="/odom_local_map"/>
|
||||
<remap from="odom_last_frame" to="/odom_last_frame"/>
|
||||
|
||||
<param name="frame_id" type="string" value="base_link"/>
|
||||
<param name="odom_frame_id" type="string" value="odom"/>
|
||||
|
||||
<param name="min_disparity" type="int" value="0"/>
|
||||
<param name="max_disparity" type="int" value="256"/>
|
||||
<param name="k" type="int" value="10"/>
|
||||
<param name="window_size" type="int" value="5"/>
|
||||
|
||||
<param name="Odom/Type" type="string" value="$(arg type)"/>
|
||||
<param name="Odom/NearestNeighbor" type="string" value="$(arg nn)"/>
|
||||
<param name="Odom/LocalHistory" type="string" value="$(arg local_map)"/>
|
||||
|
||||
<param name="Odom/MaxDepth" type="string" value="3"/>
|
||||
<param name="Odom/NNDR" type="string" value="0.6"/>
|
||||
<param name="GFTT/MaxCorners" type="string" value="1000"/>
|
||||
<param name="BRIEF/Bytes" type="string" value="16"/>
|
||||
</node>
|
||||
|
||||
</group>
|
||||
|
||||
|
||||
<node pkg="rviz" type="rviz" name="rviz" args="-d $(find rtabmap)/launch/config/test_odometry.rviz"/>
|
||||
|
||||
</launch>
|
||||
Reference in New Issue
Block a user