Skip to content

iOS: odometry reset to origin after recording over 2000 nodes in Data recorder mode #1682

Description

@matlabbe

Not clear what is happening, I saw some long scans (recorded in Data Recorder mode) where near the end it seems there are some lags (>5 sec) that are causing "lost" events, making rtabmap resetting to origin the odometry. Based on the data of the database, it doesn't look like someone did a reset manually, and it looks like it was during fast rotation in textureless areas. I couldn't reproduce that bug though even by hiding the camera, there could be something happening with ARKit failing for some reasons after 2000 nodes recorded (RAM issue?). Here is where ARKit can potentially return lost, then a new map (odometry is reset to origin) is triggered:

var lost = false
switch frame.camera.trackingState {
case .normal:
lost = false
case .limited(.excessiveMotion):
lost = false
case .limited(.insufficientFeatures):
lost = false
default:
lost = true
}
// Notify lost with pose=null

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions