AR(Augmented Reality), 一种实时地计算摄影机影像的位置及角度并加上相应图像的技术,换句通俗易懂的话来解释,AR 就是在屏幕上把虚拟世界套在现实世界并进行互动。
AR 技术背后相关的三大类八项技术
AR 背后的技术究竟是什么?还需要攻克哪些技术?
1、交互
与传统智能设备触摸式操作方式不同,AR 技术是要呈现一种现实之外的景象。
所以在 AR 设备之上,几乎没有物理操作按钮,因此想要得到更好的增强现实体验,交互是重中之重。
当前的交互技术包括手势操控、语音识别、体感操控等。
语音识别
目前的语音识别助手包括微软 Cortana、Google Now、苹果 Siri、亚马逊 Echo 等。
但目前识别率不高,只能作为 AR 设备的辅助操作工具,还达不到 AR 交互需求。
手势操控
目前,微软 hololens 利用手势进行交互。
戴上 HoloLens 眼镜后,可通过手指在空中点选、拖动、拉伸来控制虚拟物体、功能菜单界面。
体感技术
目前科技巨头普遍注重体感技术研究。英特尔? 实感? 技术便是其中一种。
据英特尔官方透露,该项技术 RGB 分辨率为 1080P,深度分辨率达到 VGA,功能上囊括了手势识别、3D 脸部识别、3D 增强现实、语音识别、unity 工具集、物体追踪、表情侦测、背景移除、浏览器支持等。
2、显示
除了交互技术之外,显示技术也非常重要。
动态数字光场显示技术
代表厂商:Magic Leap
光场显示技术是什么?
其全称为数字光场显示 (Dynamic Digitized Lightfield Signal) 技术。
通俗点讲,Magic Leap 的显示技术可以称为四维光场显示技术。
与传统的二维显示相比,四维光场显示最大的特点在于可以呈现不同深度的图像,用户观察近景或远景时,都可以看到真实的聚焦和失焦效果。
举一个简单的例子。
我们站在窗前,可以从窗前向外欣赏景色,也可以在窗子左右观看窗外其他角度的景色。而我们试想,将窗子换成一台显示屏呢?我们只可以看到显示屏里正面的景色,却看不到来自左右角度的景色,而光场技术恰恰是能够实现这一设想的。
全息投影技术(hologram)
全息投影技术是 1947 年英国匈牙利裔物理学家丹尼斯·盖伯发明的。目前微软 Hololens 和 Magic Leap 都运用了这项技术。全息投影是一种显示技术,需要媒介,而且得实时进行,并且可以与人交互。目前 Musion、AV Concepts 和 Hologramica 等公司已开始利用数位媒体技术,创造出拟真的一比一大小 3D 投射影像。
3、定位
交互、显示之外,定位也在 AR/VR 领域至关重要。
图像识别技术
图像识别是计算机对图像进行处理、分析和理解, 以识别各种不同模式的目标和对像的技术。
图像识别技术用以判断物体所处的位置以及 3D 坐标等信息。
不同于其他领域技术的 3D 定位,增强现实(AR)领域的物体位置,必须结合观测者的相对位置、三维立体坐标等信息进行定位。
如何利用叠加呈像算法,将相关信息叠加显示在视网膜上目前仍为技术难点。
SLAM 技术
SLAM 全称为 simultaneous localization and mapping,即时定位与地图构建技术。
目前应用领域:人工智能(无人驾驶、AR 等)。
SLAM 技术解决的是设备实时定位问题。只要是需要虚拟信息叠加到真实场景中的应用,都离不开实时定位。
据浙大博士刘浩敏介绍,SLAM 无需事先布置场景或采用昂贵的设备,不用摆放 marker,能够随时扩展 AR 使用场景,并且可以保证局部的定位精度,使虚拟物体在用户看来能摆在现实场景之中。
现阶段基于 SLAM 技术开发的代表性产品有微软 Hololens,谷歌 Project Tango。
LBS 基站定位 (Location Based Service)
LBS 是基于位置的服务,通过电信、移动运营商的无线电通讯网络 (如 GSM 网、CDMA 网) 或外部定位方式 (如 GPS) 获取移动终端用户的位置信息 (地理坐标,或大地坐标),在 GIS(Geographic Information System,地理信息系统)平台的支持下,为用户提供相应服务的一种增值业务。
目前 AR+LBS 定位技术在手机 AR 游戏应用中较为常见,《Pokemon Go》则引领了 AR 游戏的热潮。

  据 Berg Insight 预测,全球 LBS 市场规模将以 22.5%的复合年增长率从 2014 年的 103 亿欧元,增加至 2020 年的 348 亿欧元。

本文转自:52VR.com  Hololens http://www.52vr.com/article-800-1.html

一篇文章梳理完 AR 背后的八大关键性技术相关推荐

  1. 一篇文章梳理完虚拟现实相关的核心技术 | 收藏

    转载自http://www.cocoachina.com/vr/20161219/18380.html 计算机图形学 计算机图形学主要研究如何在计算机中表示图形.以及利用计算机进行图形的计算.处理和显 ...

  2. 一篇文章梳理清楚 Python 多线程与多进程

    在学习Python的过程中,有接触到多线程编程相关的知识点,先前一直都没有彻底的搞明白.今天准备花一些时间,把里面的细节尽可能的梳理清楚. 线程与进程的区别 进程(process)和线程(thread ...

  3. 一篇文章说完Flutter页面路由导航及传参

    目录 前言 动态路由 静态路由 静态路由传参 Fluro 实现路由导航与传参 前言 在 Flutter 中,App 多个页面之间的跳转是由 Navigator(导航器)来管理的,如常见的 Naviga ...

  4. 学了一个学期《数据分析方法》课程,一篇文章总结完!

    本篇博客主要是用来记录自己学习了一学期<数据分析方法>后得到的一些总结,总结各种数据分析方法的概念,思想和SAS求解及解读方面的知识点.(因为我们教的内容有点少,所以在这里我只总结了我有学 ...

  5. 一篇文章搞懂最流行的容器化技术Docker

    说在前面的话 本篇文章什么样的人适合看? 刚入门学习docker的,看完对docker会有一个通篇的认识 有经验的人,在知识大爆炸时代,技术很多,没有人能记住所有东西,适合复盘的时候看 我想说的话:这 ...

  6. 一篇文章带你了解,什么是物联网技术?

    人类自诞生以来,从未停止过对自然界的探索,我们一直在观察自然现象,记录自然规律,利用自然界传达的各种信息为人类的生活服务. 随着互联网的发展和传感器技术的进步,如果将自然界的万物都接入互联网,让传感器 ...

  7. 一篇文章搞懂 Apache Kylin 4.x 的技术架构

    前言 本文隶属于专栏<1000个问题搞定大数据技术体系>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和文献引用请见1000个问题搞定大数据技 ...

  8. java常见的gc回收器_一篇文章让你了解GC垃圾回收器

    简单了解GC垃圾回收器 了解GC之前我们首先要了解GC是要做什么的?顾名思义回收垃圾,什么是垃圾呢? GC回收的垃圾主要指的是回收堆内存中的垃圾对象. 从根对象出发,所有被引用的对象,都是存活对象 其 ...

  9. 一篇文章读懂Java类加载器

    Java类加载器算是一个老生常谈的问题,大多Java工程师也都对其中的知识点倒背如流,最近在看源码的时候发现有一些细节的地方理解还是比较模糊,正好写一篇文章梳理一下. 关于Java类加载器的知识,网上 ...

最新文章

  1. 用 GRUB 引导自己的操作系统
  2. C指针原理(28)-垃圾回收-内存泄露
  3. matlab子函数调用变量,matlab中,怎么样用function自定义函数调用另一个函数名为输入?...
  4. 20145326蔡馨熠《信息安全系统设计》第2周学习总结
  5. Node.js module.exports的用途是什么,如何使用它?
  6. 自动生成构造方法、getter、setter
  7. Elastic Search 查询语法大全
  8. 广芯微电子产品使用笔记分享
  9. 梦织未来Windows驱动编程 第03课 驱动的编程规范
  10. 结构化技术写作标准之S1000D——缘起
  11. 2022年南京大学计算机考研复试考什么|考研复试时间
  12. SDR SDRAM控制器设计
  13. debug-programe
  14. linux 如何获取最高权限 设定
  15. 如何选择和使用现货白银
  16. 补肾常见中成药辩驳------右归丸、左归丸与桂附地黄丸、六味地黄丸
  17. 树莓派HDMI转VGA线有无源
  18. php共享单车项目教学,共享单车怎么充电的
  19. FT232RL芯片USB转TTL应用
  20. .net 后端生成海报

热门文章

  1. IOS APP 国际化 程序内切换语言实现 不重新启动系统(支持项目中stroyboard 、xib 混用。完美解决方案)
  2. C++ 异常机制分析
  3. Sublime Text 3中文乱码问题的解决(最有效)
  4. vue 报错 Cannot read property ‘__ob__‘ of undefined的解决方法
  5. iOS 6上的Safari是否缓存$ .ajax结果?
  6. 如何使用Sublime Text 2重新格式化HTML代码?
  7. 如何检查变量是否是JavaScript中的数组? [重复]
  8. 检测未定义的对象属性
  9. Android开发者指南(15) —— Managing Virtual Devices
  10. 从程序员的角度深入理解MySQL