microsoft / lamar-benchmark

Source code for the ECCV 2022 paper "Benchmarking Localization and Mapping for Augmented Reality".
Creative Commons Attribution 4.0 International
385 stars 36 forks source link

Question about the trajectories.txt #44

Closed oscarpang closed 1 year ago

oscarpang commented 1 year ago

Hey there,

Thanks for the dataset. Just a clarification question regarding to the trajectories.txt files included in the released dataset.

Sessions of map, query_val_XXX and query_XXX all contains the trajectories.txt file. If I understand it correctly, map/trajectories.txt and query_val_XXX/trajectories.txt are the ground truth poses of the corresponding poses.

What are the content of the query_XXX/trajectories.txt? Are these the poses reported by the device's own odometery system?

Thanks Weiwu

sarlinpe commented 1 year ago

If I understand it correctly, map/trajectories.txt and query_val_XXX/trajectories.txt are the ground truth poses of the corresponding poses.

This is correct.

What are the content of the query_XXX/trajectories.txt? Are these the poses reported by the device's own odometery system?

Yes, poses in query_{hololens,phone}/trajectories.txt are the outputs of each device's local tracking. They are consistent within all images of a sub-session (sequence), but are defined in an arbitrary reference-frame (usually aligned with the first pose of each sequence). They may exhibit some drift.

Apologies for the lack of documentation - we definitely should clarify this.

mihaidusmanu commented 1 year ago

Minor correction: the poses in query_val_XXX/trajectories.txt are also from on device tracking. The ground truth poses of the corresponding poses can be found in query_val_XXX/proc/alignment_trajectories.txt.

The INFO.MD coming with the data already mentions where GT can be found for each session type.

oscarpang commented 1 year ago

Thanks for the prompt reply. Just one followup question regarding the local tracking:

Yes, poses in query_{hololens,phone}/trajectories.txt are the outputs of each device's local tracking. They are consistent within all images of a sub-session (sequence), but are defined in an arbitrary reference-frame (usually aligned with the first pose of each sequence). They may exhibit some drift.

If I understand it right, the device (HoloLens and phone) local tracking should have drift over long period of time. Do you post-process it to remove the drift (through loop closure or global matching)? Any chance we can access the tracking output by the device's own odometry (which potentially have drift)?

sarlinpe commented 1 year ago

The data in query{_val,}_{hololens,phone}/trajectories.txt are the outputs of each device's local tracking, which does have drift and is not corrected. Only the GT poses (released only for the mapping and validation images) do not exhibit any drift (see paper). Do you mean that you would like to have access to the tracking outputs for the mapping data as well?

oscarpang commented 1 year ago

No. I think I was just confused when I read "They are consistent within all images of a sub-session (sequence)...". I thought consistent means no drift.

Thanks again.