Camera 将XY平面上的点栅格从摄影机坐标转换为真实世界坐标

Camera 将XY平面上的点栅格从摄影机坐标转换为真实世界坐标,camera,computer-vision,coordinate-systems,projective-geometry,Camera,Computer Vision,Coordinate Systems,Projective Geometry,我正在写一个程序。比如说,我在一张纸上画了一排点。我固定一端,将纸张朝着屏幕弯曲,从相机的角度看,这给了我一个梯形的形状。我有每个点的(x,y)摄像机坐标。有没有一个简单的方法可以把这些(x,y)转换成现实生活中的(x,y),它应该给我一个矩形?我有相机/真实(x,y)的原始平面纸预弯曲,如果有帮助 我已经看过了。查找“单应性”。从三维空间中的平面到理想针孔相机拍摄的图像的变换是单应性的。它可以表示为3x3矩阵H,该矩阵将世界上点的三维坐标X转换为相应的齐次图像坐标X: x = H * X

我正在写一个程序。比如说,我在一张纸上画了一排点。我固定一端,将纸张朝着屏幕弯曲,从相机的角度看,这给了我一个梯形的形状。我有每个点的(x,y)摄像机坐标。有没有一个简单的方法可以把这些(x,y)转换成现实生活中的(x,y),它应该给我一个矩形?我有相机/真实(x,y)的原始平面纸预弯曲,如果有帮助

我已经看过了。

查找“单应性”。从三维空间中的平面到理想针孔相机拍摄的图像的变换是单应性的。它可以表示为3x3矩阵H,该矩阵将世界上点的三维坐标X转换为相应的齐次图像坐标X:

x =  H * X
其中X是世界点坐标的3x1矢量,X=[u,v,w]^T是齐次坐标中的图像点


如果世界点和图像点(例如矩形的角点)之间至少有4个匹配,则可以估计矩阵H的参数。有关详细信息,请查阅“DLT算法”。在OpenCV中,要使用的例程是
findHomography

有关该语言、实现和面临的问题的更多信息会有所帮助。