我正在使用OpenCV和python .

让我们假设一个坐标系,其中x轴在右边,y在顶部,z在上面 . 我在UTM坐标(x,y)(高度(z))的给定位置有一个摄像头 . 摄像机朝北(“沿y轴”)并围绕x轴旋转α度(向下朝向地面/地面) .

我也知道焦距,像素宽度,图像形状 - 宽度,高度(以像素为单位) . 我能够计算捕获图像的真实世界边界 .

所以现在我有一个img_w次img_h像素的矩形图像 . 但是拍摄的图像具有透视变换 . 我能够确定图像的真实世界角落 . 我想这是一种非常笨拙的方式,但至少我是靠自己完成的 .

图像具有图像角0,0 w,0 w,h 0,h . 然而,由于透视变换,现实世界坐标不是矩形,并且 - 例如:

Left side: Image, right side: the real world boundary given by the image

现在我的问题是 . 给定UTM和高度的真实世界坐标,如何根据上述信息计算图像的像素坐标?