此前在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应用(

深度解析丨秒懂nova3手机上超酷炫的AR应用及开发的更多相关文章

  1. 汇顶指纹传感器GF919深度解析

    前言: 随着指纹识别技术的日益普遍,其在手机上的应用也得到了广泛关注.作为全球第一款Android正面按压指纹识别手机,魅族MX4 Pro所搭载的国产指纹识别系统可谓是赚足了眼球,这就是由汇顶科技提供 ...

  2. [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析

    [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析 标签: webkit内核JavaScriptCore 2015-03-26 23:26 2285 ...

  3. 第37课 深度解析QMap与QHash

    1. QMap深度解析 (1)QMap是一个以升序键顺序存储键值对的数据结构 ①QMap原型为 class QMap<K, T>模板 ②QMap中的键值对根据Key进行了排序 ③QMap中 ...

  4. Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN

    http://m.blog.csdn.net/blog/wu010555688/24487301 本文整理了网上几位大牛的博客,详细地讲解了CNN的基础结构与核心思想,欢迎交流. [1]Deep le ...

  5. (转载)(收藏)OceanBase深度解析

    一.OceanBase不需要高可靠服务器和高端存储 OceanBase是关系型数据库,包含内核+OceanBase云平台(OCP).与传统关系型数据库相比,最大的不同点, 是OceanBase是分布式 ...

  6. Kafka深度解析

    本文转发自Jason’s Blog,原文链接 http://www.jasongj.com/2015/01/02/Kafka深度解析 背景介绍 Kafka简介 Kafka是一种分布式的,基于发布/订阅 ...

  7. java内存分配和String类型的深度解析

    [尊重原创文章出自:http://my.oschina.net/xiaohui249/blog/170013] 摘要 从整体上介绍java内存的概念.构成以及分配机制,在此基础上深度解析java中的S ...

  8. Unity加载模块深度解析(Shader)

    作者:张鑫链接:https://zhuanlan.zhihu.com/p/21949663来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 接上一篇 加载模块深度解析(二 ...

  9. Unity加载模块深度解析(网格篇)

    在上一篇 加载模块深度解析(一)中,我们重点讨论了纹理资源的加载性能.这次,我们再来为你揭开其他主流资源的加载效率. 这是侑虎科技第53篇原创文章,欢迎转发分享,未经作者授权请勿转载.同时如果您有任何 ...

随机推荐

  1. Scala实战高手****第2课:Scala零基础实战入门的第一堂课及如何成为Scala高手

    val声明的不可变的战略意义:1.函数式编程中要求值不可变,val天然符合这一特性:2.在分布式系统中,一般都要求值不可变,这样才能够要求分布式系统的设计和实现,同时拥有更高的效率,val声明的内容都 ...

  2. linux-更改文件属性-chattr与lsattr

    chattr命令的用法:chattr [ -RVf ] [ -v version ] [ mode ] 文件 最关键的是在[mode]部分,[mode]部分是由+-=和[ASacDdIijsTtu]这 ...

  3. 在WPF 4.5中跨线程更新集合

    WPF中一个非常强大的功能是数据绑定,我们可以把一个集合绑定到ListBox中,当集合的数据发生变更时,ListBox界面也会同步变更.本身这是一个非常美好的事情,但是美中不足的是:当把集合绑定到Li ...

  4. SQL SERVER 常用命令

    红色为常用 0.row_number() over 和数据组合sale/cnt select *,row_number() over(order by productname) as rownumbe ...

  5. Word中对象显示不完整

    选中上下文字后,右键没有段落,如果是图片的话是有的,那么我们可以点击菜单栏中段落的右下三角,在那设置单倍行距.

  6. php简单常用的API

    1.var_dump($x),查看数据类型,以及数据 var_dump($x); //string(12) "就是就是" 2.memory_get_usage()到当前这一步为止一 ...

  7. nfs mount 故障 mount.nfs: access denied by server while mounting 10.0.100.208:/backup_usb

    生产环境: 服务端centos7.2,客户端:ubuntu16.04 挂载出现的故障: root@HDCtrl100:/mnt# mount -t nfs 10.0.100.208:/backup_u ...

  8. http://www.oschina.net/question/1019034_153316

    http://www.oschina.net/question/1019034_153316 http://www.oschina.net/question/97503_212116?sort=tim ...

  9. 多个客户端连接socket

    import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; import ...

  10. 微信小程序 - 滑动显示地点信息(map)

    演示效果如下: 资源如下 marker,png index.wxml <view class="map-container"> <map id="map ...