How to obtain more loop detection with only RGB images

Posted by climbing robot developer on
URL: http://official-rtab-map-forum.206.s1.nabble.com/How-to-obtain-more-loop-detection-with-only-RGB-images-tp9322.html

Hello, thank you for giving us wonderful tools.
I am a beginner in Rtab-Map and computer vision.
I have a question about how to obtain more loop detection with only RGB images.


faced problem
I have been facing a problem in that few loops are detected.
For example, this image pair is not detected as a loop.


On the other hand, this image pair is detected as a loop.


In my opinion, this problem seems to occur because all values calculated by getLoopClosureValue() function are low.
Specifically, the max of these values is about 0.13. And then, the threshold is set to 0.08.


My data
Only RGB images (appearance) based loop detection is going to be added to my project.
I have been referring to your sample code "rtabmap/examples/BOWMapping". A modified sample code is here.
In this code, a sharpness filter is applied to all images inputted to a rtabmap module. This filter seems to obtain more loop detection based on my trial and error.

RGB images used in this code are included in the following link.
https://drive.google.com/drive/folders/1PRMXI61-bv5K59xG51ceVsRhaQBmtlOj?usp=share_link

Then, a database made by this code is included in the following link.
https://drive.google.com/file/d/15zKe-5NUZu2uIh337jSh-PtoQP3namBO/view?usp=share_link


Investigation by me
I have found some solutions to similar questions about this problem such as the following links and etc.
https://answers.ros.org/question/241032/poor-results-of-loop-closurse-detection-rtabmap_ros/
http://official-rtab-map-forum.206.s1.nabble.com/Loop-Closure-not-detected-td7109.html

Then, RGBD/LoopClosureReextractFeatures was used in the above question pages. I think this option is used by RGBD images
However, these question pages cannot be used in my project because only RGB images are used in my project.



To sum up, could you give me some techniques of how to obtain more loop detection with only RGB images?
In addition to this question, is the sharpness filter helpful for more loop detection?