(CV)三维视觉

版权声明:未经允许请勿用于商业用途,转载请注明出处:http://blog.csdn.net/mounty_fsc/ https://blog.csdn.net/mounty_fsc/article/details/51500875

本文地址:http://blog.csdn.net/mounty_fsc/article/details/51500875

了解三维视觉前,需对(CV,Math)仿射几何 (CV,Math)射影几何有一定了解。因为相机的成像过程射影变换(透视或中心射影)的过程,为一个从3维空间到2维空间的退化的射影变换

1 线性摄像机成像模型

如图,这部分涉及到四个坐标系,世界坐标系,相机坐标系,图像坐标系,数字化图像坐标系。最核心的为相机坐标系到图像坐标系,如只需要了解大概,这部分反映了核心问题。注,此处忽略了相机坐标系到图像坐标系之间成像畸变带来的影响。

1.1 世界坐标系到相机坐标系

如上图,为世界坐标系、相机坐标系、图像坐标系(下小节介绍)示意图。其中 O 点为摄像机光心(投影中心), Xc 轴和 Yc 轴与成像平面坐标系的 x 轴和 y 轴平行, Zc 轴为摄像机的光轴,和图像平面垂直。光轴与图像平面的交点为图像的主点 O1 。OO1为摄像机的焦距。某点世界坐标为 (Xw,Yw,Zw) ,相机坐标为 (Xc,Yc,Zc)

世界坐标系可以通过平移和旋转(刚体变换)与相机坐标系重合。由《仿射变换》1.6节可知,有如下等式:

XcYcZc1=(R0T3t1)XwYwZw1

1.2 相机坐标系到图像坐标系

如2.1中的图所示,以 O1 为原点, x , y 为坐标轴的坐标系为图像坐标系。详细图解如下,设点在相机坐标系的坐标为 (Xc,Yc,Zc) ,在图像坐标系坐标为 (x,y)

有几何关系可知:

x=fXcZcy=fYcZc

齐次坐标系矩阵表达如下:

Zcxy1=f000f0001000XcYcZc1

1.3 图像坐标系都数字化图像坐标系

计算机中存储的数字图像,其坐标系与前几节介绍的图像坐标系略有不同。

如图,为OpenCV中图像存储的坐标系,假设图像坐标系坐标为 (x,y) ,数字化图像坐标系的坐标为 (u,v) 。原图像坐标系原点 O1 在数字化图像坐标系中的坐标为 (u0,v0)

由于(u,v)只代表像素的列数与行数,而像素在图像中的位置并没有用物理单位表示出来,dx与dy分别表示每个像素在横轴x和纵轴y上的物理尺寸(如单位为毫米/像素),则有如下关系。

u=xdx+u0v=ydy+v0

其次坐标矩阵表示如下

uv1=1dx0001dy0u0v01xy1

注:事实上,大部分数字图像都是以OpenCV这样的格式存储的,但是也有不一样的,如原点在中心,或者坐标系不是垂直等,不同的坐标系形式,转换矩阵也不一样。

1.4 小节

最终我们得到的公式为:

参考资源:
1. http://www.th7.cn/Program/Android/201501/353476.shtml
2. http://www.360doc.com/content/14/0410/14/10724725_367760675.shtml

猜你喜欢

转载自blog.csdn.net/mounty_fsc/article/details/51500875