深度解析丨秒懂nova3手机上超酷炫的AR应用及开发
此前在HUAWEI nova3发布会中,相信大家都已经感受到了AR能力带来的惊喜:
现实场景召唤圣斗士,随时随地交流合影:
点击观看视频:https://v.qq.com/x/page/m1344f6bzpj.html
三大电商平台(京东、苏宁、天猫)合作,虚拟现实投影,购物从此不用愁:
点击观看视频:https://v.qq.com/x/page/s0731v8xt4k.html
手势特效
Qmoji多重表情助你成为朋友圈红人!
看到如此炫酷的场景,是不是想知道他的原理呢,跟着联盟君往下看!
何为AR应用?
简单来说,一个AR场景的实现,是将手机中的平面画面,在AR应用的开发平台中经过修改坐标、渲染背景、叠加虚拟物体等AR技术的处理后,根据相机位置和姿态的变化,呈现不同的虚拟场景给用户。
AR应用的开发过程
关注AR行业的开发者们应当都有了解, 华为为扶持开发者开发AR应用也开放了HUAWEI AR Engine。
2018年4月12日,在P20的中国区发布会上,HUAWEI AR Engine预览版在中国发布会正式亮相。在6月23日的华为开发者大会上,华为AR/VR产品线总裁李腾跃正式发布了AR Engine 1.0,并宣布将会面向所有开发者开放。
HUAWEI AR Engine介绍
HUAWEI AR Engine垂直优化AR算法和麒麟芯片的软硬件能力,可以帮助开发者打造极致体验的AR应用。
主要功能:
运动跟踪:持续稳定跟踪手机位置和姿态相对于周围环境的变化,同时输出环境特征三维坐标信息。
平面检测:让手机可以检测到水平面和垂直面(例如地面或墙面)的大小和位置。
光照估计:让手机可以估计当前环境的光照条件,目前支持估计环境光的强度。
命中检测:让用户可以通过屏幕上的点击操作选中现实环境中的兴趣点。
华为采用AREngine + AR Core 双栈策略
HUAWEI AR Engine的优势
1、经过严格的考验
华为AR Engine经过了一些顶级的应用开发商的严格考验,比如华为和腾讯合作对AR游戏《一起来捉妖》进行调试,还有网易的AR游戏《悠梦》和京东的AR家具展示应用,都取得了不错的反响
点击观看视频:https://v.qq.com/x/page/h13442bxvd5.html
2、在华为手机的使用效果
针对华为AR Engine的特点,除了目前业界标准的AR特性之外,华为AR Engine还加入了人脸跟踪、人脸Mesh、人脸光照、三维重建、手势姿态等等,后续还会加入尺度测量和光照检测等特性。结合华为手机的GPU和NPU,可以让这种处理能力更加快速和强大。
首先是SLAM,华为AR Engine配合集合芯片和模组优化,功耗更低,能够实现在弱纹理下的快速初始化,并且具备更高的稳定性。
其次是平面检测,华为AR Engine的平面识别速度、平面精度、平面贴合度均占据优势,并且平面和实际的环境会更加贴合,而不仅仅是简单的大块的平面。
接下来是光照检测,在使用华为AR Engine开发的AR应用中,照在虚拟物体的光照会根据实际的光照有不同强度的变化,据介绍,华为AR Engine的光强识别速度很快,会在10帧之内识别当前光强度的数值,并作出调整。
第四个重要特性是华为AR Engine特有的手部识别。结合这一特性,AR应用可以实现非常有趣的手势特效,这种特性是友商的SDK现在不提供的,或者只提供类别识别,功能单一。
3、用户数量
华为AR Engine的第三大优势在于庞大的受众用户。目前,华为AR Engine已经在P20系列手机上运行,到今年10月升级Android P之后,会全系列支持采用麒麟970及以上芯片的设备,到12月,还会增加对麒麟960和其他麒麟系列的芯片的支持。而在此之后华为发布的新机型将会全面支持华为AR Engine。预计到2019年6月,支持华为AR Engine的手机数量将超过2亿台。
4、完善的接口支持
为了支持开发者们使用华为AR Engine,华为开发者联盟提供了完善的开发者的支持。如今年5月,华为AR Engine的Beta版已经在华为开发者联盟网站上线,开发者在这里可以下载SDK和技术文档,可以很方便地开发AR应用(
前言: 随着指纹识别技术的日益普遍,其在手机上的应用也得到了广泛关注.作为全球第一款Android正面按压指纹识别手机,魅族MX4 Pro所搭载的国产指纹识别系统可谓是赚足了眼球,这就是由汇顶科技提供 ... [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析 标签: webkit内核JavaScriptCore 2015-03-26 23:26 2285 ... 1. QMap深度解析 (1)QMap是一个以升序键顺序存储键值对的数据结构 ①QMap原型为 class QMap<K, T>模板 ②QMap中的键值对根据Key进行了排序 ③QMap中 ... http://m.blog.csdn.net/blog/wu010555688/24487301 本文整理了网上几位大牛的博客,详细地讲解了CNN的基础结构与核心思想,欢迎交流. [1]Deep le ... 一.OceanBase不需要高可靠服务器和高端存储 OceanBase是关系型数据库,包含内核+OceanBase云平台(OCP).与传统关系型数据库相比,最大的不同点, 是OceanBase是分布式 ... 本文转发自Jason’s Blog,原文链接 http://www.jasongj.com/2015/01/02/Kafka深度解析 背景介绍 Kafka简介 Kafka是一种分布式的,基于发布/订阅 ... [尊重原创文章出自:http://my.oschina.net/xiaohui249/blog/170013] 摘要 从整体上介绍java内存的概念.构成以及分配机制,在此基础上深度解析java中的S ... 作者:张鑫链接:https://zhuanlan.zhihu.com/p/21949663来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 接上一篇 加载模块深度解析(二 ... 在上一篇 加载模块深度解析(一)中,我们重点讨论了纹理资源的加载性能.这次,我们再来为你揭开其他主流资源的加载效率. 这是侑虎科技第53篇原创文章,欢迎转发分享,未经作者授权请勿转载.同时如果您有任何 ... spark的block管理是通过BlockTransferService定义的方法从远端获取block.将block存储到远程节点.shuffleclient生成过程就会引入blockTransfer ... 使用Office 2010 Toolkit 2.2.3激活office2010的时候,出现Failed to inject memory!错误,原因是前期使用KM激活过office 2010,然后默认 ... 1.cursor属性参考表 还有zoom-in/zoom-out 还有grab/grabbing 2.css (1)前面的基本上就 .xx { cursor: pointer; } (2)后面两个有兼 ... 在运维过程中,经常要获悉WebLogic Server的状态以便于主动的维护,本文通过weblogic WLST脚本初步设计了一下 脚本大概为2个,一是WLST的py脚本,getStates.py c ... DOM(Document Object Model)——文档对象模型 什么是DOM? Document Object Model (DOM)是HTML和XML文档的编程接口.它提供了上述文档的一种结构 ... http://zhidao.baidu.com/link?url=3tJ_i5gyYLrd7rFPk0eRYre_oxjCZvTOMOutp89LGhUgi6Ic6Ncama_GMAHnwfF73SV ... 原创文章,转载请注明出处:http://jameswxx.iteye.com/blog/2093785 一 机器部署 1.1 机器组成 1台nameserver 1台broker 异步刷盘 2 ... //-------------------------------------- // 取得当前时间,来自网上,作者不详 //------------------------------------- ... 一个应用中有两个页面使用了JSTL的c:out输出,就类似这么简单三句 <c:if test="${!empty error}"> <h2>&l ... 之前公司的ajax学习分享,做一点总结,加深记忆 什么是ajax? 异步的的js和xml,用js异步形式操作xml,工作主要是数据交互 借阅用户操作时间,减少数据请求,可以无刷新请求数据 创建一个对象 ...深度解析丨秒懂nova3手机上超酷炫的AR应用及开发的更多相关文章
随机推荐