《机器视觉与算法原理编程实践》第3章 硬件环境搭建-学习笔记

3.1 相机

做机器视觉项目的第一步就是图像输入,而图像输入离不开相机。

3.1.1 相机的主要参数

《机器视觉与算法原理编程实践》第3章 硬件环境搭建-学习笔记
  1.分辨率。分辨率是图像像素点数,对图像的质量有很大的影响。它是决定图像是否清晰的一个重要因素。也是我们选择工业相机时必看的一项参数。
  2.像素深度。这个参数也在一定程度上影响着图像质量的好坏。
  3.最大帧率。这个参数是相机采取传输图像速率的一个重要的衡量标准,对于一般的面阵相机一般为每秒采集的帧数,对于大多数线阵相机为每秒采集的行数,这是选择工业相机时得考虑的必不可少的一个参数
  4.曝光方式。不同的工业相机有着不同的曝光方式。线阵相机一般采用的是逐行曝光方式,面阵相机一般采用帧曝光和滚动行曝光,还有一些面阵相机才用的是场曝光。
  5.像元尺寸。像元大小和分辨率共同决定了相机的靶面的大小。而相机靶面有对图像的成像质量有着很大的影响。一般情况下,像元的尺寸越小,越难制造,但是越小的像元成像的质量也就越高。
  6.接口类型。不同的工业相机有着不同的接口类型。

3.1.2 相机的种类

  1. 按照芯片类型可以分为CCD相机、CMOS相机;
  2. 按照传感器的结构特性可以分为线阵相机、面阵相机;
    《机器视觉与算法原理编程实践》第3章 硬件环境搭建-学习笔记
  3. 按照扫描方式可以分为隔行扫描相机、逐行扫描相机;
  4. 按照分辨率大小可以分为普通分辨率相机、高分辨率相机;
  5. 按照输出信号方式可以分为模拟相机、数字相机;
  6. 按照输出色彩可以分为单色(黑白)相机、彩色相机;
  7. 按照输出信号速度可以分为普通速度相机、高速相机;
  8. 按照响应频率范围可以分为可见光(普通)相机、红外相机、紫外相机等。

3.1.3 相机的接口

(1)GIGE千兆网接口

  1. 千兆网协议稳定。
  2. 千兆网接口的工业相机,是近几年市场应用的重点。使用方便,连接到千兆网卡上,即能正常工作。
  3. 需要注意一些特殊的细节,如早期的NI的软件,可能对千兆网卡的芯片有要求,需要使用INTEL的芯片才可以正常驱动GIGE相机,而使用如Realtek的芯片网卡,就无法响应。随着技术的不断革新发展,维视图像Microvision)的MV-EM\E系列千兆网工业相机无论是什么芯片网卡,都能稳定的正常使用,不会有任何问题。
  4. 在千兆网卡的属性中,也有与1394中的Packet Size类似的巨帧。设置好此参数,可以达到更理想的效果。
  5. 传输距离远,可传输100米。
  6. 可多台同时使用,CPU占用率小。

(2)USB2.0接口

  1. USB2.0接口的工业相机,是较早应用的数字接口之一,开发周期短,成本低廉,是目前较为普通的类型,维视图像(Microvision)的于2003年推出的MV-1300系列是国内较早研发的USB接口工业相机,已面向市场十几年,反响良好。
  2. 所有电脑都配置有USB2.0接口,方便连接,不需要采集卡;缺点是其传输速率较慢,理论速度只有480Mb(60MB)。
  3. 传输速率低,糟糕的协议(Bulk-Only Transport(BOT)协议)与编码方式,数据只有30MB/S左右。
  4. 在传输过程中CPU参与管理,占用及消耗资源较大。
  5. USB2.0接口不稳定,相机通常没有坚固螺丝,因此在经常运动的设备上,可能会有松动的危险。
  6. 传输距离近,信号容易衰减。

(3)USB3.0接口

  1. USB 3.0的设计在USB 2.0的基础上新增了两组数据总线,为了保证向下兼容,USB 3.0保留了USB 2.0的一组传输总线。
  2. 在传输协议方面,USB 3.0除了支持传统的BOT协议,新增了USB Attached SCSI Protocol(USAP),可以完全发挥出5Gbps的高速带宽优势。
  3. 由于总线标准是近几年才发布,所以协议的稳定性同样让人担心。
  4. 传输距离问题,依然没有得到解决。
  5. 目前虽然市面上还没有太多的USB3.0相机出现,不过现在国内外的工业相机厂商都在积极推进,而且有些厂商已经有相关的样机出现,维视图像(Microvision)已经研发并推出MV-VDM系列USB3.0工业相机。

(4)Camera Link接口

  1. 需要单独的Camera Link接口,不便携,导致成本过高。
  2. Camera Link接口的相机,实际应用中比较少。
  3. 传输速度是目前的工业相机中较快的一种总线类型。一般用于高分辨率高速面阵相机,或者是线阵相机上。
  4. 传输距离近。

(5)1394(火线)

  1. 1394接口,在工业领域中,应用还是非常广泛的。协议、编码方式都非常不错,传输速度也比较稳定,只不过由于早期苹果的垄断,造成其没有被广泛应用。
  2. 在工业中,常用的是400Mb的1394A和800Mb的1394B接口。超过800Mb以上的也有,如3.2Gb的,但是比较少见。
  3. 1394接口,特别是1394B口,都有坚固的螺丝。
  4. 1394接口不太方便的地方是其未能普及,因此电脑上通常不包含其接口,因此需要额外的采集卡。
  5. 1394接口,需要注意一下其Packet Size数据包大小设置。Packet Size是整个1394总线的带宽。
  6. 占用CPU资源少,可多台同时使用,但由于接口的普及率不高,已慢慢被市场淘汰。

3.1.4 相机的选型

参考地址:http://www.vision263.com/2075.html

  1. 面阵相机的选型

《机器视觉与算法原理编程实践》第3章 硬件环境搭建-学习笔记已知:被检测物体大小为AB,要求能够分辨小于C,工作距为D 解答:
计算短边对应的像素数 E = B/C,相机长边和短边的像素数都要大于E;
像元尺寸 = 物体短边尺寸B / 所选相机的短边像素数;
放大倍率 = 所选相机芯片短边尺寸 / 相机短边的视野范围;
可分辨的物体精度 = 像元尺寸 / 放大倍率 (判断是否小于C);
物镜的焦距 = 工作距离 / (1+1 / 放大倍率) 单位:mm;
像面的分辨率要大于 1 / (2
0.1放大倍率) 单位:lpmm ;
以上只针对镜头的主要参数进行计算选择,其他如畸变、景深环境等,可根据实际要求进行选择。
针对速度和曝光时间的影响,物体是否有拖影
已知:确定每次检测的范围为80mm
60mm,200万像素 CCD 相机(1600
1200),相机或物体的运动速度为12m/min = 200mm/s 。
曝光时间计算:
曝光时间 < 长边视野范围 / (长边像素值 * 产品运动速度)
曝光时间 < 80 mm / (1600∗250 mm/s); 3. 曝光时间 < 0.00025s ;
总结:故曝光时间要小于 0.00025s ,图像才不会产生拖影。

  1. 线阵相机的选型

《机器视觉与算法原理编程实践》第3章 硬件环境搭建-学习笔记
•线阵相机的选择取决于传感器尺寸和线速度
•确定传感器尺寸. (瑕疵或目标物最少有3 或 4 个像素)
•例如: FOV = 12”, 最小检测尺寸= 0.005”
(FOV/检测尺寸) x (最少像素个数)
12/.005 x 3 = 7200 pixels (8K 相机 或 2个4K相机)
• 为了确定相机的线速率,需要图像像素尺寸和产品速度。
•例如: FOV = 12”, 速度 20”/秒, 8k 相机
图像像素尺寸= FOV/ 传感器尺寸
12/8192 = 0.001465”
需要的最低线速度: 20/0.001465 = 13,654
• 可以使用Piranha2 8k 18khz 相机 (或 2 Spyder3 4k 18khz 相机)

3.2 图像采集卡

《机器视觉与算法原理编程实践》第3章 硬件环境搭建-学习笔记
(1) 图像传输格式
图像采集卡需要支持系统中摄像机所采用的输出信号格式。大多数摄像机采用RS422或EIA644(LVDS)作为输出信号格式。在数字相机中,IEEE1394,USB2.0和Camera Link几种图像传输形式则得到了广泛应用。

(2) 图像格式(像素格式)
黑白图像:通常情况下,图像灰度等级可分为256级,即以8位表示。在对图像灰度有更精确要求时,可用10位、12位等来表示。
彩色图像:彩色图像可由RGB(YUV)3种色彩组合而成,根据其亮度级别的不同有8-8-8,10-10-10等格式。

(3) 传输通道数
当摄像机以较高速率拍摄高分辨率的图像时,会产生很高的输出速率,这一般需要多路信号同时输出,因此好的图像采集卡要能支持多路输入。
一般情况下,图像采集卡有1路,2路,4路,8路输入等之分。

(4) 分辨率
采集卡能支持的最大点阵反映了其分辨率的性能。一般采集卡可支持768576点阵,而性能优异的采集卡,如维视数字图像技术有限公司生产的MV2000高清黑白图像采集卡,其支持的最大点阵可达20481536,很大程度上提高了成像质量。除此之外,单行最大点数和单帧最大行数也可反映采集卡的分辨率性能。

(5) 采样频率
采样频率反映了采集卡处理图像的速度和能力。在进行高度图像采集时,需要注意采集卡的采样频率是否满足要求。目前高档采集卡的采样频率可达65MHZ。

(6) 传输速率
主流图像采集卡与主板间都采用PCI接口,其理论传输速度为132MB/S。

3.3 镜头

工业相机镜头主要参数:

1.焦距(FocalLength) 焦距是从镜头的中心点到胶平面上所形成的清晰影像之间的距离。焦距的大小决定着视角的大小,焦距数值小,视角大,所观察的范围也大;焦距数值大,视角小,观察范围小。根据焦距能否调节,可分为定焦镜头和变焦镜头两大类。

2.光圈(Iris)用F表示,以镜头焦距f和通光孔径D的比值来衡量。每个镜头上都标有最大F值,例如8mm/F1.4代表最大孔径为5.7毫米。F值越小,光圈越大,F值越大,光圈越小。

3.对应最大CCD尺寸(SensorSize) 镜头成像直径可覆盖的最大CCD芯片尺寸。主要有:1/2″、2/3″、1″和1″以上。
4.接口(Mount)镜头与相机的连接方式。常用的包括C、CS、F、V、T2、Leica、M42x1、M75x0.75等。

5.景深(Depth ofField,DOF) 景深是指在被摄物体聚焦清楚后,在物体前后一定距离内,其影像仍然清晰的范围。景深随镜头的光圈值、焦距、拍摄距离而变化。光圈越大,景深越小;光圈越小、景深越大。焦距越长,景深越小;焦距越短,景深越大。距离拍摄体越近时,景深越小;距离拍摄体越远时,景深越大。

6.分辨率(Resolution) 分辨率代表镜头记录物体细节的能力,以每毫米里面能够分辨黑白对线的数量为计量单位:“线对/毫米”(lp/mm)。分辨率越高的镜头成像越清晰。

7.工作距离(Workingdistance,WD)镜头第一个工作面到被测物体的距离。

8.视野范围(Field ofView,FOV) 相机实际拍到区域的尺寸。

9.光学放大倍数(Magnification,ß)CCD/FOV,即芯片尺寸除以视野范围。

10.数值孔径(Numerical Aperture,NA)数值孔径等于由物体与物镜间媒质的折射率n与物镜孔径角的一半(a\2)的正弦值的乘积,计算公式为N.A=n*sina/2。数值孔径与其它光学参数有着密切的关系,它与分辨率成正比,与放大率成正比。也就是说数值孔径,直接决定了镜头分辨率,数值孔径越大,分辨率越高,否则反之。

11.后背焦(Flangedistance)准确来说,后倍焦是相机的一个参数,指相机接口平面到芯片的距离。但在线扫描镜头或者大面阵相机的镜头选型时,后倍焦是一个非常重要的参数,因为它直接影响镜头的配置。不同厂家的相机,哪怕接口一样也可能有不同的后倍焦。

工业相机镜头选型:

1.选择镜头接口和最大CCD尺寸
  镜头接口只要可跟相机接口匹配安装或可通过外加转换口匹配安装就可以了;镜头可支持的最大CCD尺寸应大于等于选配相机CCD芯片尺寸。

2.选择镜头焦距
  在已知相机CCD尺寸、工作距离(WD)和视野(FOV)的情况下,可以计算出所需镜头的焦距(f)。

3.选择镜头光圈
  镜头的光圈大小决定图像的亮度,在拍摄高速运动物体、曝光时间很短的应用中,应该选用大光圈镜头,以提高图像亮度。

4.选择远心镜头
  远心镜头是为纠正传统镜头的视差而特殊设计的镜头,它可以在一定的物距范围内,使得到的图像放大倍率不会随物距的变化而变化。

3.4 光源

  必须是“均匀光”,均匀光的含义是在离光照源同一垂直距离的位置上每一点的“辐照度”或者光能是一样的。图像传感器上包含了很多个像元(典型的如2048*2048),而表征出的性能参数是代表相机的整体性能,因此,应该赋予相机上每个像元相同的光从而排除掉由于光照不同引起的性能差异。
  要想要获得均匀光,优质方法是采用积分球,将LED灯放在积分球入光口,入射光在积分球内部进行多次反射后在出光口会形成均匀光。出光口的半径应该要大于CCD的尺寸,但是又不能太大,否则无法保证出射光的均匀性。
《机器视觉与算法原理编程实践》第3章 硬件环境搭建-学习笔记
  对于黑白工业相机,应选单色光,且单色光的波长应该为CCD/CMOS的大量子效率对应的波长。这是由于我们所要表征的应该是相机的理想性能,而量子效率越大,性能会越好。
  一般来说,我们针对不同的CCD,可以选择单色的红光LED灯(LED为发光二极管的简称,对应波长625 nm),或者绿光LED灯(对应波长525 nm)彩色相机,选用白光,因为彩色相机包含了R、G、B三种颜色,光源也应该包含这三种颜色,故可以使用白光LED。此时测出来的量子效率显然是CCD全波段平均量子效率了。

  控制光源或者说光的辐照度的附件有直流稳压电源、光阑。其中,直流稳压电源用以控制给LED灯珠的电压(或电流),从而改变出射光的辐照度;而光阑位于积分球内,通过改变光阑的大小,可以改变积分球中入射光的量从而改变出射光的辐照度。实际测试中可以通过这两种方式来调控。