如何获取图像的世界坐标

时间:2014-05-14 13:37:28

标签: image-processing computer-vision matlab camera-calibration

使用Jean-Yves Bouget的相机校准工具箱校准相机并在纸板上打印棋盘图案后,我获得了外在和内在参数,我可以使用这些信息来查找相机坐标: Pc = R * Pw + T

之后,如何使用Pc和校准参数来获取图像的世界坐标? 提前谢谢。

修改

目标是使用校准的相机参数,使用校准的相机测量平面物体。要执行此任务,我不知道使用相机参数。换句话说,我必须使用校准参数将图像的像素坐标转换为世界坐标。我已经有了参数和新图像。我怎么能做这个转换? 提前谢谢。

2 个答案:

答案 0 :(得分:1)

我正在考虑问题,并得出了结果:

您无法查找对象大小。问题是一次性拍摄,当你不知道物体离你的相机有多远时,你就无法说出物体的大小。校准只是说明相机的图像平面(焦距)和镜头的开放角度有多远。当焦距改变时,calbriation也会改变。

但也有一些可能性:

How to get the real life size of an object from an image, when not knowing the distance between object and the camera?

所以我理解你可以近似物体的大小。

答案 1 :(得分:0)

如果(并且仅当)您可以在校准的相机坐标中表达对象的平面,则可以解决您的问题。

校准过程连同相机固有参数K一起输出每个校准图像Qwc_i = [Rwc_i | Twc_i]矩阵的坐标变换矩阵,其表示相机坐标中特定场景坐标系的位置和姿势。那个校准图像。 IIRC,在Jean-Yves工具箱中,这是连接到校准棋盘左上角的框架。

因此,如果您的平面物体与其中一个校准图像中的棋盘位于同一平面上,那么为了找到它在太空中的位置,您所要做的就是将棋盘平面与从相机中心投射的相机光线相交(0,0,0)到对象成像的像素。

如果您的物体不在其中一个平面中,您可以做的就是根据其他信息推断物体自己的飞机,如果可用,例如从已知大小和形状的特征。