
问题:
请问我如何确定使用了正确的镜头、焦距以及传感器分辨率(相机传感器CCD像素的行数和列数)?
解答:
为了获得精确的测量,您至少需要两个像素来表达您希望检测的最小特征。请使用分辨率信息为您的应用选择合适的相机和镜头。
根据上式,能够检测到的最小特征尺寸是FOV除以传感器分辨率再乘以2(最小特征尺寸=(100/480)*2)。这样可以计算出能检测到的最小特征尺寸就是0.42mm。请注意这是一个大致的等式,没有考虑到镜头失真、具体的特征检测算法、以及是否采用亚像素精度。
计算所需的焦距。
使用下列公式:
焦距 x FOV = 传感器尺寸 x 物距
拿到相机后基本上能确定相机以毫米单位表示的焦距,如果想要得到以像素形式表示的单位则需要通过公式进行转换,这个过程中需要额外的信息是相机 CCD 尺寸。
fx = u * dx
fy = v * dy
其中 u、v 为相机内参数矩阵中对应的数值,可直接定义为1;另外,
dx = ( 1/ccd_size * 24.5 * image_x / image_y ) / image_x
dy = ( 1/ccd_size * 24.5 * image_x / image_y ) / image_y
其中 ccd_size 是相机厂商给出的 CCD 尺寸,以英寸为单位,24.5 是用来将其换算到毫米单位用的;image_x、image_y 是图像 x、y 方向的像素数。
像素焦距与毫米焦距转换
fu = ku * dpx;
fv = kv * dpy;
1) ku、kv分别为摄像机内参矩阵的x(u)、y(v)方向的像素焦距;
2) fu、fv分别为摄像机x(u)、y(v)方向的毫米焦距;
3) dpx、dpy单位为mm/pixel;
4) dpx、dpy含义分别是Effective X(Y) dimension of pixel in frame graber,成像平面水平(垂直)方向像素的有效尺寸。
2、根据CCD尺寸fCCDSize 计算 水平和垂直方向的像素间隔,间隔单位为毫米(mm)
1) dpx = dx * Ncx / Nfx;
dpy = dy;
2) dx = (1/fCCDSize * 25.4 * 4 /5)/Picture_cx;
dy = (1/fCCDSize * 25.4 * 4 /5)/Picture_cy;
注:dx、dy 分别为x(Y) dimension of Camera's sensor element (in mm);
25.4含义为:1inch英寸 = 25.4 mm毫米;
式子中的4和3分别表示CCD的x和y方向像素比,一般也就是图像的宽高比;
式子中的Picture_cx、Picture_cy一般就是图像的宽和高。
3、Ncx为X方向感光但愿的数目(厂家提供),一般等于图像的宽。
Nfx为摄像机每行采样的像素数目,及图像的X方向尺寸(像素的个数),一般也等于图像的宽。
fCCDSize为CCD尺寸,一般为二分之一,三分之一,五分之一等,摄像机参数,厂家提供。