4

我的问题很简单,但我很难正确解决它。

我有一个朝向地面的相机,我知道拍摄的所有参数。因此,使用一些数学方法,我能够计算出定义相机视野的 4 个点(每个图像角落的地面坐标)。

现在,从(x, y)图像的一个像素坐标,我想知道它投影在地面上的真实坐标。

我认为单应性是要走的路,但我在这里那里读到“单应性将从相机看到的平面映射到从另一个看到的同一平面”,这是一个略有不同的问题。

请问我应该用什么?


编辑:这是一个例子。

鉴于此图像: 地面

我知道拍摄照片的相机的所有信息(高度、视角、方向),所以我可以计算形成其在地面上的视野的四个角的坐标,例如(以厘米为单位,相对于相机位置, 从左上角顺时针): (-300, 500), (300, 500), (100, 50), (-100, 50).

知道草叶图像上的坐标是(1750, 480),我怎么知道它在地面上的实际坐标呢?

4

1 回答 1

2

通过“了解相机的一切”,您的意思是您拥有相机的 FOV、相对于地平面的旋转和平移?那么它是微不足道的,对吧?

写出相机矩阵 K = [[f, 0, w/2],[0, f, h/2],[0, 0, 1]]。令 R 和 t 分别是 3x3 旋转矩阵和从相机到地面的 3x1 平移。通过给定像素 p=[u, v, 1] 的射线上的点具有相机坐标 r = inv(K) * p。用世界坐标表示为 R * r + t,与地平面相交,就完成了。

于 2017-03-08T22:40:06.197 回答