深度解析丨秒懂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篇原创文章,欢迎转发分享,未经作者授权请勿转载.同时如果您有任何 ... 1. 概述 ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.名字服务.分布式同步.组服务等.ZooKeeper的目标就是封装好复杂 ... 转载:http://www.csframework.com/archive/1/arc-1-20150109-2193.htm 服务端增加WCF服务全局异常处理机制,任一WCF服务或接口方式出现异常, ... 1.Mysql 安装 MySql Connector/Net https://dev.mysql.com/downloads/connector/net/ 安装 mysql f ... 16个demo,webpack+react搭配使用首先教大家2个新技能 1.按照正常github地址情况下,你的github本身不能访问目录. 例如要访问vue-demo下的vueCpu文件夹:htt ... 过年出去玩了一圈,回来继续翻译.前两天偷懒没有翻译,只是转了两篇C# 7计划中的新features,大家还是很支持的.现在继续完善这个系列. 来源https://docs.asp.net/en/lat ... 1.创建(Dictionary)字典(无序的可重复) (1)指定类型 var a:Dictionary<String,String>=["a":"b" ... SVG 基础图形 SVG包含了以下的基础图形元素: 矩形(包括可选的圆角),使用<rect>元素创建 圆形,使用<circle>元素创建 椭圆形,使用<ellipse&g ... 随着互联网的飞速发展,前端开发越来越复杂.本文将从实际项目中遇到的问题出发,讲述模块化能解决哪些问题,以及如何使用 Sea.js 进行前端的模块化开发. 恼人的命名冲突 我们从一个简单的习惯出发.我做 ... Linux命令--mysqld_safe和mysqld区别 学习了:https://blog.csdn.net/Aaroun/article/details/78143832 mysqld_safe ... 有好些朋友给我反映,就是一个窗体中加入好几个CChartWnd之后.工作不正常.这个的确是这样,CChartWnd会接管原来窗体的消息循环,加入多个CChartWnd之后,就相当于出租房转手好几道,消 ...深度解析丨秒懂nova3手机上超酷炫的AR应用及开发的更多相关文章
随机推荐