4 ms·
Good points, just wanted to point out that, according to their documentation[1], Apple ARKit doesn't do SLAM, but Visual Inertial Odometry, which is one of the
by raghavkhanna 9y ago
Good points, just wanted to point out that, according to their documentation[1], Apple ARKit doesn't do SLAM, but Visual Inertial Odometry, which is one of the (important) components of a SLAM system, whereas Tango does the full SLAM pipeline with loop closure and relocalisation, and should therefore enable more, larger scale applications and allow for persistence between device/app reboots etc.
[1] https://developer.apple.com/arkit https://developer.apple.com/arkit
- AndrewKemendo 9y agoApple ARKit doesn't do SLAM, but Visual Inertial Odometry, which is one of the (important) components of a SLAM system, whereas Tango does the full SLAM pipeline with loop closure and relocalisation This is actually not as cut and dry as it sounds. Generally speaking the difference between VO and SLAM is how it handles accumulated errors to do LC/relocalization. Almost by default a robust VO system using some kind of sensor fusion does a form of relocalization but rarely loop closure. I say this because I feel like it undercuts Apple's effort by stating it's a purely VO approach and I don't want people to get the impression that you can't do round trip SLAM without active depth (IR etc...).
- raghavkhanna 9y agoI was in no way trying to undercut Apple's efforts, just stating what's written in their documentation [1], i.e they're currently only performing tracking with VIO as compared with Google's [2]. "Almost by default a robust VO system using some kind of sensor fusion does a form of relocalization but rarely loop closure." This is not true, Visual(Inertial) Odometry systems typically estimate "odometry" i.e frame to frame motion tracking hence the name, such as in [3] and [4], whereas SLAM systems, such as [5], store a map of features, and their descriptors to relocalize which isn't necessarily a typical feature of pure VO systems. [1] https://developer.apple.com/arkit https://developer.apple.com/arkit [2] https://developers.google.com/tango/developer-overview https://developers.google.com/tango/developer-overview [3] https://github.com/uzh-rpg/rpg_svo https://github.com/uzh-rpg/rpg_svo [4] https://github.com/ethz-asl/rovio https://github.com/ethz-asl/rovio [5] https://github.com/raulmur/ORB_SLAM2 https://github.com/raulmur/ORB_SLAM2
- AndrewKemendo 9y agoSure, didn't mean it to sound accusatory. So the reason I say that it's "almost by default" is because on really quality VO systems, if you turn in a 360 degree circle, the image descriptors and pose estimates returned are almost exactly the same. It's not of course the same, but the effect for an end user is the same and can be extended relatively easily.
- steinomri 9y agoThis comment is spot on. Actually if you have a device with ARKit on it, you can see for a fact that they do have relocalization: cover the lens for a few seconds until tracking is lost, then return to the point of origin, you will see that the intial cube (placed at the origin) snaps back to the correct place. What they probably don't do is global mapping of the entire session.