AR增强现实 Augmented Reality
增强现实(Augmented Reality,简称 AR),是一种实时地计算摄影机影像的位置及角度并加上对应图像的技术,这样的技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。这样的技术最早于1990年提出。随着随身电子产品运算能力的提升。增强现实的用途越来越广。
AR系统具有三个突出的特点:①真实世界和虚拟世界的信息集成;②具有实时交互性;③是在三维尺度空间中增添定位虚拟物体。AR技术可广泛应用到军事、医疗、建筑、教育、project、影视、娱乐等领域。
、基于视觉的AR;2、基于GPS及方向传感器的AR。
基于视觉的AR按技术种类可分为:基于标记(Marker Based)和非基于标记 (Markerless)两大类。AR 的核心技术关键都是现实目标的三维跟踪(3D
Tracking)的问题,有时也说是六度自由度跟踪(6DOF)问题。
基于标志又能够分为:固定模板类与自己定义模板类。
固定模板:这样的模式已经比較成熟了吧,大名鼎鼎的ARToolKit/plus,ARTag,ARTag在抗遮挡性上优于ARToolkit,后来的ARToolKit/Plus採用的应该时间ARTag的方法。
自己定义模板:原理和固定模板AR大致同样。差就差在模板的检測上,主要是通过检測特征点,然后依据不同帧间对应特征点的位置变化求得[R|t]矩阵,BazAR便是这样的类型的,其它的像以下这个链接。用非常少的代码实现了这样的类型AR的demo,http://www.morethantechnical.com
... ar-in-opencv-wcode/ 。这个代码里用的是光流法进行特征点的跟踪。以下这个链接的代码,用的是surf特征,http://morethantechnical.googlecode.com/svn/trunk/opencv_ar/ ,无论怎么样除了特征不同,坐标系变换的原理都和上一篇文章类似。在OpenCV中提供了一些函数能够轻松实现坐标系变换,比方solvePnP和cvFindHomography。
基于无标志AR:代表作是PTAM/M,Mixare,将是AR未来的发展方向
跟踪技术能够大致分成两大类,一类是基于特征的跟踪(Feature Based Tracking),比方通过跟踪从输入图像中抽取的特征点,特征边缘等完毕目标的三维运动预计和跟踪。还有一类是基于模板的跟踪(Template Based Tracking)即通过匹配部分输入图像的灰度图实现跟踪。
基于特征的跟踪 Feature Based Tracking颇具代表性的工作是牛津大学project系机器人研究所的PTAM。 參见Georg Klein 留在大学的主页http://www.robots.ox.ac.uk/~gk/PTAM/ 能够下载学习源代码。
基于模板的的跟踪 Template Based Tracking颇具代表性的工作是洛桑联邦理工大学计算机视觉实验室的工作。见 Vincent Lepetit主页的系列实时跟踪的文章 http://cvlab.epfl.ch/~lepetit/ 另外也值得下载学习Vincent的合作者Stefan
Hintersser 主页 http://campar.in.tum.de/Main/StefanHinterstoisser 上的源代码,大部分是基于OpenCV的。
AR技术可广泛应用到军事、医疗、建筑、教育、project、影视、娱乐等领域。
AR增强现实 Augmented Reality的更多相关文章
- VR ( Virtual Reality )、AR(Augmented Reality)、MR(Mix Reality)和CR(Cinematic Reality)是什么鬼?
整个社会对虚拟现实的研究和开发源于上个世纪六十年代,计算机图形学.人机接口技术.图像处理与模式识别.多传感技术.语音处理与音响技术.高性能计算机系统.人工智能等领域在之后半个世纪取得了长足的发展为虚拟 ...
- AR(增强现实) 知识篇
增强现实(Augmented Reality,简称AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动.这种技术估计由1990年 ...
- 《虚拟伙伴》AR增强现实应用开发总结
一.概述 1.1选题背景 随着时代的发展,人们的生活节奏越来越快,生活质量也越来越高,但却在繁忙之中忽略或者忘记了关心自己成长时代最重要或者最正确的事情和道理.虽然现在有很多社交平台,如微博,微信,f ...
- ARVE: Augmented Reality Applications in Vehicle to Edge Networks
ARVE:车辆到边缘网中的增强现实应用 本文为SIGCOMM 2018 Workshop (Mobile Edge Communications, MECOMM)论文. 笔者翻译了该论文.由于时间仓促 ...
- 如何使用JavaScript开发AR(增强现实)移动应用 (一)
本文封面配图是去年Jerry看的一部电影<异形:契约>的剧照. 所谓AR(Augmented Reality), 即增强现实,是一种将通过计算机渲染出的虚拟图像与真实世界巧妙融合的手段,背 ...
- Augmented reality in natural scenes
Augmented reality in natural scenes (Iryna Gordon and David Lowe)2006年关于AR的研究成果 项目主页 http://www.cs.u ...
- 泡泡一分钟:Context-Aware Modelling for Augmented Reality Display Behaviour
张宁 Context-Aware Modelling for Augmented Reality Display Behaviour链接:https://pan.baidu.com/s/1RpX6kt ...
- 如何开发AR增强现实应用与产品
2016年被称为VR元年,可见火爆程度,但是我要告诉你,其实还有一种技术AR(增强现实)技术,才是下一个真正的“风口”技术.可以预见的是,未来AR应用爆发之时,必将超越VR产业规模,开拓千亿级市场空间 ...
- AR增强现实开发介绍(续)
AR增强现实开发介绍(续) ---开发基础篇 开发增强现实技术,无论是商业级应用,还是面向幼儿教育的游戏产品,都需要从了解.获取.下载增强现实插件开始.目前全世界使用量最大公认最好的增强现实插件是高通 ...
随机推荐
- Linux 下部署单机 hadoop 测试
最终运行结果展示: 格式化namenode. 开始测试 显示测试进程 浏览器查看效果展示:(虽然还不清楚是什么意思,但是能看到这个效果已经很开心了) 话不多说,进入主题: 1. 安装 VMwareSt ...
- mybatis系列-16-spring和mybatis整合
16.1 整合思路 需要spring通过单例方式管理SqlSessionFactory. spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSess ...
- 转】Eclipse在线安装SVN
原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4354199.html 感谢! 对于,搞大数据的博主我,svn是需要了解的,很多源码包! 一.SVN在线安装 下面 ...
- 关于Ext.NET Demo程序在IIS7.5部署出现"Ext未定义"的解决方案
有以下三点 1.应用程序池请用ASP.NET4.0经典模式 2.安装ASP.NET 控制面板-->程序和功能-->打开或关闭WIndows功能-->Internet信息服务--& ...
- 泡泡堂、QQ堂游戏通信架构分析
http://blog.csdn.net/sodme/article/details/468327#comments ————————————————————————————————————————— ...
- HD4505小Q系列故事——电梯里的爱情
Problem Description 细心的同事发现,小Q最近喜欢乘电梯上上下下,究其原因,也许只有小Q自己知道:在电梯里经常可以遇到他心中的女神HR. 电梯其实是个很暧昧的地方,只有在电梯里,小Q ...
- 做 fzu oj 1106 题目学到的
题目如下 这道题的意识就是给一个数问是否可以又阶乘之和构成,而难点主要是在于如果是7的话就是1!+3!,并不是单纯的从1的阶乘开始加,而是没顺序的,所以这题就得用到递归. (大概就是函数自己调用函数自 ...
- POJ 2886Who Gets the Most Candies?(线段树)
POJ 2886 题目大意是说有n个人围成一圈,游戏的起点是k,每个人持有一个数字(非编号)num,每次当前的人退出圈,下一个人是他左边的第num个(也就是说下一个退出的是k+num, k可以为负数, ...
- 汇编语言程序入门实验二:在dos下建立子目录操作
汇编语言程序入门实验二:在dos下建立子目录操作 1,背景 在读此文,并读懂前,建议读者先阅读这两篇博客 1,在dos环境下汇编语言程序设计入门(输出hello world)和masm32的下载.安装 ...
- hdoj 5400 Arithmetic Sequence
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5400 水题 #include<stdio.h> typedef long long LL; ...