AR Kit 尺子那个demo是如何实现的?

您所在的位置:网站首页 手机ar测距原理 AR Kit 尺子那个demo是如何实现的?

AR Kit 尺子那个demo是如何实现的?

2023-03-24 07:11| 来源: 网络整理| 查看: 265

ARkit尺子背后的原理是SLAM,苹果手机上的SAM是通过视觉惯性测量系统(VIO)来实现的。而视觉惯性测量系统(VIO)不只是一套算法,还结合了苹果手机的相机和各种传感器。所以深入下去,还是比较复杂的。

首先,我们从这里使用计算机视觉的基本解释开始。 iPhone的相机拍摄一张可以产生图像的照片,ARKit可以识别该图像中的特征。然后再拍摄一张照片,再次确定图像特征。然后将第一张图像与第二张图像进行比较,并进行一些计算以确定特征之间的变化。随着相机继续拍摄图像,一遍又一遍地执行此操作,iPhone就可以追踪某些“已知特征”。这和人眼背后的原理基本一致。

人眼是一个天然的高级光学系统。结构非常复杂。形象的说,人眼像一架自动摄像机,水晶体如同摄像机的物镜,能够在人的神经器官的控制下自动调焦,瞳孔如同光圈,视网膜如同相机底片,接受物体的 影像信息。

人眼感知景深的机制给了人们启发。经过研究发现由相机在两个不同的视角下拍摄的两幅图片,如果知道现实物点 P 在两幅图片中的对应关系, 就可以精确计算出 P 点的三维坐标信息。可以用针孔模型来近似描述相机的成像机制,如图所示。 M 为现实场景中的一物点O为相机的光心 O' 为光心在像平面上的投影OO'为相机光轴M '为物点 M 在像平面 P 上的像点

当你用眼睛看东西的时候,你的大脑会立即计算出你的右眼到左眼的视差,并确定深度: 视野中不同物体的距离。现在,有些对象可以知道大概的大小,也可以用来判断周围事物的大致范围 - 这些是被跟踪的“已知特征”。重要的是你的大脑对这两幅图像的差异进行计算。基本上这是三角测量 - 右眼看到某种方式,左眼看到一个稍微不同的方式,你的大脑知道你的眼睛之间的距离,大致的焦点角度和图像的差异,可以跟踪“已知特征”,从而可以计算距离并了解3D空间。

当iPhone相机开机时,它没有两个不同的图像来计算距离。但是,在拍摄第一张图像之后的一瞬间,确实有第二张图像。由于来自iPhone加速度仪的数据,它还可以估计iPhone摄像头3D位置和目标的差异 - 从第一幅图像到第二幅图像。现在我们回到正在追踪的那些“已知特征”。对于每个图像,iPhone不仅仅提取一个特征,而是尽可能多地提取特征。除了对图像中的每个特征进行三角测量之外,还会比较每个特征与图像中其他特征之间的差异。所以现在,就像你的大脑一样,iPhone有两种不同的视角,知道近似的焦点角度,知道镜头位置之间的距离,跟踪“已知特征”及其相互之间的关系。从这个角度来看,iPhone可以非常好地计算每个图像特征如何与其他特征之间差异、关系,从而基本上产生空间的3D映射,从而能够计算一点到另一点之间的距离,这就是AR尺子背后的基本原理。

大家可以在App Store搜索:Fancy AR 尺子,下载体验一下。实际测量结果与卷尺之间的误差在2%左右,已经非常不错了。

VIO算法并不是苹果发明的,苹果的牛逼之处就在于其深度结合iPhone的硬件特性,对VIO算法进行了高度优化,计算结果非常精准,误差非常小。一个微小的错误,在画面每秒刷新 1000 次的情况下,持续几秒钟后可能会导致 30% 甚至更大的计量尺度误差。而苹果 ARKit 可以把误差下降到 10% 以下。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3