假设我的相机俯视平面,我需要计算平面上相机图像四个角的位置。
我对相机的了解是:x,y,高度,俯仰,航向,滚动(相对于平面),加上水平和垂直视角(由相机制造商提供)。
答案 0 :(得分:2)
解决问题的关键在于考虑摄像机坐标系,摄像机坐标系由摄像机位置 c (你已经知道)和三个正交矢量定义,比如说 u (右), v (向上)和 w (远离相机)。这些可以从俯仰,航向和滚动(欧拉角)计算出来;它们是相应旋转矩阵的列(参见例如http://planning.cs.uiuc.edu/node102.html或维基百科)。确切的公式取决于您对这些角度的解释(应用变换的顺序)。
使用这些,您可以计算四条光线的方向 d r (t)= c + t d < / strong>对应于图像边角 d = w +/- tan(h / 2) u +/- tan(v / 2) v 其中v和h是垂直和水平视角。
最后,您可以计算这些光线与平面的交点(例如,参见维基百科http://en.wikipedia.org/wiki/Line-plane_intersection),以找到该平面上相机图像的角落。