Multi-cam localization

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Multi-cam localization

manusldc
This post was updated on .
Hello,
First of all thank you very much your work.
My setup consists of one t265 and two d435 cameras from Intel. I'm currently mapping using all three cameras, here is my launch file:
t200_t265-2d435.launch

The mapping is successful and I get a database that I leave under ~/.ros/ with its original name rtabmap.db. The problem comes when I try launching the same file with localization:=true using an existent database:
[ WARN] (2021-03-17 11:20:16.827) Memory.cpp:831::update() The working memory is empty and the memory is not incremental (Mem/IncrementalMemory=False), no loop closure can be detected! 
Please set Mem/IncrementalMemory=true to increase the memory with new images or decrease the STM size (which is 1 including the new one added).


But, the database is not empty and it seems to recognize it. When I stop the process the following message gets output:
Saving database/long-term memory...done! (located at /home/t200/.ros/rtabmap.db, 28 MB)

The size is always equal to the original size of the existent database (28MB here).

Any clues on why this happens? I've been trying different values for different parameters like gen_scan, Grid/FromDepth, map_always_update, Mem/InitWMWithAllNodes... but all without luck.
Even more odd is that localization mode works when using only one d435, here is the launch file:
t200_t265-d435s.launch

Thank you,
Manuel
Reply | Threaded
Open this post in threaded view
|

Re: Multi-cam localization

matlabbe
Administrator
Hi Manuel,

For some reasons, maybe the database haven't saved correctly. You can show more info of the database with:
rtabmap-info /home/t200/.ros/rtabmap.db

If the database is in error state, we can try to recover it with:
rtabmap-recovery /home/t200/.ros/rtabmap.db

cheers,
Mathieu