QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

ARCore ——移动 AR 的浪潮

  • 2017-09-05
  • 本文字数:1779 字

    阅读完需:约 6 分钟

据报道,美国时间 8 月 29 日,Google 发布了用于 Android 平台的 AR SDK——ARCore,这弥补了 AR 在 Android 市场上的空缺,让无数 Android 用户激动不已,但这无疑与苹果在今年 6 月 WWDC 2017 上发布的 ARKit 形成对垒。

如果说 ARKit 是苹果 AR 的起点,那么说 ARCore 掀起了移动 AR 市场的狂潮,这一点也不为过,因为 Android 作为全球最大的移动平台,拥有超过 20 亿活跃设备,ARCore 的横空出世意味着 AR 进入手机大群体用户的生活成为可能。而此前,Google 曾发布一个 Tango AR,所以,ARCore 也可以看做是 Tango 的升级版本。

据了解,目前 Google ARCore 只支持 Google Pixel 和 Samsung Galaxy S8 两种型号的设备,谷歌表示,他们正在积极与三星、华硕、LG、华为等厂商开展合作,预计今年 11 月份,将会有超过 1 亿的 Android 用户可以访问 ARCore 的应用程序。

ARCore 的工作原理

ARCOre 的工作原理主要有以下几点:

  1. 运动跟踪:它利用 IMU 传感器和设备的相机来发现空间的特征点,由此确定 Android 设备的位置和方向。此外,使用 VPS, 可以让 AR 物体每次看起来似乎都在同一位置。
  2. 环境感知:虚拟物体一般都是放置于平坦平面上的,用 ARCore 可以检测物体的水平表面,建立环境认知感,以保证虚拟的对象可以准确放置,然后让您看到放置在这些表面上的 AR 物体。
  3. 光线预测:ARCore 根据环境的光强度,使开发人员可以与周围环境相匹配的方式点亮虚拟对象。此外,最近的一个实验发现,虚拟阴影在真实环境光照下的调整功能也是如此,这样就可以使 AR 物体的外观更为逼真。

ARCore 与 Tango 对比

ARCore 和 Tango 两者的性能都很强大,但最突出的差别是对硬件的要求,ARCore 不需要额外的硬件就能在 Android 上运行,而 Tango 需要专属的定制硬件联想 PHAB 2 PRO 或华硕 Zenfone AR 上才能运行,这两款硬件产品的处理器配置低、巨大的边框设计和不良的电池寿命让用户牺牲了很多体验。在这一点上,ARCore 比 Tango 升级不少。

ARCore 与 ARKit 对比

相同点

  1. ARKit 在 iOS 中的工作原理与 ARCore 上述的原理大致相同。两者都允许开发人员使用现有手机的单个摄像头来感知并跟踪您的手机相对于现实世界的运动,并能调整虚拟物体与现实世界的匹配程度。
  2. 两者都能与 Java/OpenGL,Unity 和 Unreal 配合使用,并且都不需要其他特制硬件就可以在手机系统上运行。
  3. 两者都是先面向开发者,后面向消费者,他们希望开发人员能够轻松创建 AR 应用程序,理论上可以在现有的数亿手机上应用。

不同点

  1. ARKit 可以将 AR 应用程序运行在任何具有 A9 处理器的 iOS 11 系统以上,这意味着任何 iPhone 6S 或更高版本或任何 iPad Pro 都将能运行这些 AR 应用程序,但是对 Android 来说,由于不同厂商的手机型号会有兼容性的问题以及摄像头的不同,这在很大程度上限制了 ARCore 在 Android 的推广,为此,Google 还需做大量的工作。在这一点上,苹果比谷歌有优势。
  2. 此外,Google 还将 AR 引入 Web,认为其是“AR 未来的关键组成部分”, 并发布了两个实验性的浏览器——以 AR 为重点的 Chromium 浏览器版本:一个是在 Android 的基础上,可使用 ARCore 的浏览器;一个是基于 iOS,可使用 ARKit 的浏览器。这样,允许 Web 开发人员使用 AR,用浏览器也能用上 AR 功能,不用在手机上下载应用,开发人员可以使用 Java 将 3D 对象直接从网页推送到真实的世界中,虽然这些过程仍处于实验阶段,但依然值得期待。

ARKit 能做什么?

由于 ARCore 刚刚推出,用户的体验还不够多,我们就以 ARKit 为例,看看 AR 在移动设备上的功能有多强大。

1. 利用 ARKit 编写的应用程序与苹果铅笔相结合,可直接在 iPad 上给虚拟物体调整形状或颜色。

2. 利用 ARKit 与地图相结合,可以找到通讯录里在您附近的朋友。

3.ARKit 可以让您创造属于自己的宠物。

4.ARKit 让您在家里就可以享受到沙滩排球的乐趣。

5.ARKit 可以让您手绘 3D 建模。

ARKit 只是移动 AR 的开端,上面演示的 AR 产品也只是 AR 的冰山一角,它的潜力远远超过我们的想象。未来的 AR 会变成怎么样呢?也许在不久的将来我们在网上就能“试衣服”,在手机上就可以“装修房子”,可时刻追踪我们身边的人或物,实现真正的“手机掌控一切”的生活。


感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-09-05 19:004874
用户头像

发布了 83 篇内容, 共 48.7 次阅读, 收获喜欢 187 次。

关注

评论

发布
暂无评论
发现更多内容

【云原生 | 从零开始学Kubernetes】十一、k8s污点、容忍度和pod状态

泡泡

Docker 云计算 云原生 k8s 9月月更

大模型的禾下乘凉梦,百度自己来做试验田

脑极体

【数据结构与算法】一篇文章带你玩懂 “栈和队列”(增、删、查、改)的实现_【附源码、动图】

Dream-Y.ocean

队列 数据结构与算法 9月月更

跟着卷卷龙一起学Camera--内存池浅析06

卷卷龙

ISP 9月月更

【数据结构与算法】LeetCode面试真题,带你领略算法思想

Dream-Y.ocean

面试 队列 9月月更

前端工程师在面试时经常被问的闭包到底是什么?我用打包礼物的例子让你秒懂

wljslmz

JavaScript 闭包 9月月更

Python语法之类和对象(1)

芯动大师

Python 9月月更 类与对象

【数据结构与算法】“堆”还能这样用_堆的应用

Dream-Y.ocean

面试 9月月更

我也不想学之PHP系列(2)

吉师职业混子

9月月更

2022-09-27:给定一个棵树, 树上每个节点都有自己的值,记录在数组nums里, 比如nums[4] = 10,表示4号点的值是10, 给定树上的每一条边,记录在二维数组edges里, 比如ed

福大大架构师每日一题

算法 rust 福大大

读书笔记|择一城以定财富,择一行以定发展

宇宙之一粟

读书笔记 职业 个人感悟 9月月更

架构模块一作业

Diana S

架构实战营

企业服务中出场率最高的活动目录AD到底是什么?本文带您好好了解一下!

wljslmz

AD 9月月更 活动目录

Python之类和对象(2)

芯动大师

属性 9月月更 子类的定义

跟着卷卷龙一起学Camera--内存池浅析05

卷卷龙

ISP 9月月更

千峰课程网安笔记(1)

吉师职业混子

9月月更

这个C4D短片有点辣!热情起舞小金链尽显墨西哥黑帮气质

Renderbus瑞云渲染农场

影视制作 Renderbus瑞云渲染 3D电影制作

Python语法之模块和包(1)

芯动大师

9月月更 Python语法 模块的创建

【Python实践】使用Python实时语音控制电脑全局音量

迷彩

人工智能 语音识别 9月月更 控制电脑 语音控制

跟着卷卷龙一起学Camera--内存池浅析04

卷卷龙

ISP 9月月更

研发效能之技术治理&技术治理架构师

laofo

DevOps cicd 研发效能 持续交付 工程效率

第一模块作业

lsf1227

「架构实战营」

【数据结构与算法】2道面试真题,带你领略算法思想【附思路、动图、源码】

Dream-Y.ocean

面试 链表 9月月更

【docker】软链接迁移docker存储目录

非晓为骁

Docker 存储 迁移

设计消息队列存储消息数据的 MySQL 表格

张立奎

rust语言写的贪吃蛇游戏

福大大架构师每日一题

rust 贪吃蛇 福大大

从东南亚到中东,为什么社交类产品成为游戏出海的突破口?

融云 RongCloud

白皮书 社交网络 出海 社交娱乐

破解windows系统密码

吉师职业混子

9月月更

【编程实践】利用 Python 调用图灵机器人 API 实现实时语音聊天及自动回复

迷彩

Python 实时语音 实时聊天 9月月更

车企如何完善车载小程序生态安全

Geek_99967b

小程序

【数据结构与算法】粽子树?二叉树_关于堆你不知道的事情

Dream-Y.ocean

栈和队列 9月月更

ARCore ——移动AR的浪潮_移动_覃云_InfoQ精选文章