ARKit和Tango,苹果谷歌浏览器和谷歌谁才是最好的AR平台

提前三年就研发出Tango的谷歌被苹果ARKit超越了?凭什么!提前三年就研发出Tango的谷歌被苹果ARKit超越了?凭什么!小游酱百家号据外电报道,今年年底,苹果将会让增强现实应用进驻到多大10亿部移动设备当中。据外电报道,今年年底,苹果将会让增强现实应用进驻到多大10亿部移动设备当中。虽然Alphabet旗下的谷歌早在三年前就已发布了增强现实工具,但目前它的功能只出现在少数手机当中,且未被广泛接受。第三方开发者认为,与谷歌面临的情况不同,苹果能够轻松的让软件和设备进行配对,这种优势让其能够迅速收复失地。“当苹果的新设备拥有增强现实功能后,我的应用将很快进入到数以百万计的手机中,”增强现实应用开发者阿尔珀-古勒尔(Alper Guler)表示。“这是一个重要的更新,能够让我们向前推进一大步。”增强现实技术叠加了数字信息。举例来说,它能够把视频游戏中的人物或产品价格展现在现实世界中人们的面前。另一方面,虚拟现实技术则让用户完全沉浸在数字体验当中。投资银行高盛预计,到2025年,增强现实和虚拟现实技术市场的规模将达到1820亿美元。在苹果上月发布iOS 11时,该公司推出了“ARKit ”。苹果也利用ARKit展示出该公司在增强现实领域中的野心。ARKit能够利用每一部iPhone和iPad上的摄像头,以及这些设备中的各种传感器,它将利用苹果设备优秀的能力创造出准确的增强现实体验。截止目前,几乎所有分析师都认为ARKit带来的效果令人难以置信。谷歌早在2014年便推出第一代增强现实软件系统Tango,并在今年1月展示了新一代的系统。不过与ARKit不同,Tango使用了各种各样的传感器,这些传感器可以与专门的处理器和摄像头一起工作,从而精确地绘制出周围区域的地图,以达到增强现实的目的。截至目前,Tango只出现在两款不同的智能手机上--联想的Phab 2 Pro和华硕的ZenFone AR--而且这款软件需要大量的硬件传感器才能维持它的正常运行。苹果的ARKit则使用了iPhone现有的硬件,如摄像头和陀螺仪,来实现类似的效果。谷歌问题的症结在于所谓的碎片化。当它更新Android移动操作系统时,硬件制造商和手机网络运营商常常会推迟让手机采用新操作系统的时间。这意味着最新的功能,如Tango,只能够触及到Android的20多亿活跃设备中的一小部分。苹果设计了软件和硬件,使其更能控制操作系统在iPhone上的运行时间和操作方式。其结果是:86%的苹果移动设备运行最新的iOS操作系统,而运行最新版Android操作系统的Android设备只有11.5%。当要打造一个新增强现实生态体系,希望第三方开发者能够为数以百万计的智能手机用户开发应用时,这就会存在重大的缺陷。Tango目前只能被少数Android设备支持,开发者也不愿意冒风险为Android系统开发应用,因为他们担心没有用户会使用这类应用。苹果则不会遇到这种问题。如果今年秋季半数的苹果设备下载了全新的iOS 11操作系统,这意味着5亿部iPhone和iPad将会支持ARKit。(虽然目前全球运行iOS的苹果设备超过10亿部,但一些早期的设备已无法支持iOS 11)。不过对增强现实应用开发者而言,这仍然是规模庞大、几乎是现成的市场。数字工作室Dift Collective的设计人员早已考虑过Tango,但却没有使用过它。不过自苹果在开发者大会中发布ARKit之后,Dift Collective的开发人员已经开发出了增强现实体验,包括计算机生成的在游泳池中着陆的火箭,以及在客厅中央漂浮的3D月亮等。该公司运营主管查理-德-威尼斯(Charly De Venezia)表示,“对我们来说,发布是前进的主要方向。”德-威尼斯解释说,即便是谷歌后来推出的增强现实软件不需要3D传感器,数以百计不同款式的手机采用各种不同版本的Android,也意味着开发者需要额外进行大量的工作。根据谷歌自己的统计数据,截至今年7月初,全球移动设备中共搭载着7种不同的Android操作系统。因为开发者必须为众多显示屏像素不同、性能不同的设备测试和优化增强现实应用,“在向市场推动增强现实应用之前,这确实需要大量的工作,”德-威尼斯说。截至目标,谷歌方面对此未予置评。不过这家公司正竭尽所能解决碎片化的问题。谷歌在今年5月推出了Project Treble,希望简化厂商适配流程,以此来加速系统更新,解决碎片化问题。增强现实和虚拟现实投资公司Super Ventures合伙人Matt Miesnieks认为,要求Android硬件设备制造商遵守严格的摄像头标准是一道突出的障碍。不过苹果则自主设计硬件和软件,因此该公司手机中的摄像头能够匹配ARKit的特别要求。“Android无法与ARKit竞争的原因,是因为原始设备制造商需要有效的标准化它们的摄像头系统,” Miesnieks说。不过对苹果而言,ARKit已有了广泛的用户基础。彭博社此前报道称,苹果的技术人员正在开发一款智能眼镜,而且下一代iPhone可能会带有前置和后置3D传感器。在真实环境中放置虚拟物品时,3D传感器能够改进精确度。为时装产业提供增强现实工具的Avametric首席执行官阿里-布鲁姆(Ari Bloom)认为,这一点对电子商务应用尤为重要。“如果要向消费者展示一款产品,精确度会变得尤为重要,”他说。本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。小游酱百家号最近更新:简介:热爱游戏,创造快乐,传递快乐作者最新文章相关文章为什么提前三年就研发出Tango的谷歌却被苹果ARKit超越?
据外电报道,今年年底,苹果将会让增强现实应用进驻到多大10亿部移动设备当中。
虽然Alphabet旗下的谷歌早在三年前就已发布了增强现实工具,但目前它的功能只出现在少数手机当中,且未被广泛接受。第三方开发者认为,与谷歌面临的情况不同,苹果能够轻松的让软件和设备进行配对,这种优势让其能够迅速收复失地。
“当苹果的新设备拥有增强现实功能后,我的应用将很快进入到数以百万计的手机中,”增强现实应用开发者阿尔珀-古勒尔(Alper
Guler)表示。“这是一个重要的更新,能够让我们向前推进一大步。”
增强现实技术叠加了数字信息。举例来说,它能够把视频游戏中的人物或产品价格展现在现实世界中人们的面前。另一方面,虚拟现实技术则让用户完全沉浸在数字体验当中。投资银行高盛预计,到2025年,增强现实和虚拟现实技术市场的规模将达到1820亿美元。
在苹果上月发布iOS 11时,该公司推出了“ARKit
”。苹果也利用ARKit展示出该公司在增强现实领域中的野心。ARKit能够利用每一部iPhone和iPad上的摄像头,以及这些设备中的各种传感器,它将利用苹果设备优秀的能力创造出准确的增强现实体验。截止目前,几乎所有分析师都认为ARKit带来的效果令人难以置信。
谷歌早在2014年便推出第一代增强现实软件系统Tango,并在今年1月展示了新一代的系统。不过与ARKit不同,Tango使用了各种各样的传感器,这些传感器可以与专门的处理器和摄像头一起工作,从而精确地绘制出周围区域的地图,以达到增强现实的目的。截至目前,Tango只出现在两款不同的智能手机上--联想的Phab
2 Pro和华硕的ZenFone
AR--而且这款软件需要大量的硬件传感器才能维持它的正常运行。苹果的ARKit则使用了iPhone现有的硬件,如摄像头和陀螺仪,来实现类似的效果。
谷歌问题的症结在于所谓的碎片化。当它更新Android移动操作系统时,硬件制造商和手机网络运营商常常会推迟让手机采用新操作系统的时间。这意味着最新的功能,如Tango,只能够触及到Android的20多亿活跃设备中的一小部分。苹果设计了软件和硬件,使其更能控制操作系统在iPhone上的运行时间和操作方式。其结果是:86%的苹果移动设备运行最新的iOS操作系统,而运行最新版Android操作系统的Android设备只有11.5%。
当要打造一个新增强现实生态体系,希望第三方开发者能够为数以百万计的智能手机用户开发应用时,这就会存在重大的缺陷。Tango目前只能被少数Android设备支持,开发者也不愿意冒风险为Android系统开发应用,因为他们担心没有用户会使用这类应用。
苹果则不会遇到这种问题。如果今年秋季半数的苹果设备下载了全新的iOS
11操作系统,这意味着5亿部iPhone和iPad将会支持ARKit。(虽然目前全球运行iOS的苹果设备超过10亿部,但一些早期的设备已无法支持iOS
11)。不过对增强现实应用开发者而言,这仍然是规模庞大、几乎是现成的市场。
数字工作室Dift Collective的设计人员早已考虑过Tango,但却没有使用过它。不过自苹果在开发者大会中发布ARKit之后,Dift
Collective的开发人员已经开发出了增强现实体验,包括计算机生成的在游泳池中着陆的火箭,以及在客厅中央漂浮的3D月亮等。该公司运营主管查理-德-威尼斯(Charly
De Venezia)表示,“对我们来说,发布是前进的主要方向。”
德-威尼斯解释说,即便是谷歌后来推出的增强现实软件不需要3D传感器,数以百计不同款式的手机采用各种不同版本的Android,也意味着开发者需要额外进行大量的工作。根据谷歌自己的统计数据,截至今年7月初,全球移动设备中共搭载着7种不同的Android操作系统。因为开发者必须为众多显示屏像素不同、性能不同的设备测试和优化增强现实应用,“在向市场推动增强现实应用之前,这确实需要大量的工作,”德-威尼斯说。
截至目标,谷歌方面对此未予置评。不过这家公司正竭尽所能解决碎片化的问题。谷歌在今年5月推出了Project
Treble,希望简化厂商适配流程,以此来加速系统更新,解决碎片化问题。
增强现实和虚拟现实投资公司Super Ventures合伙人Matt
Miesnieks认为,要求Android硬件设备制造商遵守严格的摄像头标准是一道突出的障碍。不过苹果则自主设计硬件和软件,因此该公司手机中的摄像头能够匹配ARKit的特别要求。“Android无法与ARKit竞争的原因,是因为原始设备制造商需要有效的标准化它们的摄像头系统,”
Miesnieks说。
在经历了早期Tango的推广以及谷歌眼镜的困境之后,谷歌如今的增强现实项目似乎已向其它一些项目让道。谷歌眼镜早已不再向消费者出售,而且Tango还只是支持两款手机。
不过对苹果而言,ARKit已有了广泛的用户基础。彭博社此前报道称,苹果的技术人员正在开发一款智能眼镜,而且下一代iPhone可能会带有前置和后置3D传感器。在真实环境中放置虚拟物品时,3D传感器能够改进精确度。为时装产业提供增强现实工具的Avametric首席执行官阿里-布鲁姆(Ari
Bloom)认为,这一点对电子商务应用尤为重要。“如果要向消费者展示一款产品,精确度会变得尤为重要,”他说。
如果您也认同,打赏支持下作者吧打赏0人打赏
爱生活爱87更爱为VR粉们奉上VR圈最新发生的那些事儿~so想要一起聊VR就关注我吧-,-
选择支付金额1元2元5元选择支付方式金币微信支付宝
感谢您对87870的支持
正在支付...支付成功了查看订单详情&如果支付失败查看支付常见问题>&微信支付
应付金额&0.00&元
请使用微信扫码支付支付成功
【来源:hy.87870.com】
安卓网官方微信
微信号 Hiapk2013
这里有最无节操的小编和最鲜辣的资讯!
手机扫描二维码访问苹果ARKit将进驻10亿部移动设备,超越谷歌Tango
早在2014年,谷歌就已发布了AR工具,但目前它的功能只出现在少数手机当中,且未被广泛接受。与谷歌面临的情况不同,苹果能够轻松的让软件和设备进行配对,正如增强现实应用开发者阿尔珀-古勒尔(Alper Guler)所说:“当苹果的新设备拥有增强现实功能后,我的应用将很快进入到数以百万计的手机中,这是一个重要的更新,能够让我们向前推进一大步。”
据悉,今年年底,苹果将会让AR应用进驻10亿部移动设备当中。
在苹果上月发布iOS 11时,该公司推出了“ARKit ”。苹果也利用ARKit展示出该公司在增强现实领域中的野心。ARKit能够利用每一部iPhone和iPad上的摄像头,以及这些设备中的各种传感器,它将利用苹果设备优秀的能力创造出准确的增强现实体验。ARKit使用了iPhone现有的硬件,如摄像头和陀螺仪,来实现类似的效果。
谷歌的第一代增强现实软件系统Tango在今年1月展示了新一代的系统。Tango使用了各种各样的传感器,这些传感器可以与专门的处理器和摄像头一起工作,从而精确地绘制出周围区域的地图,以达到增强现实的目的。截至目前,Tango只出现在两款不同的智能手机上:联想的Phab 2 Pro和华硕的ZenFone AR,而且这款软件需要大量的硬件传感器才能维持它的正常运行。
Tango目前只能被少数Android设备支持,开发者也不愿意冒风险为Android系统开发应用,因为他们担心没有用户会使用这类应用。苹果则不会遇到这种问题。如果今年秋季半数的苹果设备下载了全新的iOS 11操作系统,这意味着5亿部iPhone和iPad将会支持ARKit。不过对增强现实应用开发者而言,这仍然是规模庞大、几乎是现成的市场。
在经历了早期Tango的推广以及谷歌眼镜的困境之后,谷歌眼镜早已不再向消费者出售,而且Tango还只是支持两款手机。很明显,谷歌如今的AR项目似乎已向其它一些项目让道。不过对苹果而言,ARKit已有了广泛的用户基础。
【文章来源:591ARVR资讯网,想了解更多ARVR资讯,可以关注我们的网站: http://www.591arvr.com ,或者加入591ARVR资讯网官方QQ群:】
The post appeared first on .
责任编辑:
声明:本文由入驻搜狐号的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
国内最高效的ARVR应用生产工具,“五分钟上手,两小时出师”不是梦!
591ARVR是国内AR/VR行业交流集散地,网罗技术、资讯、免费素材等
今日搜狐热点Android AR:ARCore 能给我们带来什么
从哪里冒出来的 ARCore
一、ARCore 的横空出世
前几天的谷歌开发人员日,技术专家 Tom Slater 连线在波兰克拉科夫的 ICE 会议中心,在YouTube 直播中荣重推出了 ARCore。
苹果今年6月份发布的 ARkit,对于开发者和用户都极度友好,它通过 iPhone 现有的摄像头与陀螺仪就能实现绝大多数 AR 体验。相比之下,Tango 还需要红外深度感知传感器的配合。ARCore的发布,普遍被认为这是谷歌对象 ARKit 的一次反击。
二、Tango 会被 Google 抛弃吗
在过去三年里,Google 一直在开发基于 Tango 技术的移动 AR 技术,联想和华硕还为其打造了适配的手机产品 Phab 2 Pro 和 ZenFone AR。
硬件方面: Tango 拥有红外深度感知传感器,确实具备比较完整的AR能力。 软件方面: 同样在 Tracking 中只依赖于单目的算法,目前的 ARCore 也确实继承了一部分Tango 的架构或者思路,甚至有部分人认为 ARCore 只是注释掉了 Tango 底层算法中深度相机那部分,事实肯定没这么简单。
所以不认为 Tango 会被放弃,只是不会做为主力的产品而转为底层的能力服务 Google 的其他业务。
而 ARCore 则是建立在这项工作之上的。但是它没有任何额外的硬件,这意味着它可以在 Android 生态系统中扩展,为现有和未来的 Android 手机带来了增强现实功能,开发者现在就可以开始尝试使用它了。
从今天开始使用Pixel和三星的 S8,运行 7.0 Nougat 和以上的数百万设备上,就可以运行 ARCore。在预览的最后,谷歌的目标是1亿台设备。谷歌与三星(Samsung)、华为(Huawei)、LG(LG)、华硕(ASUS)等制造商合作,为质量和高性能提供一致的标准。
三、和 ARKit 比划比划
ARCore 和 ARKit 两者工作原理的大致相同,都允许开发人员使用现有手机的单个摄像头来感知并跟踪手机相对于世界的位置,并能调整虚拟物体与现实世界的匹配程度。都能与 Java/OpenGL,Unity 和 Unreal 配合使用,不需要其他特制硬件就可以在手机系统上运行。
但是 ARKit 应用程序在任何具有 A9 处理器的 iOS 11 系统上都可以运行,以为着任何iPhone 6S、iPad Pro 或者更高版本都能运行。但是对于 Android 来说,由于不同厂商的手机型号会有兼容性问题和摄像头的不同,很大程度上限制的 ARCore 在 Android 上的推广。
此外 Google 还将 AR 引入 Web,认为其实“AR未来关键组成部分”。并发布了两个实验性的浏览器—以 AR 为重点的 Chrominum 浏览器版本:一个在 Android 基础上可以使用 ARCore;另一个基于 iOS,可以使用 ARKit 。这样Web开发人员使用 AR,用浏览器也能使用上 AR 功能。
另一方面,由于硬件环境和算法架构的不同,两者肯定在体验和细微的功能上会有所区别,比如图像的分辨率、刷新率,或者光源感知算法的效果以及尺度收敛的速度和精度等。基于 VIO 架构的 ARKit 更加侧重于定位本身,比较轻量,在小范围场景内使用不会有明显的飘移感。基于原 Tango 架构的 ARCore 在定位之外,会比较注重三维重建的部分,输出的 3D 点至少也是半稠密的。
整体看ARKit使用更加流畅,帧率也较高,对于用户来说体验是非常好的。ARCore 在未来的想象力会更大一些,代价是计算量也会更大一些,所以流畅性会有所欠缺,帧率也低于ARKit,不过定位的精度可能会优于 ARKit,并且具备重定位的功能。
四、ARCore 到底有什么本事
ARCore 主要做了以下三件事情,使得 ARCore 可以使虚拟的内容放置在真实的表面上,与真实世界相关联:
1. 运动跟踪 ARCore 从摄像头捕获的图片中探测视觉上不同的特征点和 IMU 传感器数据,来了解手机移动时相对于周围世界的位置,计算其位置的变化。基于 ARCore提供的摄像头的位置和方向(Pose),渲染的虚拟图像可以和摄像头获得的图像重叠,保持其准确位置,从而使得虚拟内容看起来是真实的世界的一部分。
2. 环境理解 ARCore 通过探测特征点和平面,不断提高对真实世界环境的认识。通过寻找出现在某水平面上的特征点集群,如桌子,让你的应用可以使用这些表面作为你的应用画板。ARCore 还确定每个画板的边界,这样你的应用就可以使用这些信息将虚拟对象放在平面上。但是由于 ARCore 使用特征点来检测,对于没有纹理的平面,如镜面无法正确的检测。
3. 光学评估 ARCore 探测环境光,通过光学算法叠加到虚拟画像上,使得开发者能够与周围环境相匹配的方式来点亮虚拟物体。两个世界的阴影相匹配,使得虚拟对象外观看起来更逼真。
ARCore 初体验
在正式跟带大家进入到 ARCore 开发之前,让大家体验一下 ARCore 还是很有必要的。现在就带着大家一起来感受一下来自 Google AR 实验室的几个作品,相信大家已经迫不及待的想体验和试试 ARCore 的功能了。
一、Draw And Dance 你的自己会跳舞的线条人
Draw And Dance 让你创建自己会跳舞的 AR 线条人,它对周围的音乐和声音做出响应—比如你的声音,你狗的叫声,最重要的是你的播放列表。 这个特性也可以通过把它放在扬声器上来扩展你的 Google Home,它会对任何声音做出响应。
由 Anna Fusté & Judith Amores 创建 视频地址:https://experiments.withgoogle.com/ar/draw-and-dance
二、Glass Sculptor 创建一个漂浮在你周围的玻璃塑像
Glass Sculptor 是有一个让你通过点击你的屏幕来让你的世界充满漂浮的玻璃塑像的实验。这些雕塑以美丽不可能的方式折射了它们身后的真实世界。
由 Active Theory 创建 视频地址:https://experiments.withgoogle.com/ar/glass-sculpture
三、Flight Paths 在你周围漂浮的可视化的飞行数据
Flight Paths 是一个将你的房间转换成可视化飞行路径的实验。触摸任何水平的表面,探索航班从JFK或 SFO 起飞的过程,并在你的空间飞行。
由 William Lindmeier 创建 视频地址:https://experiments.withgoogle.com/ar/flight-paths
四、Paper Cubes 使用纸质的物理材料创建AR体验
Paper Cubes 是一个 DIY AR 实验。仅仅使用一些纸,剪刀,胶水和一部手机;任何人都可以探索如何向物理世界增加数字世界。你可以使用 paper cubes 来控制一群线条人—让它们跳跃,转身和停止,你甚至可以使用 paper cubes 的 API 使得它们更聪明。
由 Anna Fusté 和 Judith Amores 创建 视频地址:https://experiments.withgoogle.com/ar/paper-cubes
五、Invisible Highway 绘制一个想象的高速公路,让一个真正的机器人巡游
Invisible Highway 是一个控制在真实世界中使用 AR 绘制物理事物的实验。简单的在你的手机上在地面上绘制一条路径,然后机器车将会沿着在你的房间地板上的这条路径。一条有定制风景的公路将沿着路径生成,让机器人在你的手机上有更多的风景。
由 Anna Fusté, Judith Amores & Jam3 创建 视频地址:https://experiments.withgoogle.com/ar/invisible-highway
ARCore 带来的新概念
一、ARCore 能做什么
在 Google 官方提供的 Demo 中,实现了这样一个功能。当我们在照相机预览的空间轻轻点击屏幕的时候,在空间中就生成一个 Android 小机器人,如下图所示:
当我们更换手机的位置或者照相机的观察角度的时候,大家从如下图中有没有发现,Andorid 小机器人所在的“位置并没有改变”,就像是真实的存在你的世界一样。
二、ARCore 是如何做到的
那么 ARCore 是如何完成这一个功能的呢?它是如何将小机器人绘制在现实的空间中?并且变换角度还能保持“位置不变”?
1. 检测特征点
首先 ARCore 系统会从照相机拍摄到的图像帧,绘制成背景。然后根据当前图像帧中的内容,检测环境中的特征点,就是下图相机预览区域中的一个个小白点。
2. 寻找平面
通过分析这些特征点,ARCore 会找到有纹理的二维平面。如果检测到有平面存在,就会绘制出白色网格平面。
3. 绘制内容
在被检测到的二维平面中,我们可以根据自己的需求绘制内容。如轻轻点击屏幕后,在摄像头和点击位置连接的射线和被检测到的平面交集,然后在交集处绘制 Android 机器人。
4. 计算位置
当我们的手机或者摄像机的观察位置变化的时候,ARCore 会根据手机和摄像头位置的变化,更新对应的机器人坐标,以保持它看起来在实际空间中的“位置不变”。
这个 Demo 实现的功能,就会看到前面 ARCore 做的三件事情的体现。比如: 运动跟踪:即根据手机和摄像头的位置变化,更新机器人坐标保持空间位置不变; 环境理解:检测空间中的特征点,并且分析是否有可绘制的平面; 光学估计:在上效果图中没有具体体现出来,实际代码逻辑中会根据当前的环境的光线来绘制小机器人的阴影,是的更真实。
三、ARCore 带来的新概念
了解了具体 ARCore 是如何实现以上功能的,我们的脑海里就有了这么几个关键点:预览图像帧、检测特征点、寻找二维平面、射线和平面交集,生成锚点、手机在空间位置和空间光线。那么这些概念在ARCore的API中又是如何体现的呢?
1. 帧(com.google.ar.core.Frame)
Frame 最直观的理解是照相机获取的一帧图像,Demo 背景渲染的画面就来自摄像头获取图像帧。
在 ARCore 中,Frame 还包含更丰富的内容,还提供了某一个时刻 AR 的状态。这些状态包括:当前帧中环境的光线,如在绘制内容的时候根据光线控制物体绘制的颜色,使得更逼真;当前 Frame 中检测到的特征点云和它的 Pose 用来绘制点云;当前 Frame 中包含的 Anchor 和检测到的 Plane 集合用于绘制内容和平面;手机设备当前的 Pose、帧获取的时间戳、AR 跟踪状态和摄像头的视图矩阵等。
2. 特征点云(com.google.ar.core.PointCloud)
Demo 在检测平面的时候,显示的一个个小白点,就是特征点云。
特征点云包含了被观察到的 3D 点和信心值的集合,还有它被 ARCore 检测到的时间戳。
3. 二维平面(com.google.ar.core.Plane)
ARCore 中所有的内容,都要依托于平面类进行渲染。如 Demo 中的 Android 机器人,只有在检测到网格的地方才能放置。
ARCore 中平面可分为水平朝上、朝下和非水平平面类型。Plane 描述了对一个真实世界二维平面的认知,如平面的中心点、平面的 x 和 z 轴方向长度,组成平面多边形的顶点。检测到的平面还分为三种状态,分别是正在跟踪,可恢复跟踪和永不恢复跟踪。如果是没有正在跟踪的平面,包含的平面信息可能不准确。
两个或者多个平面还会被被自动合并成一个父平面。如果这种情况发生,可以通过子平面找到它的父平面。
4. 交集(com.google.ar.core.HitResult/PlaneHitResult/PointCloudHitResult)
点击平面的时候,从设备点击开始手机朝向方向发出一条射线,和被检测平面的是否有交集。如果就在交集处绘制 Android 机器人。
抽象的概括,HitResult 就是射线和真实世界几何体的交集。我们可以中获取当前设备到有交集几何体的距离,交集的 Pose。如果是平面交集就是 PlaneHitResult,如果是点云就是 PoinCludHitResult。
PlaneHitResult 中可以判断交集点是否在被检测的集合范围内,是否在平面的正面。
5. 锚点(com.google.ar.core.Anchor)
每个 Android 机器人的位置,就是一个 Anchor。Anchor 位置会随着手机或者摄像头的位置更新而更新,这样才能保持“位置不变”。
锚点描述了在现实世界中一个固定的位置和方向。为了保持在物理空间的固定位置,这个位置的数值描述将会随着 ARCore 对空间的理解的改进而更新。使用 getPose() 获取这个 Anchor 的当前数值位置,这个位置每次 update() 被调用的时候都可能改变,但不会自发地改变。
6. 空间位置(com.google.ar.core.Pose)
Pose 表示从一个坐标系到另一个坐标系的不变精确的转换。在所有的 ARCore APIs 中, Pose 总是描述从物体的局部坐标系到世界坐标系的变换。也就是说,来自 ARCore API 的 Pose 可以被认为等同于 OpenGL 模型矩阵。
7. 空间光线(com.google.ar.core.LightEstimate)
LightEstimate 给我们提供了一个接口来查询当前帧的光环境。我们可以获取当前相机视图的像素强度,一个范围在(0.0,1.0)的值,0代表黑色,1代表白色。使用该光线属性绘制内容,显得更逼真。
讲完以上概念后,对照 API 才发现还有两个重要的类 Config 和 Session 被忽略了。那么 Config 和 Session 在 ARCore 中又扮演了什么角色呢?
8. 会话(com.google.ar.core.Session)
Session 是 ARCore 中重要的功能是管理AR系统的状态,处理 Session 生命周期,是ARCore API 的主要入口。
在开始使用 ARCore API 的时候,通过设置的 Config 来检查当前设备是否支持 ARCore。在 Activity 中对应的生命周期方法中需要处理 Session 的生命周期,这样 AR 系统会根据需要开始和暂停相机帧的采集,初始化和释放相关的资源。
在 AR 系统在每一帧画面的渲染过程中,我们从 Session 中获取当前相机反馈的 Frame,根据需要保存、获取和删除 Anchor,获取系统检测到的所有 Plane,设置纵横缩放比,获取投影矩阵(渲染 3D 效果)等用于渲染相关工作。
9. 配置(com.google.ar.core.Config)
在当前市面上,并不是所有的 Android 设备都支持 ARCore。那么这时候我们就要用到Config,它保存了用于配置 Session 相关设置。
我们可以针对是否开启平面检测和光线感知,获取帧时没有新图片是否阻塞等几个选项创建 Config。默认 Config 开启平面检测和光线感知,获取帧时没有新图片阻塞。 在使用ARCore 之前,使用创建的 Config,检查当前设备是否支持 ARCore,是一个比较好的做法。
责任编辑:
声明:本文由入驻搜狐号的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
今日搜狐热点}

我要回帖

更多关于 谷歌和苹果 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信