covins icon indicating copy to clipboard operation
covins copied to clipboard

Loop detection fails for a single agent, on the EuRoc MH sequence

Open zhixun25 opened this issue 7 months ago • 0 comments

I am running on a docker image, using ORBSLAM3 ROS Front-End and COVINS Server Back-End (not COVINS-G). The computer is MSI GP68HX, i9-13950HX rtx4060 16G.

I found that on MH_01 sequence of EuRoc, placerec_be.cpp can run Optimization::OptimizeRelativePose(). However, the number of matching point pairs, numCorrespondences, is 6, which is much smaller than the number of outlier-"free" optimization 12. Therefore, loop detection (ComputeSE3) is not successful.

On MH_03 or MH_04 sequences of EuRoc, placerec_be.cpp does not run Optimization::OptimizeRelativePose(). Therefore, loop detection is not successful.

On MH_02 or MH_05 sequences of EuRoc, due to the reset of the ORBSLAM3 Front-End, the server eventually got an error "ProcessKeyframeMessages:144: Received full msgs for existing KF KF 0|0 /bin/bash: line 2: 1520 Segmentation fault (core dumped) rosrun covins_backend covins_backend_node". I set comm.start_sending_after_kf: 50 and orb.imu_stamp_max_diff: 2.0.

Therefore, I cannot run MH_01, MH_02 and MH_03 in multiple terminals on one device in the form of multi-session. The trajectory accuracy on EuRoc, single agent mode is much lower than ORBSLAM3. I think the reason is that the loop detection is not successful. But I am using the default configuration, can you give me some help?

When running multi-agent mode, such as running the MH_01 sequence and MH_03 sequence, the place recognition is successful.

Anyway, thank you very much

zhixun25 avatar Jul 24 '24 12:07 zhixun25