OpenCV-Python实战(12)——一文详解AR增强现实
0. 前言
增强现实 (Augmented Reality
, AR
) 是目前最热门的应用研究之一。增强现实的概念可以定义为将虚拟信息与真实世界巧妙融合的技术,其中真实世界的视图通过叠加的计算机生成的虚拟元素(例如,图像、视频或 3D 模型等)得到增强。为了叠加和融合数字信息(增强现实),可以使用不同类型的技术,主要包括基于位置和基于识别的方法。
1. 增强现实简介
基于位置和基于识别的增强现实是增强现实的两种主要类型,它们的关键的都在于推导出用户正在查看的位置。此信息是增强现实过程中的关键,其依赖于正确计算相机姿态估计,两种类型简介如下:
- 基于位置的增强现实依赖于通过从多个传感器(例如 GPS、陀螺仪和加速传感器等)读取数据来检测用户的位置和方向,以计算用户正在查看的位置。
- 基于识别的增强现实使用图像处理技术来推导出用户正在查看的位置。从图像中获取相机姿态需要找到环境中已知点与其对应的相机投影之间的对应关系。查找这种对应关系的方法可以分为两类:
- 基于标记的姿态估计:这种方法依赖于使用平面标记(在增强现实领域多使用基于方形标记的方法)计算相机姿态。使用方形标记的一个主要缺点是相机姿态的计算依赖于对标记四个角的准确确定。在有遮挡的情况下,标记可能非常困难,但目前已有一些基于标记检测的方法也可以很好地处理遮挡