CCD成像原理以及机器视觉中的相机选型
光源照射到物体上,不同材质和颜色的物体对光源产生不同的反射,这些由物体反射出来的光穿过镜头照射到CCD上,使CCD产生电信号。CCD控制芯片将单次成像产生的电信号收集起来统一传送到放大器(amplifier)进行放大和降噪。经过一些列的模数转换(A/D),电信号被转化为数字信号,这些值就是初始的图像数据。将初始图像数据输入到数字处理器(DSP)进行色彩校正以及白平衡等处理后编码为相机所支持的图片格式并储存到储存器上。
(模数转换,数字信号的大小和电信号的大小成正比)
(CCD成像流程)
02 相机选型,像素与精度
正如之前所说,像素是指图像传感器上CCD的个数,图像传感器一般为一个4:3的矩形,所以相机像素分为横向和纵向(X和Y方向)。一般来说,像素越多就能看到单位面积上更多的细节,而这些细节就决定了系统精度。举例说明,现在有大小为100mm*100mm的视野范围,精度要求0.1mm。则图像传感器每个方向上CCD的个数至少为100/0.1 = 1000。为了配合后续的边缘提取等图像处理,一般会要求3倍的像素,即
X方向CCD个数=3x视野范围(X方向)/精度(X方向)= 3000
Y方向CCD个数=3x视野范围(Y方向)/精度(Y方向)= 3000
可以选择像素为3000*3000以上的相机。
一些特殊场景的处理:
Case1 如果算出X,Y方向的像素差距很大,比如
X方向CCD个数=3x视野范围(X方向)/精度(X方向)= 3000
Y方向CCD个数=3x视野范围(Y方向)/精度(Y方向) = 1000
A : 4160 *3120 or B: 1280*980 ?
此时应该选A,宁可像素有较多剩余也不能选小于计算结果的相机
Case2 如果像素要求过大,比如
X方向CCD个数=3x视野范围(X方向)/精度(X方向)= 30000
Y方向CCD个数=3x视野范围(Y方向)/精度(Y方向) = 30000
此时较难找到符合要求的相机。相应的方法是使用多个相机,将视野范围分割为多块,每个相机负责采集一块视野范围,从而降低对每个相机像素的要求。
03 快门速度与移动物体拍摄
这是因为相机在成像时,物体已经移动到了下一个位置。重影将对精度和结果产生极差的影响,为了避免重影,若拍摄的是移动物体,则需要在物体移动到下一个位置前结束本次成像。相机中决定成像速度的参数是快门速度,物体移动速度越快,则对快门速度要求越高。
既然要在物体移动到下一个位置前结束成像,首先我们要算出物体在图片上移动一个像素对应在现实世界中移动的距离。这一过程被称为标定像素当量,它表示图像中一个像素点代表的实际物理尺寸,比如0.000625mm/pixel。
假设物体在现实世界中的移动速度为0.5mm/s,当物体在成像时间内在图像上移动超过1个像素则会出现重影,所以成像速度至少为0.000625*1/0.5mm=0.00125s。(路程/速度=时间)。
以上便是机器视觉中相机选型部分
下期,我们将在下一篇中给大家介绍镜头选型。