W00*_*00f 6 algorithm direct3d transformation augmented-reality
我正在开发一个关于增强现实的项目,使用一个标记(它是一个棋盘),从网络摄像头获取图像并将2D/3D对象插入棋盘平面(实时).
通过使用openCV,我能够检测到棋盘角落并绘制它.
我使用Direct3D渲染帧(通过使用正交投影),以便稍后我可以使用它来投影2d/3d对象.
现在我陷入了这个阶段.我知道有像ARToolkit等库,但我想了解它背后的技术和算法.如何找到可以将3D对象映射到棋盘平面的变换矩阵?
这篇论文很好地解释了这一点:
\n\nH.加藤和M.比林赫斯特。基于视频\增强现实会议系统的标记跟踪和头显校准。增强现实,1999。(IWAR\n\xe2\x80\x9999)论文集。第二届 IEEE 和 ACM 国际研讨会,第 85\xe2\x80\x9394 页,\n1999。1, 2, 7, 9
\n\n快速解释:
\n\n找到标记的线并从中创建二维边
使用边缘定义的平面创建标记的基向量 u1, u2\n( http://twitpic.com/4fmbsu )
对两个基向量 u1、u2 使用叉积获得第三个向量 u3
用它们来构建你的矩阵