【小沐学AR】ARCore简介 您所在的位置:网站首页 arcore的应用有哪些 【小沐学AR】ARCore简介

【小沐学AR】ARCore简介

2024-07-11 08:33| 来源: 网络整理| 查看: 265

在这里插入图片描述 《看书篇》 诗云: 书山勤为径, 学海苦作舟。 书中颜如玉, 书中黄金屋。 买书如山倒, 看书如抽丝。 觉都不够睡, 奈何杂事多。 朝为书忧, 暮为书愁, 朝朝暮暮, 忧愁不断。 去年沉迷工作, 今日待业家中, 人生不如意事十之八九。 每天,狄狄第一个来,戈戈最后一个走。 早上,狄狄拿起那本皱巴巴的《道德经》读了起来,“道可道,非常道…”。 戈戈:朝闻道,晚上睡得好! 上午,狄狄在抽屉里翻起《易经》,手指扒拉着,若有所思。 戈戈:日往则月来,月往则日来,日月相推,而明生焉。 中午,狄狄趴在桌子上刷起了《大学》视频,一会笑一会哭。 戈戈:大学之道,在明明德,在亲民。困=_=! 下午,狄狄开始埋头认真抄写《论语》笔记。 戈戈:狄狄,您是在准备科举考状元麽? 狄狄:灭口灭口。 幕落。

【小沐学AR】ARCore简介 【小沐学AR】ARCore官方示例(Android)

ARCore简介 1、什么是 ARCore?2、ARCore 的特点3、ARCore 的原理3.1 运动追踪(Motion tracking)3.2 环境理解(Environmental understanding)3.3 深度了解(Depth understanding)3.4 光估计(Light estimation)3.5 用户互动(User interaction)3.6 定向点(Oriented points)3.7 锚点和可追踪对象(Anchors and trackables)3.8 增强图像(Augmented Images)3.9 分享(Sharing) 4、ARCore 开发包下载4.1 google4.2 GitHub4.3 开发环境 5、Google Play Services for AR6、ARCore 支持的设备6.1 设备认证6.2 Android 设备模拟器6.3 安卓(Google Play)6.4 安卓(中国)6.5 iOS 后续

1、什么是 ARCore?

ARCore — Google 的 AR 开发者平台 — 为创建 AR 体验提供了简单而强大的工具。 ARCore — Google’s AR developer platform — provides simple yet powerful tools for creating AR experiences.

官网地址: https://arvr.google.com/arcore/ https://developers.google.cn/ar/ https://developers.google.com/ar/ 在这里插入图片描述 ARCore 是 Google 用于构建增强现实体验的平台。ARCore 使用不同的 API 使您的手机能够感知环境、了解世界并与信息交互。一些 API 可在 Android 和 iOS 上使用,以实现共享的 AR 体验。

ARCore 使用三个关键功能将虚拟内容与通过手机摄像头看到的现实世界相结合:

运动跟踪:允许手机了解并跟踪其相对于世界的位置。环境理解:使手机能够检测所有类型表面的大小和位置:水平、垂直和有角度的表面,如地面、咖啡桌或墙壁。光估计:允许手机估计环境的当前照明条件。 在这里插入图片描述

ARCore 旨在用于运行 Android 7.0 (Nougat) 及更高版本的各种合格的 Android 手机。此处提供了所有受支持设备的完整列表。

从根本上说,ARCore 正在做两件事:跟踪移动设备移动时的位置,以及建立自己对现实世界的理解。

ARCore 的运动跟踪技术使用手机的摄像头来识别有趣的点,称为特征,并跟踪这些点如何随时间移动。结合这些点的移动和手机惯性传感器的读数,ARCore 可以确定手机在空间中移动时的位置和方向。

除了识别关键点之外,ARCore 还可以检测平面,例如桌子或地板,还可以估计其周围区域的平均照明。这些功能相结合,使 ARCore 能够建立自己对周围世界的理解。 在这里插入图片描述

2、ARCore 的特点 云锚

跨 Android 和 iOS 的持久、多用户、跨平台 AR 体验。

录音和回放

使用预先录制的 MP4 加速开发人员工作流程并解锁新用例。

深度

通过对象遮挡、沉浸和交互来增加真实感——您甚至可以进行对象和场景重建。

环境 HDR

将现实世界的照明扩展到虚拟对象,使数字对象看起来就像它们实际上是现实世界场景的一部分。 在这里插入图片描述

3、ARCore 的原理 3.1 运动追踪(Motion tracking)

当您的手机在世界范围内移动时,ARCore 使用称为同步定位和地图绘制(SLAM)的过程来了解手机相对于周围世界的位置。ARCore 在捕获的相机图像中检测视觉上不同的特征,称为 特征点,并使用这些点来计算其位置变化。视觉信息与来自设备 IMU 的惯性测量值相结合,以估计相机相对于世界随时间推移的姿态(位置和方向)。

通过将渲染 3D 内容的虚拟相机的姿势与 ARCore 提供的设备相机的姿势对齐,开发人员能够从正确的角度渲染虚拟内容。渲染的虚拟图像可以叠加在从设备摄像头获得的图像之上,使其看起来好像虚拟内容是现实世界的一部分。 在这里插入图片描述

3.2 环境理解(Environmental understanding)

ARCore 通过检测特征点和平面,不断提高对现实世界环境的理解。

ARCore 寻找看似位于常见水平或垂直表面(如桌子或墙壁)上的特征点簇,并将这些表面作为几何平面提供给您的应用程序。ARCore 还可以确定每个几何平面的边界,并将该信息提供给您的应用程序。您可以使用此信息将虚拟对象放置在平面上。

由于 ARCore 使用特征点来检测平面,因此可能无法正确检测没有纹理的平面,例如白墙。

3.3 深度了解(Depth understanding)

ARCore 可以使用受支持设备的主 RGB 摄像头创建深度图,即包含有关表面与给定点之间距离的数据的图像 。您可以使用深度图提供的信息来实现身临其境和逼真的用户体验,例如使虚拟对象与观察到的表面准确碰撞,或者使它们出现在现实世界对象的前面或后面。

3.4 光估计(Light estimation)

ARCore 可以检测有关其环境照明的信息,并为您提供给定相机图像的平均强度和色彩校正。此信息可让您在与周围环境相同的条件下照亮虚拟对象,从而增加真实感。

3.5 用户互动(User interaction)

ARCore 使用命中测试来获取与手机屏幕对应的 (x,y) 坐标(通过点击或您希望应用程序支持的任何其他交互提供)并将光线投射到相机的世界视图中,返回任何几何平面或光线相交的特征点,以及该交点在世界空间中的姿态。这允许用户选择或以其他方式与环境中的对象交互。

3.6 定向点(Oriented points)

定向点可让您将虚拟对象放置在有角度的表面上。当您执行返回特征点的命中测试时,ARCore 将查看附近的特征点并使用这些特征点来尝试估计给定特征点处的表面角度。然后 ARCore 将返回一个考虑了该角度的姿势。

由于 ARCore 使用特征点簇来检测表面的角度,因此可能无法正确检测没有纹理的表面,例如白墙。

3.7 锚点和可追踪对象(Anchors and trackables)

随着 ARCore 提高对自身位置和环境的理解,姿势可能会发生变化。当您想要放置虚拟对象时,您需要定义一个 锚点以确保 ARCore 随时间跟踪对象的位置。通常,您会根据命中测试返回的姿势创建锚点,如用户交互中所述。

姿势可以改变的事实意味着 ARCore 可能会随着时间的推移更新几何平面和特征点等环境对象的位置。平面和点是一种特殊类型的对象,称为可追踪对象。顾名思义,这些是 ARCore 将随时间跟踪的对象。您可以将虚拟对象锚定到特定的可追踪对象,以确保即使设备四处移动,您的虚拟对象与可追踪对象之间的关系也能保持稳定。这意味着,如果您在桌面上放置一个虚拟的 Android 小雕像,如果 ARCore 稍后调整了与桌面相关联的几何平面的姿势,则该 Android 小雕像仍会出现在桌子顶部。

注意:为了降低 CPU 成本,请尽可能重用锚点并分离不再需要的锚点。

3.8 增强图像(Augmented Images)

增强图像是一项功能,可让您构建可以响应特定 2D 图像(例如产品包装或电影海报)的 AR 应用程序。用户可以在将手机摄像头对准特定图像时触发 AR 体验——例如,他们可以将手机摄像头对准电影海报,然后弹出一个角色并制作一个场景。

ARCore 还跟踪移动图像,例如移动公交车侧面的广告牌。

可以离线编译图像以创建图像数据库,或者可以从设备实时添加单个图像。注册后,ARCore 将检测这些图像、图像的边界,并返回相应的姿势。

3.9 分享(Sharing)

ARCore Cloud Anchor API 可让您为 Android 和 iOS 设备创建协作或多人游戏应用程序。

使用 Cloud Anchors,一台设备将一个锚点和附近的特征点发送到云端进行托管。这些锚点可以与同一环境中 Android 或 iOS 设备上的其他用户共享。这使应用程序能够渲染附加到这些锚点的相同 3D 对象,让用户同时拥有相同的 AR 体验。

4、ARCore 开发包下载 4.1 google

https://developers.google.com/ar/develop/downloads 在这里插入图片描述

4.2 GitHub

https://github.com/google-ar 在这里插入图片描述

4.3 开发环境

在这里插入图片描述 在这里插入图片描述

5、Google Play Services for AR

https://github.com/google-ar/arcore-android-sdk/releases/tag/v1.27.0

适用于 AR服务 的Google Play 服务会在应用安装期间或运行时开始 ARCore 会话时自动安装。请参阅启用 ARCore文档(Android、 NDK、 Unity for Android)了解更多信息。

谷歌播放服务AR也可以单独下载,开展积极开发过程中侧面加载任何物理上的测试ARCORE支持的设备 支持或Android模拟器的Android或 Android的NDK。 在这里插入图片描述

6、ARCore 支持的设备

https://developers.google.com/ar/devices

6.1 设备认证

支持设备意味着什么?简而言之,这意味着它已经通过了我们的认证过程。

认证很重要,因为我们希望用户对您的 AR 应用程序有良好的体验。这主要与敏感运动跟踪有关,它是通过结合相机图像和运动传感器输入来确定用户设备如何在现实世界中移动来完成的。

为了认证每台设备,我们会检查摄像头、运动传感器和设计架构的质量,以确保其按预期运行。此外,设备需要有足够强大的 CPU 与硬件设计集成,以确保良好的性能和有效的实时计算。

6.2 Android 设备模拟器 制造商设备型号注释GoogleAny x86 or x86_64 based AVD需要 Android 8.1 (API 27) 或更高版本。面向后的(世界)照相机被仿真与虚拟场景。不支持前置(自拍)相机。 6.3 安卓(Google Play)

这里列出的Android设备通过支持ARCORE谷歌播放服务AR ,这使得能够增强与ARCORE SDK构建现实(AR)的经验,如果满足以下条件:

(1)该设备最初随 Google Play 商店提供

(2)该设备正在运行下表中列出的最低 Android 版本,如果未列出版本,则设备必须运行 Android 7.0 或更高版本

“AR可选的”应用程序必须声明minSdkVersion ≥ 14 ( API等级14 )“AR要求”应用必须声明minSdkVersion ≥ 24( API等级24 ) 6.4 安卓(中国)

在中国,设备不随 Google Play 商店提供。此处列出的 Android 设备通过适用于 AR 的 Google Play 服务支持 ARCore,该服务可作为单独的可从以下:

应用商店下载的服务获得:

小米应用商店(小米应用商店)华为应用商店(华为应用商店)OPPO APP Market(OPPO软件商店)Samsung Galaxy Apps (三星应用市场)V-Appstore(vivo应用商店)

ARCore 支持在中国地区销售的这些设备:

制造商设备型号注释HuaweiHonor 10支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APIHuaweiHonor Magic 2HuaweiHonor V20支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480pHuaweiMaimang 7HuaweiMate 20支持深度APIHuaweiMate 20 ProHuaweiMate 20 X支持深度APIHuaweiNova 3支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APIHuaweiNova 3iHuaweiNova 4支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APIHuaweiP20支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APIHuaweiP20 Pro支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480pHuaweiP30支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APIHuaweiP30 Pro支持多种 GPU 纹理分辨率 - 2048x1536、1280x960、480p,支持深度APIHuaweiPorsche Design Mate RSHuaweiPorsche Design Mate 20 RSOppoA53 5GOppoA93 5GOppoFind X3支持深度APIOppoFind X3 Pro支持深度APIOppoF19 Pro+支持深度APIOppoK5支持多种 GPU 纹理分辨率 - 1080p、720p、480pOppoK7x支持深度APIOppoK9 5GOppoRenoOppoReno 10x Zoom支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480pOppoReno Ace支持深度APIOppoReno Ace 2OppoReno ZOppoReno2支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480pOppoReno2 Z支持多种 GPU 纹理分辨率 - 1080p、720p、480pOppoReno4 SE 5G支持深度APIOppoReno5 5GOppoReno5 K 5GOppoReno5 Pro 4GOppoReno5 Pro 5G支持深度APIOppoReno5 Pro+ 5G支持深度APIOppoReno6 Pro+ 5GrealmeQrealmeQ2 Pro 5GrealmeQ3 5GrealmeXrealmeX LiterealmeX2realmeX2 ProrealmeX3realmeX50 Pro PlayerrealmeX7 5GrealmeX7 Pro 5GrealmeV5 5Grealme真我V13 5Grealme真我GTrealmerealme GT Neo支持深度APISamsungGalaxy Note9SamsungGalaxy S9 Exynos支持多种 GPU 纹理分辨率 - 1080p、720p、480p,支持深度APISamsungGalaxy S9 Qualcomm支持多种 GPU 纹理分辨率 - 2048x1536、1280x960、480p,支持深度APISamsungGalaxy S9+ Exynos支持多种 GPU 纹理分辨率 - 1080p、720p、480p,支持深度APISamsungGalaxy S9+ Qualcomm支持多种 GPU 纹理分辨率 - 2048x1536、1280x960、480p,支持深度APISamsungGalaxy S10e Exynos支持多种 GPU 纹理分辨率 - 1080p、720p、480p,支持深度APISamsungGalaxy S10e Qualcomm支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APISamsungGalaxy S10 Exynos支持多种 GPU 纹理分辨率 - 1080p、720p、480p,支持深度APISamsungGalaxy S10 Qualcomm支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APISamsungGalaxy S10+ Exynos支持多种 GPU 纹理分辨率 - 1080p、720p、480p,支持深度APISamsungGalaxy S10+ Qualcomm支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p,支持深度APISamsungGalaxy S10 5G支持多种 GPU 纹理分辨率 - 1080p、720p、480p,支持深度API,支持飞行时间 (ToF) 硬件深度传感器VivoiQOOVivoiQOO 5 5GVivoiQOO 5 Pro 5GVivoiQOO Neo3 5GVivoiQOO U1VivoiQOO Z1xVivoNEX SVivoNEX 3 4G/5GVivoS7 5GVivoX23VivoX50 5GVivoX50 ProVivoX50 Pro+VivoV2046AVivoV2047AVivoV2056AVivoY51sVivoY70sXiaomiMi Mix 2S支持多种 GPU 纹理分辨率 - 1920x1440、1280x960、480pXiaomiMi Mix 3XiaomiMi 8 SEXiaomiMi 8 SEXiaomiMi 9XiaomiMi 10 Ultra 6.5 iOS

云锚上支持运行iOS 11.0或更高版本的所有ARKit兼容设备。

可以为面向 iOS 10.0 或更高版本的应用程序编译 Cloud Anchors SDK。比以下列表中的设备更旧的 iOS 设备不支持云锚点。

增强面孔上支持运行iOS 11.0或更高版本的所有ARKit兼容设备。

可以为面向 iOS 10.0 或更高版本的应用程序编译增强人脸 SDK。Augmented Faces 可能适用于比以下列表中的设备更旧的 iOS 设备,但可能无法以实时 AR 用例所需的帧速率运行。

以下 iOS 设备已经过验证,可以同时使用 Cloud Anchors 和 Augmented Faces。

产品设备型号iPhoneiPhone 11iPhone11 ProiPhone11 Pro MaxiPhoneiPhone XRiPhoneiPhone XS and XS MaxiPhoneiPhone XiPhoneiPhone 8 and 8 PlusiPhoneiPhone 7 and 7 PlusiPhoneiPhone 6S and 6S PlusiPhoneiPhone SEiPadiPad Air 3rd GenerationiPadiPad mini 5th GenerationiPad12.9-in. iPad Pro (1st Generation)iPad12.9-in. iPad Pro (2nd Generation)iPad12.9-in. iPad Pro (3rd Generation)iPad11-in. iPad ProiPad10.5-in. iPad ProiPad9.7-in. iPad ProiPadiPad (7th Generation)iPadiPad (6th Generation)iPadiPad (5th Generation)iPodiPod touch (7th Generation)在这里插入图片描述在这里插入图片描述在这里插入图片描述 后续

如果你觉得该方法或代码有一点点用处,可以给作者点个赞;╮( ̄▽ ̄)╭ 如果你感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进。o_O??? 谢谢各位童鞋们啦( ´ ▽´ )ノ ( ´ ▽´ )っ!!!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有