在我之前的博文 https://blog.csdn.net/qq_45427038/article/details/99672093 里,介绍了计算机视觉系统中涉及到的4种坐标系:图像像素坐标系、图像物理坐标系、相机坐标系和世界坐标系。但是对于这些坐标系之间的转换方式介绍的比较粗略,所以今天新开一贴,专门讲讲坐标的那点事儿~
摄像机采集的数字图像在计算机内可以储存为数组,数组中的每一个元素(像素,pixel)的值即为图像点的亮度(也就是灰度值)。图像像素坐标系(pixel coordinate system)是以图像左上角为原点()建立的坐标系。像素的横坐标u与纵坐标v分别是在其图像数组中所在的列数与所在行数,一般用
表示。
图像的像素坐标系只表示像素位于数组中的列数和行数,没有物理单位。为了用物理单位表示出该像素在图像中的位置,建立图像物理坐标系(retinal coordinate system,也可以叫像平面坐标系,单位常用mm),一般用 表示。在xy坐标系中,原点
定义在摄像机光轴和图像平面的交点,成为图像的主点(principal point),该点一般位于图像的中心处,也可能因为加工原因存在偏差。
基于上述定义,我们可以得到,图像中任何一个像素在两个坐标系下坐标的对应关系为:
其中,、
表示单一像素在x轴和y轴方向上的物理长度(其单位可理解为 mm/像素),
表示u轴和v轴之间的夹角,理想情况下
。
将上述方程以齐次坐标和矩阵的形式表示,则有: