ARKit 是对真实世界的捕捉与追踪

其中ARKit有两个主要功能:
1.3D空间内的摄像机位置,假定手机相机为可移动的摄像机,所以在任意位置放置 3D 虚拟对象都会锚定在真实 3D 空间中对应的点上。
2. 水平面的检测,ARKit 可以检测诸如桌子这样的水平面,然后就可以在上面放置对象。
那么 ARKit 是怎么做到的呢?这是一项叫做视觉惯性里程计(VIO)的技术。从摄像头帧画面中追踪运动是通过检测特征点实现的,也可以说是高对比度图像中的边缘点——就像蓝色花瓶和白色桌子之间的边缘。通过检测两帧画面间特征点的相对移动距离,就可以估算出设备在 3D 空间里的位置。所以如果用户面对一面缺少特征点的白墙,或者设备移动过快导致画面模糊,ARKit 都会无法正常工作。
ARKit的基本知识:
捕捉真实世界:
ARSession
ARSession 是一个单例,用来管理、配置整个AR体验的主要流程,它包括:
从设备的运动传感器读取数据
控制摄设备内置摄像头,利用AVCaptureSession捕获实时的图像
对捕获到的图像进行分析,并对外输出ARFrame实例
综合运动数据和图像分析结果,建立起真实世界和虚拟世界的对应关系
每一个基于ARKit的AR项目都需要一个ARSession对象。
ARFrame
ARFrame实例是带有位置追踪信息(position-tracking information)的视频图像,对于ARFrame有以下三个要点:

ARKit是苹果的增强现实开发框架,通过视觉惯性里程计技术实现对真实世界的3D空间捕捉和设备运动追踪。ARSession管理AR体验,ARFrame包含位置追踪信息,ARWorldTrackingConfiguration负责设备运动的六自由度追踪。平面检测、场景理解和坐标系统是其重要组成部分,确保虚拟内容能准确锚定在真实世界中。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



