我正在开发一个关于增强现实的项目,使用一个标记(这是一个棋盘),它从网络摄像头获取图像并将2D / 3D对象插入棋盘平面(实时)。
通过使用openCV,我能够检测棋盘角落并绘制它。
我使用Direct3D渲染帧(通过使用正交投影),以便稍后我可以使用它来投影2d / 3d对象。
现在我陷入了这个阶段。我知道有像ARToolkit等库,但我想了解它背后的技术和算法。如何找到可以将3D对象映射到棋盘平面的变换矩阵?
答案 0 :(得分:2)
本文解释得很好:
小时。 Kato和M. Billinghurst。用于视频的标记跟踪和hmd校准 增强现实会议系统。增强现实,1999年。(IWAR '99)会议录。第二届IEEE和ACM国际研讨会,第85-94页, 1999. 1,2,7,9
快速解释:
找到标记的边角并从中创建2d边
使用边缘定义的平面创建标记的基矢量u1,u2 (http://twitpic.com/4fmbsu)
在两个基矢量u1,u2上使用交叉乘积来获得第三个矢量u3
使用它们来构建矩阵