基于手机的增强现实 学生 : 雷 娟
报告内容包括 : 1. 增强现实的研究意义 2. 移动增强现实的研究现状 研究方法 3. 现阶段所做工作及下一阶段研究计划
1. 什么是 AR? 增强现实 (Augmented Reality) 是将现实世界和计算机生成的信息融合在一起的技术, 这些信息可以是图像, 文字和三维模型等等 2.AR 系统框架
增强现实的三个特性 : (1) 虚实结合 (2) 实时交互 (3) 显示设备位姿确定 (registration) 移动增强现实关键技术 : 移动增强现实系统应实时跟踪手机在真实场景中的位置及姿态, 并根据这些信息计算出虚拟物体在摄像机中的坐标, 实现虚拟物体画面与真实场景画面精准匹配, 即 registration( 即手机的空间位置和姿态 ) 的性能是增强现实的关键 应用前景 : 校园 博物馆导游, 购物指南, 工程设计和室内的装修设计等等
移动增强现实 (Mobile Augmented Reality, 简称 MAR) 目标是将增强现实技术有效地应用于移动设备终端, 拓展增强现实技术的应用领域 移动增强现实 (MAR) 的性能指标 : (1) 跟踪目标位置的正确性 (2) 响应时间 (3) 鲁棒性 (4) 跟踪范围等
2 研究现状 移动增强现实 (MAR) 研究主要是两类方法 : 1. 基于硬件传感器的方法 常见的有磁场 声学 光学 惯性等四类传感器跟踪技术 2. 基于视觉的方法 2.1 基于 marker 的方法 2.2 基于自然特征的方法
一. 基于传感器的增强现实方法 以惯性传感器 ( 电子指南针 ) 跟踪为例 : 采用这种方式的增强现实应用, 手机是最为合适的实现平台 因为实现简单, 目前智能手机上 GPS 摄像头和指南针的搭配已经可以初步实现增强现实 将镜头对准餐馆, 关于这个餐馆的评价会浮现在画面之上, 例如 : Layer Wiketude 等 但是存在 GPS 精度问题, 电子指南针易受周边设备 ( 铁磁器等 ) 的影响, 无线互联网的传输速率等的限制, 目前还没有产生稳定的实际应用
必须装置 : 摄像头 显示屏 GPS 电子指南针 原理 : 1) 通过 GPS 取得纬度 经度和高度信息, 通过电子指南针取得面向的方向, 确定 MAR 搜索的范围 ; 2) 指定搜索内容, 发送搜索范围的数据 ; 3) 通过无线互联, 将从网络获取的信息叠加在显示屏上
在手机上实现 GPS + Sensor 方式的原理图
二. 基于视觉的增强现实方法 原理 基于视觉的跟踪技术不需要额外的硬件设备, 通过在视频图像对检测到的特征进行分析, 得到空间点和图像点的对应关系, 计算相机的位置和姿态 分为两大类方法 : 基于标记的增强现实基于自然特征的增强现实
基于人工标记的方法 : 在真实场景中放置标识作为跟踪基准, 通过对含有标识的图像进行处理, 得到空间点与图像点之间的对应关系, 计算相机位姿, 实现相机跟踪 读取视频, 进行边缘检测, 检测得到四边形, 内部区域进行归一化, 从标识数据库中进行检索, 获取标识的空间信息 基于人工标记的方法目前应用比较多的是采用 ARtoolkit 工具包, 计算位姿的方法有多种, 其中文献 [1] 中采用的方法与张正友的平面标定法类似
[1] 董子龙, 章国锋等, 基于汉字标志的增强现实系统 这是文献 [1] 计算 R,T 的方法, 通过单应性矩阵得到的摄像机外参只是一个估计值, 往往不够精确, 且很容易受到噪声的影响, 不同的方法在进行 R,T 的优化上不同 ( 利用优化标识角点在图像平面上的重投影误差 ), 抑制噪声带来的影响, 得到准确的外参, 使得合成的虚拟物体能够保持平稳而不发生漂移或抖动
基于自然特征的跟踪方法 基于标识的跟踪技术的实现依赖于放置在真实场景中的标志物, 在很大程度上限制了增强现实的应用 基于标识的跟踪技术只适合小范围的 AR 应用, 而基于自然特征的跟踪技术可以适用户外等大范围的应用, 且与基于 marker 的跟踪相比, 在光照变化比较大和遮挡情况下更鲁棒
基本原理与基于标识的跟踪技术类似, 不过这里采用自然特征而不是人工 marker, 例如 sift harris 等 传统 AR 是在平面物体上叠加虚拟信息, 例如 Daniel Wagner 等的 Pose Tracking from Natural Features on Mobile Phones (ISMAR2008); 未来 AR 的研究方向应为三维场景下虚拟信息的叠加, 其中较有代表性的方法是 Georg Klein 等的 Parallel Tracking and Mapping on a Camera Phone (ISMAR2009)
Pose Tracking from Natural Features on Mobile Phones 这篇文章 [2] 第一个实现只使用手机内置相机的实时 ( 帧率为 20Hz) 自然特征跟踪系统, 得到相机的姿态 (6DOF) 文中使用的是有纹理的平面物体提取简化的 sift 和 ferns 特征 [2] Daniel Wagner,Pose Tracking from Natural Features on Mobile Phones
系统流程 : 初始化 : 相机正对着平面物体, 在参考帧的初始跟踪区域内提取特征点, 将这些特征点反投影到 Z=z 平面上 ( 摄像机坐标系下 ), 可以得到特征点的空间位置 ; 运行时 : 首先在新帧中提取特征点并描述, 根据前一帧相机的位姿和运动模型, 得到当前帧相机的位姿估计, 得到参考帧中的特征点在新帧中粗略的位置 ; 匹配的候选点在以该位置为中心某个半径范围内的所有特征点, 将这些候选特征点与参考帧中的特征点进行匹配, 计算新的位姿 视频
Parallel Tracking and Mapping for Small AR workspaces 是解决 SLAM( 同步制图与定位 ) 提出的一种方法 它将 SLAM 分成跟踪 (tracking) 和地图 (mapping) 建立两个并行结构, 即将原有问题分解为 structure from motion 和 motion from structure 两个问题, 跟踪的任务是在给定的地图中估计相机的位置, 制图的任务是利用跟踪得到的位置将图像上的特征点三角化得到空间坐标, 同时利用 bundle adjustment 对地图进行整体优化, 进而得到空间点和相机位置的最优估计 [3] Georg Klein 等. Parallel Tracking and Mapping for Small AR Workspaces
将 PTAM 移植到手机上所做的简化工作 使用较少的地图特征点 修改跟踪的具体操作 去除冗余的关键帧 采用更灵活的地图初始化方法 视频 [4] Georg Klein 等. Parallel Tracking and Mapping on a Camera Phone
基于 SERVER-CLIENT 架构的增强现实研究 前述方法主要是集中在手机端的工作, 为减轻手机端计算负担, 目前存在基于 server-client 的计算模式, 将部分计算工作放在服务器端, 通过无线互联网将计算结果返回, 在手机端进行增强现实效果的显示
以文献 [5] 中的方法为例, 介绍 server-client 架构的增强现实方法 原理 : 在手机端, 进行初始识别后, 通过有效地运动估计 ( 根据相邻帧之前图像像素位置移动的多少来判断 ) 决定是否需要发送新的检索数据给服务器 ; 在服务器端, 从上传的检索帧中提取局部特征 (SURF), 通过 k-d 树的方法在图像数据库中找到匹配数据 视频 : 实时识别和跟踪书和 CD 的封面 [5 ] David M.chen 等 Streaming Mobile Augmented Reality on Mobile Phones ISMAR(2009)
前一阶段所做工作 手机上的跟踪与分割 视频 方法流程 : 摄像机获取的图像 确定初始跟踪区域, 特征点检测 存在的问题 : 鲁棒性 ( 光照 快速运动 ), 漂移等 特征点描述及匹配, 计算相似变换, 在后续每一帧中确定跟踪区域
实验平台 :N900 性能参数 : CPU: 600Hz 内存 :RAM 256MB ROM 768MB 操作系统 :Maemo 5 开发工具 :Nokia for Qt 是一个跨平台的开发工具, 可以适用不同手机操作系统, 关注的是算法层面
需要解决问题 : (1) 考虑到手机计算能力 内存 电源消耗等, 手机上如何获得实时 ( 在移动手机的过程中不因跟踪不及时导致虚拟物体的显示有延迟 ) 鲁棒 ( 能够应对摄像机各种比较随意的运动和跟踪失败时及时恢复 ) 稳定 准确的跟踪 (2) 一般跟踪遇到的问题 : 光照变化 物体的快速运动 物体和场景的外观变化等等 (3) 数据传输速率, 网络延迟等等
Thanks for listening