0

我写的程序。例如,我在一张纸上画了一排点。我固定一端,将纸张向屏幕弯曲,从相机的角度给我一个梯形形状。我有每个点的(x,y)相机坐标。有一个简单的方法可以让我改变这些(X,Y)现实生活(X,Y),这应该给我一个矩形?如果有帮助,我有相机/真正(x,y)的原始平张纸预弯曲。转换网格坐标到真实世界的坐标

我已经看过3D Camera coordinates to world coordinates (change of basis?)Transforming screen coordinates from security camera to real world coordinates

+0

关于语言的一些更多的信息,实现你做,你将面临的问题帮助。 – BogdanC

回答

1

查找 “单应”。从3D空间中的飞机到由理想的针孔摄像头捕获的图像的转变是单应性。它可以表示为转换成在世界成它们相应的均匀图像的3D坐标点X的3×3矩阵H坐标x:

x = H * X 

其中X是世界点坐标的3×1向量,并且x = [u,v,w]^T是齐次坐标中的图像点。

鉴于最小的世界和图像点之间的匹配4(例如,矩形的角),则可以估算矩阵H有关详细信息的参数,查找“DLT算法”。在OpenCV中,使用的例程是findHomography

相关问题