2017-07-25 83 views
0

我有一个固定的针孔相机。我瞄准它一个平板并拍摄一张照片。我倾斜平板并拍摄图像。有没有办法将像素转换为真实世界坐标,摆脱梯形?那是什么矩阵。Keystone效果

我试着从现实世界的坐标到像素使用 https://www.mathworks.com/help/vision/ref/cameramatrix.html但它抛出不是梯形形状,而是平行四边形。我的加载的校准图像是否需要直接放在棋盘的上方?即使如此,我需要从像素转换到真实世界,所以如果这是一种有效的方法,是否有反转该4x3相机矩阵的方法?

谢谢。

+0

看起来像这样可以帮助你。 https://stackoverflow.com/questions/14514357/converting-a-2d-image-point-to-a-3d-world-point?rq=1 – Moano

回答

0

您在寻求额外的东西:移除梯形失真并不需要知道面板的3D世界位置。您只需要3x3单应矩阵将面板的“keystoned”版本映射到“flat”版本。

给定两幅图像之间至少4个像素的对应关系,可以计算单应性。在OpenCV中,您使用“findHomographyMat”来达到此目的。

+0

谢谢,但如果我的面板弯曲,那不会工作。我需要一个刚性的对象来获得正确的单应性矩阵。我认为通过一些比例因子转换到世界坐标将是最好的。只要想一想,如果可能的话现在如何 – Moano