Re: which part of the code odom frame concept is written?

Posted by matlabbe on
URL: http://official-rtab-map-forum.206.s1.nabble.com/which-part-of-the-code-odom-frame-concept-is-written-tp5209p5240.html

Hi,

Look at this file. We disabled loop closure and commented all rendering stuff. We also added some management to remove points in ORB_SLAM2's map that are not used anymore by the tracking thread. There is still a memory leak issue stated in "RTAB-Map as an Open-Source Lidar and Visual SLAM Library for Large-Scale and Long-Term Online Operation" (section 3.1.1):
ORB-SLAM2 is a full SLAM approach, thus to integrate in RTABMap,
loop closure detection inside ORB-SLAM2 is disabled. Local bundle adjustment of ORB-SLAM2 is
still working, which makes the modified module similar to F2M. The big difference is the kind of features
extracted (ORB [Rublee et al., 2011]) and how they are matched together (direct descriptor comparison
instead of NNDR). Similarly to F2M, the size of the feature map is limited so that constant time visual
odometry can be achieved (without limiting the feature map size, ORB-SLAM2 computation time increases
over time). As ORB-SLAM2 has not been designed (at least in the code available at the time of writing
this paper) to remove or forget features in its map, memory is not freed when features are removed, which
results in an increasing RAM usage over time (a.k.a. memory leak).
You can try rtabmap_ros/rgbd_odometry or rtabmap_ros/stereo_odometry nodes in ORB_SLAM2 odometry mode by setting parameter Odom/Strategy=5:
<node pkg="rtabmap_ros" type="rgbd_odometry" name="rgd_odometry" output="screen">
   <param name="Odom/Strategy" value="5"/>
   <param name="OdomORBSLAM2/VocPath" value="[OBRSLAM2_GIT_PATH]/Vocabulary/ORBvoc.txt"/>
</node>


cheers,
Mathieu