iOS应用中的增强现实:ARKIT开发指南
#ios #arkit #ar

在所有增强现实平台中,阿尔基特(Arkit)在其其他知名度和性能上都超过其余。苹果的紧密联系生态系统,标准化硬件和用于增强现实应用程序的ARKIT的高性能使其对AR开发人员非常理想。选择使用本机iOS框架制作应用程序可以解锁更先进的AR产品的潜力。

凭借在构建AR驱动应用程序方面的丰富经验,我们创建了一个ARKIT开发指南,该指南将帮助您填补对Arkit Projects的细节的一些空白。

ARKIT功能,用于在iOS上提供身临其境的体验

ARKIT最重要的方面是,它是唯一可以释放iPhone和iPad硬件全部潜力的框架,以增强现实体验。 Arkit必须提供的一些最伟大的功能是对象和场景识别,网格界,地理跟踪,面部跟踪等等。

Arkit通常与其Android竞争对手Arcore进行比较。就像Arkit一样,Arcore可以使使用Android设备的全部潜力来增强现实。但是,Android设备比Apple多样化,具有各种不同的规格和性能水平。这使Arkit的性能更加可预测和一致。

ARKit and ARCore features 2022

如果您仅针对iOS,或者您专门希望利用Apple设备的全部功能来实现AR体验,则ARKIT是必经之路。另外,如果您要为iOS和Android创建两个本机应用程序,我们建议您从iOS开发开始,因为它为开发人员提供了比Android更方便的工具,这意味着要检查您想法的可行性的具有成本效益的选项。此外,它涵盖了更多的潜在用户。

如何用Arkit创建增强现实

通过三个步骤完成iOS设备上的增强现实体验:跟踪,场景理解和渲染。 AR应用需要来自相机,加速度计和陀螺仪等传感器的输入。然后必须处理这些数据以确定现实世界中的相机运动。完成此操作后,可以将3D虚拟对象呈现在现实世界图像的顶部并显示给用户。

更高级的AR应用程序使用深度传感器来了解场景的布局。这可以具有更好的规模感,甚至可以支持诸如遮挡之类的功能,其中现实世界中的对象存在于ar中的虚拟对象前面。

然而,对于大多数AR应用,最佳环境是一个纹理良好且点燃的区域。平坦的表面最适合视觉进程,以及用于运动探测仪的静态场景。当环境不符合这些条件时,ARKIT为用户提供有关跟踪状态的信息。这三个可能的状态是:不可用,正常且有限。

ARKit provides users with information on the tracking state

ARKIT除了简单地在平面表面上显示对象外,还具有许多功能。例如,ARKIT 5支持垂直表面,图像识别和放置在地理空间中的对象。为了查看Arkit的功能,让我们看一下几种用例,可以帮助您的业务开辟一条创新的成功途径,并通过Arkit Development跨越市场。

案例研究#1:室外和室内AR导航

GPS是户外导航的国王。但是,当室内和被地形和高建筑物阻塞时,它的准确性降低。但是,扩展的技术等技术如蓝牙信标,Wi-Fi RTT和Ultra Wideband(UWB)正在填补空白。增强现实导航可以帮助用户使用GPS和其他这些技术以在现实世界中绘制的虚拟元素的形式用于屏幕上的方向。

使用AR室内导航,由替代定位技术提供动力,导航购物中心,会议中心和机场航站楼可能会变得容易得多。它也可以在商店和分销中心的业务环境中使用,以帮助工人找到所需的项目和包裹。

使用创新技术进行室内定位

如果GPS不可用,蓝牙,Wi-Fi RTT和UWB等替代定位技术可以帮助设备获得其精确的位置。之后,Arkit和渲染引擎要照顾其余的。

在这种情况下,经常讨论的解决方案是一个IoT信标网络,但是我们的研究表明,信标的精确AR导航的功能非常有限。在我们的实验中,信标导航准确性为3-5米,这对于2D导航来说是可以的,但是AR需要更高的准确性,最好是最高1米,甚至更高。

Beacons

这种方法面临各种挑战。信标网络必须仔细定位,以避免干扰和阻塞。例如,UWB信号无法穿过墙壁,人和植物。同样,它可能很昂贵,只有在某些情况下才有用。

鉴于信标不允许我们创建准确的室内导航,让我们看一下可以帮助我们实现此目标的其他选项。

图像识别和机器视觉

提供精确室内定位的另一种方法是使用视觉标记作为参考框架。这与ARKIT位置锚相似,该锚点在数据库中搜索匹配的图像以找到设备的地理位置。但是,我们没有搜索Apple Maps数据库,而是创建自己的视觉标记数据库。这些可能是QR码或任何表面上的任何其他独特代码。扫描时,这些标记将位置元数据传达给设备。

Positioning with ARKit

通过从标记获得的3D坐标,移动设备可以启动AR导航体验,以帮助用户通过建筑物找到自己的方式。这消除了对昂贵的物联网信标网络的需求。唯一必需的维护将确保标记清洁且毫不动摇。

具有增强现实的渲染途径:遮挡的重要性

在屏幕上绘制内容很容易。使其与现实世界无缝融合要困难得多。对于室内导航,如果当它在拐角处弯曲时被墙壁或门阻塞(阻塞),屏幕上的绘制线会更有帮助。没有遮挡,用户可能会对屏幕上的方向带来的何处感到困惑。

Rendering paths with ARKit

一些解决方案包括简单地在屏幕上绘制箭头,而不是完整的线路。但是,这并不方便。另一个选择是降低渲染距离。这样可以防止线路被拉得太远,并更容易避免考虑闭塞。

使用位置锚进行户外AR导航与ARKIT

室外AR导航通常比室内导航更容易完成,因为可靠的技术(例如GPS)。但是,基于图像识别的VP(视觉定位系统)系统可以使导航更加准确。这使得在屏幕方向等AR体验显示虚拟对象变得更加容易。

这种方法有一些缺点。例如,农村地区可能具有街道视图图像,但没有足够的人造功能(例如高建筑物)用作参考。这意味着提供屏幕上的方向可能会更难。数据库中没有任何图像的区域将使此方法毫无用处。由于这些局限性,基于图像的定位仅在更城市地区有用。

位置锚允许开发人员在地理空间中固定虚拟对象。然后,用户可以在首先从图像识别中获得位置后在其屏幕上看到这些虚拟对象。但是,这些城市地区有一些缺点。 Apple围绕图像数据尚未适用于所有城市。潜在的替代方法可能是信标或GPS网络。信标网络对于较小规模的户外设置将更加有用。例如,信标可以通过工厂区域传播以找到合适的车间。

案例研究#2:AR测量工具

由于用来提供增强现实的强大传感器,可以对环境进行准确的测量,而无需拉出磁带尺寸。这导致了Apple S Roomplan Framework的开发,该框架使用iPhone或iPad LiDAR扫描仪创建建筑内部建筑物的3D平面图。这包括房间尺寸,甚至可以识别家具的类型。

我们从事一个类似的项目,为俄勒冈州的客户创建AR家庭翻新应用程序。这使用户可以更改墙壁颜色,并添加新家具和其他物体。但是,在某些情况下,用户可能希望在同一表面上使用多种材料。这需要更多的工作才能解决。我们选择开发具有图数据结构的自定义算法,以使其按预期工作。这使用户可以将任何表面刻成任何数量的区域,并为每个区域选择其他材料。

即使在这种情况下我们创建了一个自定义解决方案,今天的室内发布可以用于类似项目,以使开发人员更容易。 Roomplan使开发人员能够以USD或USDZ文件格式有效输出房间扫描。其中包括房间包含的房间尺寸和物体。然后可以将这些文件格式导入其他软件,以进行进一步处理和开发。房间扫描的工作原理非常快,使用户可以在几秒钟内创建房间的扫描。

案例研究#3:基于面部的增强现实

ARKIT比Arcore的主要优势是硬件兼容性和稳定性。由于iPhone X以来,iPhone的Truedepth摄像头能够在基于面部的AR中提供一致的质量。就像其他类型的AR一样,这涉及跟踪,场景理解和渲染。

arkit处理数据以导致跟踪数据,面部网格和混合形状。跟踪数据使开发人员更好地了解如何在主题移动面部时显示内容。脸部网格是脸部的几何形状。在特定面部特征的运动方面,混合形状是检测到面的参数的集合。每个参数具有相应的值,这是一个浮点数,指示该特征相对于其中性配置的当前位置,范围从0.0(中性)到1.0(最大运动)。

Face based AR

Face tracking in ARKit

基于面部的AR用于AR面罩和过滤器,以改善用户体验并提高参与度。虚拟试验解决方案是消费者和企业的另一个流行选择。基于面部的AR可以帮助消费者尝试在家中使用太阳镜和化妆品,而无需离开家。长期以来,服装,鞋类,配饰和化妆品的品牌一直在实施这一顶级零售趋势,并且随着对元评估的兴趣的增长,它变得越来越受欢迎。

基于面部的ARKIT技术的非AR应用

重要的是要记住,由于面部跟踪的高级保真度,Arkit不一定仅对AR体验有用。它可以简单地用于面向跟踪应用,而无需增强现实。

例如,通过面部测量可以跟踪减肥。随着一个人的体重增加,他们的脸改变了宽度。 iPhone真实的深度相机可以检测到这些变化,并通过应用程序随着时间的推移进行测量。同样,基于面部的AR对于通过混合形状和眼动作控制屏幕元素很有用。有了一点想象力,基于面部的AR通过ARKIT解决方案打开了很多可能性。

阿尔基特发展的未来

由于其室内导航,面部识别,房间扫描功能等,

Arkit具有巨大的潜力。根据炮兵情报的数据,炮兵智能的数量每年都有活跃的ARKIT设备的数量增长,在2022年达到约13.68亿美元,而2021年为12.50亿。这表明企业对使用Arkit为客户提供沉浸式体验的兴趣日益增长。

尽管与Arkit一起增强现实开发的技术很重要,但任何成功的Arkit项目中最关键的组成部分都是专家开发团队。如果没有明确的创新目标,企业就可以为问题创造独特而有价值的解决方案。只有经验丰富的ARKIT开发人员才能将计划变成表演软件。