ARKit Loop Closure / Jumps in camera pose

Hello,

when using ARKit we're sometimes noticing sudden "jumps" in the camera pose, often times when a loop is closed and/or the system recognises a place it has seen before.

These jumps are expected as the system is optimising its map using the newly available data, but it seems like there's no way for developers to get notified when such pose jumps happen. We'd like to know when such jumps happen and the exact extent of the jump (the delta camera pose).

Is there a way to get such notifications? Perhaps a delegate to implement whose methods get called on these events?

Related to this: Does setting or detecting ARAnchors change or affect the described "jumping" behaviour in any way? If yes, how exactly?

Thank you.

  • I do not know a proper way to get this, but this would be very useful if this could be implemented !

Add a Comment

Replies

This would be a nice feature to have by default. What I have heard as a workaround is to create a new anchor in front of the camera for every frame and measure the camera pose relative to the last frame as your world coordinates instead of using camera.transform.