Map misalignement during localization

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

Map misalignement during localization

g.bartoli
Hi Mathieu,
I'm doing some experiment using your setup for small environments and it works great during my mapping session, i.e. the tracking is done correctly and the point cloud is nicely incremented during sensor movements. I also added post-processing to refine graph links and then I updated the cache using Edit --> Download all clouds.

After this database was created, I wanted to perform a localization session in this environment, enabling the system to globally re-localize the sensor without updating the map. Unfortunately, when I start the Localization, the system seems to localize and track the sensor (no red frames, just some yellow local loops) and a trajectory is being drawn but the point cloud acquired by the sensor is totally misaligned with the current point cloud of the environment.

I attached a screenshot of the user interface, in the right part of the map you can see the sensor point cloud misaligned of about 45° against the environment, even if the system correctly finds loop closures and perform tracking.
Am I doing something wrong?

Thanks,
regards

Localization phase
~Guido
Reply | Threaded
Open this post in threaded view
|

Re: Map misalignement during localization

g.bartoli
And if it is needed for your investigation, I found that this misalignement is present also if the map is not previously optimized, i.e. Localization is enabled directly after Mapping.

Here is a screenshot of this case, where the right part shows the sensor point cloud misalignement...

Localization misalignement
~Guido
Reply | Threaded
Open this post in threaded view
|

Re: Map misalignement during localization

matlabbe
Administrator
Note that post-processing is only done in the GUI, it does not modify the actual links in the database. When starting mapping again, the refined links are vanished. This option is mostly used to map -> then post-processing -> then Export cloud. To actually refine links with ICP and save them in database, you should use the database editor (database viewer).

In localization mode, while the current session is not linked with a previous one (through a loop closure), there will be an offset. You should see a green background in the loop closure view to know when the sensor is relocalized in the previous map, then the offset should disappear. Now, even if you are localized once, the sensor may drift if there are no relocations/loop closures again, which could generate an offset over time.

cheers