推荐产品
电话:400-882-2230
邮箱:2548825886@qq.com
地址:北京市石景山区杨庄东街28号
机器视觉硬件选型基础
目录
1 机器视觉基础知识
1.1 机器视觉概述
1.2 相机(camera)
1.3 镜头(lens)
1.4 图像采集卡(frame grabber)
1.5 光源(illumination)
1.6 视觉开发软件(vision SDK)
1.7 智能相机(smart camera)
2典型案例
3.1 定位&引导(Locate & Guide )
3.2几何尺寸测量(Gauging)
3.3 缺陷检测 (Flaw Inspection)
3.4 光学字符检测/识别(OCV/OCR)
1 机器视觉基础知识
1.1机器视觉的概念
机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是指通过机器视觉产品将被摄取目标转换成图像信号,传送给专用的图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信号;图像系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作。
由于机器视觉系统可以快速获取大量信息,而且易于自动处理,也易于同设计信息以及加工控制信息集成,因此,在现代自动化生产过程中,人们将机器视觉系统广泛地用于工况监视、成品检验和质量控制等领域。机器视觉系统的特点是提高生产的柔性和自动化程度。在一些不适合于人工作业的危险工作环境或人工视觉难以满足要求的场合,常用机器视觉来替代人工视觉;同时在大批量工业生产过程中,用人工视觉检查产品质量效率低且精度不高,用机器视觉检测方法可以大大提高生产效率和生产的自动化程度。而且机器视觉易于实现信息集成,是实现计算机集成制造的基础技术。
半导体行业是最先利用机器视觉技术进行检测的行业,其他行业也随之而来。作为生产机械的OEM的设计工程师,最基本的问题就是:“我是要检测这个部件还是整个这个产品”。检测可以得到高质量的产品,但是也会有这样的事实存在:检测成本或者产品质量要求并不需要这样的检测。比如说牙签,假设在一个装有500个牙签的盒子里有一两个不合格,大多数人都不会怎么担心。但是对于很多产品,假如前面的盒子里装的不是牙签,而是针头,试想不合格品可能会带来什么样的后果,所以产品功能性的检测都是不可缺少的,即使只是外观检测,要证明内在的品质也必须要做到无缺陷。因此,为了达到这个目的,许多OEM将机器视觉应用到他们将要卖给用户的系统中。机器视觉能够为整个系统增值,表现在三个方面:提高生产效率,提高制造过程的精确性,减少成本。
那么,对于一个设计工程师来说,怎么样才能知道机器视觉是否适合他的系统呢?尽管最早的最基本的机器视觉系统在20世纪70年代引入,工业就将其视为主流应用。这就导致设计工程师要考虑它是否合适他们的应用,同时要考虑利用机器视觉检测的成本与其所能带来的利润。
高复杂度产品行业,比如说半导体行业和电子行业,由于它们的复杂性和小型化,从传统上推动着机器视觉市场的发展。但是如今,所有产业,包括自动化、制药、造纸等等都依靠机器视觉系统检测产品以提高产品质量。工业专家们预言:在未来的20年到50年,机器视觉将成为横跨所有行业的通用性技术,几乎所有出产的产品都会由机器视觉系统来检测。
使用机器视觉系统有以下五个主要原因:
精确性——由于人眼有物理条件的限制,在精确性上机器有明显的优点。即使人眼依靠放大镜或显微镜来检测产品,机器仍然会更加精确,因为它的精度能够达到千分之一英寸。
重复性——机器可以以相同的方法一次一次的完成检测工作而不会感到疲倦。与此相反,人眼每次检测产品时都会有细微的不同,即使产品时完全相同的。
速度 ——机器能够更快的检测产品。特别是当检测高速运动的物体时,比如说生产线上,机器能够提高生产效率。
客观性——人眼检测还有一个致命的缺陷,就是情绪带来的主观性,检测结果会随工人心情的好坏产生变化,而机器没有喜怒哀乐,检测的结果自然非常可观可靠。
成本 ——由于机器比人快,一台自动检测机器能够承担好几个人的任务。而且机器不需要停顿、不会生病、能够连续工作,所以能够极大的提高生产效率。
一旦工程师决定使用机器视觉系统,就需要建立这个系统。其中要素包括:照明光源、工件放置(夹具)、相机、位置传感器、控制逻辑、以及图像采集卡,图像处理软件、技术支持。由于大多数厂商在这个领域都没有经验,机会来了。所以,寻找一个既了解核心技术又能为其提供系统所需产品的供应商就成为关键问题。
典型的基于PC的视觉系统通常由如图1.1.1所示的几部分组成:[参考文献:How To Plan Your PC-Based Machine Vision System]
图1.1.1 基于PC的视觉系统基本组成
①相机与镜头——这部分属于成像器件,通常的视觉系统都是由一套或者多套这样的成像系统组成,如果有多路相机,可能由图像卡切换来获取图像数据,也可能由同步控制同时获取多相机通道的数据。根据应用的需要相机可能是输出标准的单色视频(RS-170/CCIR)、复合信号(Y/C)、RGB信号,也可能是非标准的逐行扫描信号、线扫描信号、高分辨率信号等。
②光源——作为辅助成像器件,对成像质量的好坏往往能起到至关重要的作用,各种形状的LED灯、高频荧光灯、光纤卤素灯等都容易得到。
③传感器——通常以光纤开关、接近开关等的形式出现,用以判断被测对象的位置和状态,告知图像传感器进行正确的采集。
④图像采集卡——通常以插入卡的形式安装在PC中,图像采集卡的主要工作是把相机输出的图像输送给电脑主机。它将来自相机的模拟或数字信号转换成一定格式的图像数据流,同时它可以控制相机的一些参数,比如触发信号,曝光/积分时间,快门速度等。图像采集卡通常有不同的硬件结构以针对不同类型的相机,同时也有不同的总线形式,比如PCI、PCI64、Compact PCI,PC104,ISA等。
⑤PC平台——电脑是一个PC式视觉系统的核心,在这里完成图像数据的处理和绝大部分的控制逻辑,对于检测类型的应用,通常都需要较高频率的CPU,这样可以减少处理的时间。同时,为了减少工业现场电磁、振动、灰尘、温度等的干扰,必须选择工业级的电脑。
⑥视觉处理软件——机器视觉软件用来完成输入的图像数据的处理,然后通过一定的运算得出结果,这个输出的结果可能是PASS/FAIL信号、坐标位置、字符串等。常见的机器视觉软件以C/C++图像库,ActiveX控件,图形式编程环境等形式出现,可以是专用功能的(比如仅仅用于LCD检测,BGA检测,模版对准等),也可以是通用目的的(包括定位、测量、条码/字符识别、斑点检测等)。
⑦控制单元(包含I/O、运动控制、电平转化单元等)——一旦视觉软件完成图像分析(除非仅用于监控),紧接着需要和外部单元进行通信以完成对生产过程的控制。简单的控制可以直接利用部分图像采集卡自带的I/O,相对复杂的逻辑/运动控制则必须依靠附加可编程逻辑控制单元/运动控制卡来实现必要的动作。
上述的7个部分是一个基于PC式的视觉系统的基本组成,在实际的应用中针对不同的场合可能会有不同的增加或裁减。在本章余下的小结则将针对视觉领域的核心部件进行详细的介绍。
1.2 相机(Camera)
这里所说的相机主要指工业相机/摄像机,相比与民用的相机/摄像机它有高的图像稳定性、图像质量、传输能力和抗干扰能力等,因而价格也相比民用相机贵。以前的相机多是基于是显像管的。如今,随着固体成像器件的发展,市面上大多是基于CCD(Charge Coupled Device)或CMOS(Complementary Metal Oxide Semiconductor)芯片的相机。CCD是目前机器视觉最为常用的图像传感器。它集光电转换及电荷存贮、电荷转移、信号读取于一体,是典型的固体成像器件。CCD的突出特点是以电荷作为信号,而不同于其器件是以电流或者电压为信号。这类成像器件通过光电转换形成电荷包,而后在驱动脉冲的作用下转移、放大输出图像信号。典型的CCD相机由光学镜头、时序及同步信号发生器、垂直驱动器、模拟/数字信号处理电路组成。CCD作为一种功能器件,与真空管相比,具有无灼伤、无滞后、低电压工作、低功耗等优点。CMOS图像传感器的开发最早出现在20世纪70 年代初。90 年代初期,随着超大规模集成电路 (VLSI) 制造工艺技术的发展,CMOS图像传感器得到迅速发展。CMOS图像传感器将光敏元阵列、图像信号放大器、信号读取电路、模数转换电路、图像信号处理器及控制器集成在一块芯片上,还具有局部像素的编程随机访问的优点。目前,CMOS图像传感器以其良好的集成性、低功耗、高速传输和宽动态范围等特点在高分辨率和高速场合得到了广泛的应用。
相机按照芯片类型、传感器结构特性、扫描方式、分辨率大小、输出信号方式、输出色彩、输出信号速度、响应频率范围等有着不同的分类方法:按照芯片类型可以分为CCD相机、CMOS相机;按照传感器的结构特性可以分为线阵相机、面阵相机;按照扫描方式可以分为隔行扫描相机、逐行扫描相机;按照分辨率大小可以分为普通分辨率相机、高分辨率相机;按照输出信号方式可以分为模拟相机、数字相机;按照输出色彩可以分为单色(黑白)相机、彩色相机;按照输出信号速度可以分为普通速度相机、高速相机;按照响应频率范围可以分为可见光(普通)相机、红外相机、紫外相机。
在下面的章节中,将以目前应用较普遍的CCD相机为主来介绍工业相机。用于数字图像处理的CCD相机一般由两部分组成:图像获取单元和图像输出单元。
图像获取
与显像管比较,CCD芯片由独立的光敏元件构成,每一个光敏元件表示一个像素,因此能够传输二维的离散图像。而且体积、重量都比较小,具有高动态、高线性,对机械、磁场、光影响不敏感。并且由于市场的大量生产,CCD相机也相对便宜一些。CCD的突出特点是以电荷作为信号,而不同于其他大多数器件是以电流或者电压为信号。
图1.2.1为CCD实现光电转换的示意图,可以形象地喻为往井或桶内注水,因而半导体物理中用“势阱”的概念描述用来收集光激发电荷的积分区域,其中单个像素所能存储的最大光电荷量(不向其邻近像素溢出),也称为“满阱容量”。CCD的光敏单元收集光子与产生的电子数目有良好的线性关系,通常来说,2个光子产生一个电子,在输出单元50000个电子产生一个1伏的视频信号,增益为1:1。由于热效应产生附加的光子,即暗电流,就会产生不期望的噪声。因此采用CCD芯片这种非稳态结构不用照明,普通的CCD即使在室温的条件下一分钟内就可完全充满电子,而且大约温度每增加7摄氏度,暗电流就会加倍,这就是说芯片的温度升高,噪声就会急剧增加。因此,为了控制暗电流,控制一个比较短的曝光时间非常重要。
图1.2.1 CCD光电转化示意图
传统控制曝光时间的方法是利用机械快门,而如今CCD芯片多采用电子曝光控制,即电子快门。在手工操作模式,用户通常可以选择比如1/50、1/100、1/500秒的一些离散的快门速度(积分时间);而在自动电子快门模式快门速度能够根据入射光的强度自动调整。如果光的强度太弱,则可以通过长积分时间模式或控制增益的方式来增强弱的CCD信号。
当完成对光敏元区域的扫描后,CCD将光电荷从光敏区域转移至屏蔽存储区域。而后,光电荷被按顺序转移至读出寄存器,电荷耦合器件(CCD)正是由这种电荷耦合式的转移方式,通过在按一定的时序在电极上施加高低电平,可使光电荷在相邻的势阱间进行转移,图1.2.2所示为目前广泛采用的三相电极传送方式。
图1.2.2 三相CCD中光电荷的转移
CCD的光敏区域有一维线阵排列和二维面阵排列两种,与其对应的就是线阵(线扫描)相机和面阵(面扫描)相机。图1.2.3所示就是两种较典型的线阵CCD,通常是由512、1024、2048、4096等个像敏元呈一维排列。光敏阵列与转移区——移位寄存器是分开的,移位寄存器被遮挡。在图1.2.3中左侧所示的单通道线阵CCD中,当转移脉冲到来时,线阵光敏阵列势阱中的信号电荷并行转移到同一个CCD移位寄存器中,最后在时钟脉冲的作用下一位位地移出器件,形成视频脉冲信号,而在图1.2.3中左侧所示的双通道线阵CCD中,当转移脉冲到来时,线阵光敏阵列势阱中的奇偶位的信号电荷分别并行转移到不同CCD移位寄存器中,最后再合并为视频信号输出,这样可以提高传输速度,目前不仅有双通道,甚至有四通道、八通道的线阵相机以加速线阵CCD的传输速度。
图1.2.3 线阵CCD结构(左为单沟道、右为双沟道)
而对于面阵CCD相机,顾名思义其像元呈二维阵列分布,图1.2.4所示为三种典型的面阵CCD结构,最左边为桢转移型面阵CCD,它由成像区、暂存区和水平读出寄存器三部分构成,它的光存储区域与光敏像素区域分开,因此能够有较大的填充因子和较高的势阱容量模传递函数MTF较高的优点,帧转移型CCD的缺点就是快门速度不快,并且制造的体积要稍大,就增加了成本;中间的为全帧型面阵CCD,当积分完成后通过快门屏蔽入射光然后开始进行行转移,他可以具有比较大的光敏区域比例;最右边为行间转移型CCD,每列像敏单元的旁边都有一个垂直移位寄存器,行间转移CCD只需要约1uS的时间就可完成光电荷至垂直移位寄存器的转移,从而很好地解决了帧转移CCD因转移速度不够快而带来的图像模糊问题。同时,由于行间转移CCD的垂直移位寄存器所占的面积均被遮蔽,所以其对输入光的利用率以及像素密度相对较低。
图1.2.4 面阵CCD结构(左为桢转移、中为全桢转移、右为行间转移)
CCD芯片总会给出一些基本参数或特性,您想知道某种CCD相机是否能够满足您的应用,那么这些参数或特性正是您所要关心的。
CCD芯片的基本参数之一就是分辨率,单位为有效像素。以面阵相机为例,支持CCIR制式的相机能够提供768×576有效像素的图像输出,支持RS-170(EIA)制式的相机能够提供640×480有效像素的图像输出,比较常见的百万像素相机可以提供1280 × 1024有效像素。
有效像素区域的大小,即CCD芯片尺寸同样是一个重要的参数。图1.2.5所示的一些常见面阵CCD芯片尺寸,通常都会以英寸表示,图中分别对应了其实际尺寸。
图1.2.5 常见面阵CCD芯片尺寸
频谱响应特性是另外一个重要的光学参数。图1.2.6中所示的实线是典型CCD芯片的频谱响应。通常,为了使CCD与人眼的频谱相似(即使CCD获取的照片更有真实感)或者排除温度等对CCD相机的影响,相机中会提供一个红外滤波片来实现,如图中点划线所示。假如有一些应用需要对近红外光(NIR)有高的频谱响应来达到图像效果,在这种情况下,就需要一个峰值大约750纳米的CCD芯片,这种芯片还可以通过标准CCD芯片技术达到,因而价格相比还不是很贵。但标准CCD技术对紫外光(UV)以及中(MIR)、远红外光(FIR)是不适用的,这些区域需要特殊的CCD器件或者完全不同的技术,因而价格也贵很多。
图1.2.6 常见CCD芯片频谱响应曲线
CCD芯片本身没有区分颜色的能力,比如说,不同的波长就产生不同的光子能量。因此,要通过CCD获得颜色信息,就必须获取混合光中三基色(RGB)分量。彩色CCD芯片获取RGB信息通常有两种方法:最常见的也是相对简单就是在CCD相邻像素上依次加上红、绿、蓝色的滤波片(mosaic filters),在一个芯片上将彩色分量分离,这样我们就得到与我们眼睛看到的相似的红绿蓝相邻像素,使用这种技术的相机比较便宜,而且不需要特殊的镜头,缺点就是分辨率比较低。而获取高分辨率的彩色图像则多利用三CCD技术,利用棱镜将进入相机的光分成三种颜色,三种颜色的光分别映射到另外三个独立的CCD芯片,利用这种技术的相机能够保证高的质量,不过价格也较高,另外,需要使用特殊的镜头。
如果您的应用有高分辨率图像的需要,通常的标准视频制式的工业相机可能不能获得。您可以通过采用高分辨率的面阵CCD相机,也可以采用线阵CCD相机,通常采用线阵CCD不仅价格相对便宜,也容易获取高一些的速度。
图像输出
图像输出单元产生一个适合后续图像处理的视频信号。在标准的相机中,获取的图像将转换成遵循某一种国际视频标准的视频信号:在标准相机中,获取的图像转换成一个遵循国际标准之一的视频信号,对欧洲为CCIR标准,对美国为EIA制定的RS-170标准。基于CCIR标准,有两个彩色标准:PAL制式和SECAM制式。对RS-170标准的彩色的延展就是RS-170a,即NTSC标准。非标准相机的输出单元要遵循一定的规则,与特定的形式无关,一般是基于RS-422标准的。从技术角度考虑,由于避免了视频标准的限制,数字相机是比较理想的选择;而从经济的角度考虑,这些标准太重要了而不可能完全摆脱它们。下图是标准制式相机的原理图,CCD完成积分控制后奇数行和偶数行按先后依次转移到输出寄存器(通常将所有奇数行或所有偶数行组成的图像称为一场(field),而两场合并后才称为一桢(frame),然后通过相机内部的同步产生器在每行像素前插入行同步信号(HD),在经过若干行达到一个场时插入场同步信号(VD)。
图1.2.7 标准制式相机的原理图
相机的一个重要的非标准选项就是像素时钟输出,来自CCD芯片的像素传输的内部时钟可以适用于后续的图像处理单元,这种像素数据的精确传输是对精确测量的预获取,此外很多相机也能接受外部的时钟输入来进行外同步。另一种对外部事件的响应是用外部事件来触发相机,在测量运动物体的时候这是非常重要的,比如由光电开关触发相机。
隔行扫描是多年前作为电视广播标准的一部分而发展起来的,它主要发展是为了在有效的信号带宽内改进运动影像,目前的视频标准依然依赖于早期的显像管相机和显示屏技术,在如今CCD芯片和纯平显示的年代,这些只会给机器视觉应用带来麻烦,却依然大量应用似乎很奇怪了,前面已经提到这还是由于必须考虑价格因素。对于显像管,必须控制扫描显像管光敏感区域电子流和在屏幕上产生的图像。扫描从左上角开始,到第一行的末尾,折回到第三行继续扫描。这种方式,第一次扫描一场的奇数行,第二次扫描一场的偶数行,重叠起来就降低了电视屏幕的闪烁。一次完整的扫描(一帧)对于CCIR标准由625线组成,持续1/25秒。一个RS-170帧由525线组成,持续1/30秒。下图描述了相机输出单元的一些特性、参数及选项。
在折回的时间中,水平同步脉冲加入到视频信号中,表示另一行的开始。同步信号之前和之后的多余时间用于给BLACK提供一个参考。信号的这些部分称为前向通路和后向通路。垂直同步脉冲触发新的一场的开始。垂直同步脉冲是一个由对CCIR标准多于50线的,对EIA标准多于40线的脉冲序列。因此,这些线不是用于标准视频信号的,标准视频信号应该是对CCIR标准575线,对EIA标准485线。
标准视频信号传输的同步,是基于水平和垂直同步脉冲的。那单个像素呢?按照CCIR标准和EIA标准,图像的宽高比例必须是4:3。因此,对于CCIR标准为767像素/线,对于EIA标准为647像素/线。对于CCIR标准,在52ms内扫描767个像素,需要像素时钟频率为14.75MHz,而对于EIA标准,在52.59ms内扫描647个像素,需要像素时钟频率为12.3MHz。
图 1.2.8 视频信号格式与相关电压
对于人类视觉系统,单个像素的意义不大。电视的分辨率是以不同的方式测量的:对于水平分辨率最高的要求就是,当CCIR相机指向383.5垂直的黑白线对的时候,一行的邻近像素必须分别获取并显示最大和最小灰度级。尽管这对应一个矩形信号,但人类视觉系统分辨模糊的从黑到白的灰度转变是没有问题的,因此被看作是一个频率为7.375MHz的正弦信号。对于EIA标准相应的计算就是一个频率为6.15 MHz的正弦信号。那么,任一视频分量的带宽就分别为7.375MHz和6.15 MHz。然而,视频标准允许低的带宽,就导致低的水平分辨率。因此相机或监视器能获取和显示的垂直线的个数就是一个质量评估指标。这一参数是来计算单个垂直的黑线和白线,而不是计算线对。简单的监视系统需要300条TV线。高分辨率系统提供550或更多的TV线。在实际中,这种测量并没有精确的使用。因此,一个有550条TV线的相机可能会比另一个号称600条TV线的相机有更好的性能。
显像管屏幕的显示特性是非线性的,强调图像亮的和暗的灰度级。为了补偿这个影响,大多数相机提供r校正(伽马校正)。如果r=1,输出单元以线性模式工作,r=0.45表明输出单元强调中灰度级。另外,一些相机提供一个r=0.25的r校正来增强中灰度级。r校正用于监控系统会很有用,而在测量中作用稍小一些。
如在前一节所述,电子快门用于控制CCD芯片的曝光时间。如果物体照明不好,电子快门速度就需要慢些,以增加曝光时间。视频标准规定最小的快门速度为对于CCIR标准1/50秒,对于EIA标准1/60秒。如果物体要运动,最小的快门速度会高一些,结果,要求的1V的视频信号幅度就可能达不到。这种情况下,就需要利用增益控制来放大信号。最大增益通常为1:10或1:20。如果这还不够,就要运用长时间的积分。这些放大器可以是自动运行的也可以是手动运行的。在自动增益控制(AGC)模式中,放大器调整自己来输出幅度为1V的标准视频信号。这对监控系统适用但对测量就不大适用。由于这里我们通常用控制照明工作,最好将相机调到手动增益控制模式,那么相机操作器就会根据指定条件设置精确的增益。
如果图像采集卡从一个输入视频信号切换到另一个输入视频信号,采集卡通常需要获得稳定的图像需要几桢的时间(这段时间用于从复合视频信号中提取同步头)。而且这一影响经常被低估了,这是很烦人的。在某些应用场合,需要多个相机同时拍摄同一工件的不同工位或不同视角,这样就希望所有的视频输入信号是垂直同步的,这一过程的术语就是外部同步或同步锁相,这样就可以避免相机间捕获图像的时间差异。图1.2.9所示为三种相机间的同步方法。最简单的(图1.2.9a)是靠建立一个同步链,从一个相机的视频输出用于下一个相机的同步输入,显然,相机之间的信号迟延可能会导致一些问题。如果同步必须是很精确的,就应该使用一个外部同步发生器如图1.2.9b所示。通常一些相机接受水平同步和垂直同步为TTL电平而且很多的中高端图像采集卡都可以提供,因而用采集卡的同步输出同样能够进行相机间的同步,但在使用采集卡的同步输出时需要注意的是它的负载驱动能力,大部分图像采集卡在同时驱动三个以上相机同步时需要增加中继或功率放大器。
图 1.2.9 相机同步方式(从左向右依次为a,b,c)
对于区分一个CCD芯片的系统和三个CCD芯片的系统获取的彩色图像,有三个不同的系统可用于视频信号输出。这些输出的术语为:复合, Y/C (also know as S-VHS) and RGB。从名字就可以看出,一个复合信号包含亮度信息和彩色信息。亮度信号与标准CCIR和RS-170亮度信号是相等的,只是简单的叠加了彩色信号。彩色信号是根据PAL标准、SECAM标准、以及NTSC标准的一个彩色分量的复杂组成。显然,这样一个信号的组合会导致信号误差,可能会引起图像失真。因此,将亮度信号(Y信号)和彩色信号(C信号)分离是一个好想法。这种亮度/彩色相机是在性能和价格之间比较满意的折中。对于高性能系统,强烈建议采取RGB方法。RGB方法避免了彩色信号的组合,而是对三原色的每一种颜色使用各自的标准亮度信号。三个芯片的CCD相机通常都有RGB输出,因为破坏这种带有不充分的复合信号或者亮度/彩色输出信号的相机的质量没有任何意义。高质量的单芯片CCD相机提供所有的三路输出,中等质量相机丢弃RGB输出,单彩色相机仅仅使用复合信号。
像素时钟(Pixel Clock)
像素时钟是用以驱动CCD上的移位寄存器的高速时钟,它将输入的模拟视频信号采样为单个的像素值。像素时钟输出可以由相机或图像采集卡提供。有可能使用图像采集卡的锁相环PLL(Phase-Locked Loop)来产生像素时钟,PLL使用一个参考电平,这个参考电平可以来自采集卡的板内晶振,对于周期的脉冲电平也可以来自外部的行同步信号。
通常用像素抖动(Pixel Jitter)来衡量像素时钟的准确性,它测量的是像素时钟的脉冲上升沿相对于水平同步信号下降沿的偏差,其以单位纳秒为单位。像素抖动是模拟/数码转换过程中不可避免的,它可能是相机(其内部的像素时钟或水平同步信号) 引入的,也可能是图像采集卡的锁相环(其可以引入附加的像素抖动)引入的。作为像素抖动的结果,输入的视频信号可能会被提前或滞后采集了,这样就会导致数字化的像素与相机采样的像素不一致,对于连续的视频就会产生闪烁现象。从图像采集卡的锁相环产生的基于稳定的参考电平的像素时钟可以将像素抖动降低在一个很小的范围内。
如果像素时钟足够精确,视频信号应该在图1.2.10所示的“P”处抽样并通过参考电平完成灰度转化,但由于受到像素抖动的影响,视频信号可能被抽样过早或过晚(图中设定像素抖动引起的误差为±x ns),这样就导致对应的灰度值与理想值相对低了或高了。通常对图像质量要求很高(比如用于高精度的测量)的图像采集卡像素抖动都控制在±3 ns之内。
图 1.2.10 像素抖动
正如前面所讨论的,视频信号的同步无一例外的都是基于水平和垂直同步脉冲的。不过,视频标准却没有要求精确的像素(pixel-wise)同步。因此,CCD芯片的像素映射到计算机时受到像素抖动的影响就不是很精确。虽然可以通过预映射误差,然后编制程序对像素抖动引起的误差进行标定或补偿,然而高精度的测量以及亚像素算法要求精确的像素描述,因此这种解决办法并不能被接受。图1.2.11表明了对这一问题更好的硬件解决方法。图像采集卡必须控制基于像素时钟的视频输入信号的抽样率。以测量为目的的图像采集卡将使用外部像素时钟代替内部时钟成为可能。在一些以测量为目的的应用,图像采集卡输出像素时钟来影响给图像采集卡。因此每一个像素的传输都有严格的控制。最开始采集卡将提供一个像素时钟信号给相机,接着相机将产生一个新的像素时钟信号并且与视频信号一起反溃给采集卡,这样才可以确保输入的为同相视频信号且通过像素时钟来数字化(或称采样)视频信号,相位不准可能来自相机内部的电路迟延。
图 1.2.11 减小像素抖动的方法
逐行扫描(Progressive Scan)
大多数显示器和相机都是以隔行方式扫描,但实际上人眼看来仍然像一个平滑的图像,相机一般先获取图像的奇数行,对于CCIR标准,它在1/50秒后再获取偶数行,而对于EIA标准,在1/60秒后再获取偶数行。在机器视觉应用中,物体通常移动很快。当利用隔行扫描相机时,在两场之间可能物体都有移动,结果就会是一副模糊的图像,就像是两次曝光或者是在垂直边缘有梳状效应。为了解决这种影响,可以将隔行扫描相机设成只扫描一个场,这样垂直分辨率将会减半,而帧采集速率将会提高一倍,相机的这种操作被称为场模式,或者非隔行输出,对许多机器视觉应用都很有用,场模式还能够提供敏感度加倍的好处,由垂直像素BINNING得到(像素BINNING是指CCD传感器的一个特殊读出模式,传感器将2个或多个像素绑定到一起锁定,从多个像素积累的电荷求和),场模式虽然可以提高帧速度、敏感性以及信噪比,但会降低分辨率,在要求对快速运动的物体完全垂直分辨率的应用中,应该使用逐行扫描相机。
触发机制(Trigger Mechanisms)
假设流动生产线上的产品必须由视觉系统来检测。单个产品的图像必须在它被置于在相机前某个确定的时间被取得,视觉系统对外部事件的及时响应即为触发,触发可以通过软件实现也可以通过硬件实现。一般情况下,当一个事件发生时它触发采集卡并同时触发相机的重启信号。另外,同时触发频闪器也可以帮助冻结运动物体的图像。
触发后相机总会有个响应时间,这个时间对于高速运动的物体最好能够精确控制,普通的面阵相机(没有异步触发)总是等一帧扫描完,对于N制式的相机来说这个触发响应时间就会至少有0~33ms之间的不确定时间,如果采集卡寻找同步点的时间再长一点,这个不确定的时间长度又增加了,这段时间内物体有可能已经运动出了视场区域。为了加快相机的响应速度,就出现了异步重置(Asynchronous)功能,靠采集卡给相机施加外部时钟。当相机被异步重置,除了像素时钟,HD和VD(或相机写允许脉冲WEN)信号都被重置了。采集卡一般都是被动的带着相机的时钟信号进行驱动,相机的HD和VD(或WEN)信号分别控制采集卡的水平扫描时钟和桢扫描时钟,而相机的像素时钟则用以控制采集卡的A/D转换。而异步重置又分为行异步方式(相机被触发后在下一个HD信号立刻回起点进行扫描)和像素异步方式(CCD在触发后的下一个像素时钟就立刻从头扫描,这样可以更加迅速响应来获取触发瞬间的图像)。如图 1.2.12为外部信号触发(external trigger)相机异步重置的信号信连接以及时序图。
理论上触发原则是很简单描述的,但实际上可能有些麻烦。由于触发机制是非标准的,每一个相机和采集卡都有它自己的特性,触发图像处理系统的成功实现需要相关方面的很多知识。
图 1.2.12 触发机制
长时间积分(Long-time integration)
如果最长的积分时间以及最大的增益并不能满足低光照条件的要求,就必须延长积分时间。但显然,噪声的影响会随着积分时间的延长而加强。在室温条件下,积分时间不能够超过10秒。如果图像是绝对静止的,连续拍摄的几副图像相加就能够减少噪声。第二个解决方法就是冷却CCD芯片,从噪声产生一开始就将之减小。通过空气冷却的办法,积分时间可以延长到15分钟;通过水冷却的办法,积分时间可以延长到3个小时。由于长时间的积分并不适应视频标准,因此,这种相机通常都有一个缓存来存储当前图像,直到新一个积分完成。
小结
★ 1个CCD像素将2个光子(400-1000纳米)转变成1个电子,50000个电子产生一个1伏的视频信号。 ★ 由于暗电流的影响,在室温条件下,积分时间不能够超过10秒。 ★ 参数TV lines电视线数来源于电视技术,它描述了相机能够获取、显示器能够显示的垂直黑白线的最大数目。 ★ 若使用三芯片的CCD相机,建议用相机制造商建议的镜头,使用低质量的镜头会降低图像质量。 ★ 绝大多数相机都是间隔式转移的,即隔行扫描(interlace) ,当用来拍摄运动物体时,就会出现梳状效应。为消除这种效应,可以只采集一半的图像(只使用奇数行或偶数行),如果要求完全的分辨率,必须利用逐行扫描相机。 ★ 亚像素算法要求图像本生足够精确。(低的像素抖动或称pixel-wise图像转移)。 ★ 放大率分为物理放大率和系统放大率。物理放大率指传感器感光面积(CCD Size)与视野(FOV)的比值,整个参数基本取决于镜头;系统放大率指最后显示环节上目标的尺寸与实际目标尺寸的比值。系统放大率取决于物理放大率和显示系统的阐述。对于自动测量和检测系统而言,物理放大率具有关键的意义。系统放大率仅仅对于需要人机交互进行检测的系统有意义。 ★ 相机触发机制其基本原理很简单,但实际上各个制造商的相机都不同,在这个领域没有标准,因而接线必须参考相机的说明手册。 |
FAQ:
(1) 问:应该怎样选择相机或者说是选择相机应该注意哪些?
答: 以上说的多是相机的原理和一些关键技术,对于接触机器视觉技术者熟悉这些可能需要一个过程,但选择相机却往往刻不容缓的摆在面前。因此,选择相机最简单的方法是您将您检测或测量的要求告知专业视觉系统集成商,他们应该能帮到您。通常您首先需要知道系统精度要求和相机分辨率,可以通过公式:X方向系统精度(X方向像素值)=视野范围(X方向)/CCD芯片像素数量( X方向); Y方向系统精度(Y方向像素值)=视野范围(Y方向)/CCD 芯片像素数量( Y方向)来获得。当然理论像素值的得出,要由系统精度及亚像素方法综合考虑;接着您要知道系统速度要求与相机成像速度,系统单次运行速度=系统成像(包括传输)速度+系统检测速度,虽然系统成像(包括传输)速度可以根据相机异步触发功能、快门速度等进行理论计算,最好的方法还是通过软件进行实际测试;再接着您要将相机与图像采集卡一并考虑,因为这涉及到两者的匹配:a,视频信号的匹配。对于黑白模拟信号相机来说有两种格式,CCIR和RS170(EIA),通常采集卡都同时支持这两种相机;b, 分辨率的匹配。每款板卡都只支持某一分辨率范围内的相机;c,特殊功能的匹配。如要是用相机的特殊功能,先确定所用板卡是否支持此功能,比如,要多部相机同时拍照,这个采集卡就必须支持多通道,如果相机是逐行扫描的,那么采集卡就必须支持逐行扫描;d,接口的匹配。确定相机与板卡的接口是否相匹配。如CameraLink、Firewire1394等。最后才应该是价格的比较。
(2) 问:什么是亚像素?
答:一般用分辨率这个名词来描述CCD芯片上的行列数。实际上,CCD芯片是一个抽样器件,它的最大抽样率由抽样定律决定,即抽样率必须高于奈奎斯特频率的2倍。抽样理论在一维时间信号中得到了广泛的使用,但并没有被完全的应用到CCD芯片的信号采样中。能够通过亚像素算术来提高CCD芯片的抽样率,理论就是把一个像素看作是由亚像素组成的子图像。通常,我们能够处理亚分辨率为10×10亚像素的图像。一个典型的例子就是决定一个斑点的重心(图 1.2.13a)。由于积分特性,原始像素位置误差与其本身输出相同。假设一个灰度级的一维图像如图 1.2.13b所示,如果灰度值的转折点刚好出现在像素的边缘,那么容易确切得知道轮廓点的位置。但实际的转折点可能不在一个理想的级别,我们不能够准确得知道芯片上转折点剪切像素的位置。另外更重要的,模糊的灰度级允许灰度级差值,因此我们就能够决定亚像素的位置作为灰度级的功能。不管怎样,只有将CCD芯片内的模拟图像尽可能精确地描绘在图像处理单元的内存中,亚像素算法才能是精确的。就像以前章节中讨论的,这不是对标准视频相机的情况。描述像素时钟的章节显示这个问题能够解决。
图 1.2.13 有关亚像素的解释(左图为a、右图为b)
(3)问:什么是12位相机?我是否需要12位相机?
答:理论上12位相机的动态范围是8位相机的动态范围的16倍。一个8位的相机最高能够检测256个灰度级。一个12位相机有4096个灰度级。由于相机是数字的,您不必测量到213.5625,或者说213或214。如果您需要检测213和214灰度级之间的灰度级,8位相机的效果就很差。这时您就要用12位相机,它能提供16倍的动态范围,同时又能得到与8位相机相同的数据量。
(4)问:CMOS相机与CCD相机间的区别有哪些?
答: 它们是不同工艺和结构的两种微电子器件,主要的区别如下:ⅰ)CCD传感器比CMOS传感器对光更加敏感,这是因为CCD往往比CMOS相机有更大的填充因子。如今采用微透镜技术的CCD可以达到100%的填充比,而CMOS由于周围的电路元素影响,它的填充比一般在70%左右。ⅱ)CCD传感器更适应低对比度的场合,这是由于CCD传感器可以获得更高的信噪比。ⅲ)CMOS传感器可以获得比CCD传感器高很多的图像传输速度,因而更适用于高速场合的需要。ⅳ)CMOS传感器由于其电路结构特性可以获得比CCD传感器更多的输出柔性,您可以在任意选择图像输出的子兴趣区域来提高图像传输速度,比如某传感器有1280×1024的像素分辨能力和15帧/秒的图像传输频率,如果是CCD传感器,由于其串行耦合输出的电路特性使它在选择子兴趣区域时只能减少行分辨率,如640×1024(30帧/秒)、320×1024(60帧/秒);而如果是CMOS传感器,则可以选择低于1280×1024的任何分辨率,如640×480(约70帧/秒)。ⅴ)CMOS传感器拥有更低的电能消耗,因此更适应于便携设备和空间应用。但有一点很明显,随着两者技术的进步,在同档次的相机上差别也越来越小,因而选择何种创感器主要是遵守适用原则。
(5)问:CCD是数字器件?
答:虽然CCD与许多数字器件一样用到时钟,但是光的采集和输出是以模拟形式进行的。输入CCD的时钟用于从光敏器件转移电荷到输出放大器上。输出信号是模拟的,必须被转换成数字信号才能被计算机处理。
(6)问:模拟输出相机与数字输出相机之间的区别是什么?
答:模拟相机的视频输出是用模拟电信号传输视频信号,这种相机通常用于闭路电视,或者与数字化视频波形的采集卡相连。数字相机其内部有一个A/D转换器,数据以数字形式传输,能够直接显示在电脑或电视屏幕上,因而数字输出相机可以避免传输过程的图像衰减或噪声。
(7)问:我应该选择何种输出接口的相机?
答:输出接口类型的选择主要由您需要获得数据类型决定。如果您的图像输出直接给视频监视器,那么您只需要模拟输出的相机(对单色图像需求就是CCIR或RS-170制式输出,对彩色图像需求就是PAL或NTSC制式输出)。如果您需要将相机获取的图像传输给电脑,则可以用多种输出接口选择,但必须和采集卡的接口一致,通常有如下的选择(在图像采集卡一节将进一步介绍):ⅰ)模拟接口仍然可以适用,图像信号需要一张图像采集卡完成A/D转换,这样的搭配价格最低因而是最常见的。ⅱ)对一些没有其它采集卡控制需求和图像传输可靠性需求的应用,采用直联的USB2.0接口和IEEE1394 (Fire Wire)最为方便。ⅲ) Camera Link接口是一种数字输出标准,它需要一张采集卡来承载,并用以配合高性能的面扫描相机或线扫描相机,随着该数字接口的推广和完善,价格也不如预期的那样昂贵。ⅳ)此外,也有一些老一点的数字接口仍然再被使用,比如 LVDS RS644。
(8)问:为什么很多相机比便携摄像机和CCTV相机要贵很多?它们不都是用CCD传感器吗?
答:科学级CCD与用于消费的CCD之间的区别与想要得到的图像质量有关。一些数字相机使用有很少噪声的特殊的CCD,有很大的像素数,并且有些可以拍摄高速运动的物体。
(9)问:什么是垂直同步、彩色视频复合信号同步、外同步、直流线锁定和完全同步?
答:这是摄像机之间不同的同步方法。全体锁定是两部用于精密的应用如广播摄影棚摄像机之间完全同步最好的方法。它将同步:水平,垂直,偶数/奇数区域,色彩触发频率和阶段。垂直同步是最简单的方法来同步两部摄像机,通过垂直驱动频率来保证视频能够采用老式的切换期或者四分割机器,在同一个监视器上显示几个影像源。垂直驱动信号通常由重复频率20/16.7毫秒(50/60赫兹)和脉冲1~3毫秒宽度的脉冲组成。彩色视频复合信号代表视频和彩色触发信号,意味着摄像机能和外部的复合彩色视频信号同步。然而尽管称作彩色视频复合信号同步,实际上只进行水平同步和垂直同步,而没有色彩触发同步。外同步非常类似于彩色视频复合信号同步。一个摄像机能够同步于另一个摄像机的视频信号,一个外同步摄像机能使用输入的彩色视频复合信号,提取水平和垂直同步信号来做同步。
多数相机具有垂直驱动同步或者彩色视频复合信号/外同步性能,但是由于监控摄像机永远不需要线锁定,因此闭路监控摄像机几乎没有完全锁定性能。直流线锁定是一种古老的技术,利用直流50/60赫兹电源线电流来同步摄像机。因为直流24伏电源广泛使用于多数建筑物防火警报系统,由于非常容易获得,因此广泛应用于北美洲。由于老型号的切换器和分割系统没有数字记忆功能,要保持稳定的影像,摄像机之间的同步非常必要,直流线锁定就是摄像机同步于交流50/60赫兹,彩色信道之间时间的关联和水平/垂直信号没有约束会导致糟糕的色彩转换(色彩阶段设计),因此所有使用交流线锁定的用户不可避免地失去很好的色彩转换。幸运的是,现在的分割器和16通道复合处理器以及硬盘录像机都有内部记忆体来克服这个问题,不再需要同步信号,因此交流线锁定可能若干年后会被淘汰掉。
(10)问:什么是电子快门?为什么有些CCD没有电子快门功能?
答:只要有光照,CCD光敏部分就会产生电子。由于像素必须被读出,如果读出需要很长时间,图像就会变差。这与使用慢速快门拍摄运动物体的原理一样。通常在读出时间内中止信号产生。然而,关掉光照就需要某种形式的机械快门或者电子快门。有些CCD设计为只要信号产生就迅速传送到CCD的某一金属区域,由于光照不能够穿透金属,信号产生就会中止,CCD就能够没有干扰的读出。这种快速传送到保护区域就称作电子快门,因为利用电子控制信号产生时间。
(11)问:硅对光的敏感度超过1100nm,但为什么没有能够检测到这些波长的CCD?
答:硅对光的敏感度的确超过1100nm,然而,为什么CCD不能够检测到这些波长的原因是有些复杂的: CCD通过吸收光,将光能量转换成电能量来工作。这些电子在CCD中传送到输出放大器中,这里,产生了与像素吸收的光能量成比例的一部分电信号。被硅吸收的光能量取决于波长。蓝光能够被硅高度吸收,而大多数的光实际上是被CCD上的多个硅沟吸收。结果,只有一小部分的蓝光被CCD损耗区域吸收,这里像素聚集电子。在可见光谱的另一端,红光和近红外光也只有少部分被吸收。因此,只有穿过了大量硅的光才能被吸收而产生电子。这些电子漂移到CCD损耗区域被像素吸收,或者在别处漂移直到它们的能量耗尽。
[本节参考文献:Introduction to cameras, The Imaging Source Europe GmbH ]
1.3 镜头(lens)
人类的视觉是依靠眼睛中的晶状体将景物的像投影在视网膜上,“花花世界”才被人类感知。相机中的传感器(CCD或CMOS)相当于人眼中的视网膜,那么镜头就相当于晶状体,必须通过镜头来摄取世界万物,人类的眼睛如果焦距出现误差(近视眼),则会出现无法正确的分辨事物,同样作为数码相机的镜头,其最主要的特性也是镜头的焦距值。镜头的焦距不同,能拍摄的景物广阔程度就不同,照片效果也迥然相异。
镜头一般都由光学系统和机械装置两部分组成,光学系统由若干透镜(或反射镜)组成,以构成正确的物像关系,保证获得正确、清晰的影像,它是镜头的核心;而机械装置包括固定光学元件的零件(如镜筒、透镜座、压圈、连接环等),镜头调节机构(如光圈调节环、调焦环等),连接机构(比如常见的C、CS接口)等;此外,也有些镜头上具有自动调光圈、自动调焦或感测光强度的电子机构。
镜头按焦距大小可以分为长焦镜头、标准镜头、广角镜头等;按用途通常可以分为安防用镜头(CCTV lens)、工业自动化镜头(FA lens),广播级别的镜头(Broadcast lens),高清晰电视用镜头(HD lens);机器视觉行业内通常将镜头分为宏镜头(macro lens)、定倍镜头(fixed-mag lens)、变焦镜头(zoom镜头)、远心镜头(telecentric lens)、高精度或百万像素镜头(High Resolution or million pixels lens)等。当然,这些分类并没有严格的划分界线。对于镜头有关的光学参数我们可以将焦距f、光圈系数(相对孔径)、像方视场(即支持的CCD芯片大小)以及像差(比如畸变、场曲等)看作镜头的内部参数,而图3.3.1所示的是一个简单视觉系统的镜头外部主要参数需求,通常是用户搭建视觉系统所最关心的,主要包括视场(FOV)、分辨率(Resolution)、工作距离(WD)和景深(DOF)。
图1.3.1 简单视觉系统镜头主要参数
为了解释清楚镜头参数,让我们先简单的介绍一点光学基础。图1.3.2展示了镜头成像的基本性质,图中a所示假设发光体位于无限远处(无穷远处物体所发光被认为是平行光),放置镜头与这些平行光垂直,这些光线将聚集在一点,这一点就是所谓的焦点。换句话说,焦点是无限远处光源的映射。镜头与焦点之间的距离成为焦距f。因此,如果我们想要获取一个CCD传感器上的无限远的物体,镜头与传感器的距离就会正好是镜头的焦距。如果将发光体移近镜头,如图中b所示,镜头就将光线聚焦在焦点前面,因此如果要获取尖锐的图像,就必须增加镜头与传感器的距离。这不仅仅应用于理想的薄透镜,也可以应用于实际由多镜片组成的复合镜头。当镜头应用于高精度的检测场合时,必须清楚理想薄透镜公式与实际透镜组计算公式。对于一般的应用,理想薄透镜或是小孔成像原理可以被应用到一般的视觉系统中。因此,镜头对焦意味着改变镜头本身与CCD传感器的距离,距离改变靠机械装置进行约束。
图1.3.2 镜头成像的基本性质
图1.3.3 理想薄透镜成像
而图1.3.3所示的高斯公式则是对于理想薄透镜的基本透镜公式。在平常使用中,我们经常需要决定焦距。其基本公式为: (公式1.3.1)
(公式1.3.2)
通过以上两式可以得到
(公式1.3.3)
其中,V和U分别是镜头光心到图像传感器的距离和镜头光心到物体的距离,和分别是图像的大小和物体的大小。V与U之比就是放大因子(或称放大倍率)。
对成像理论进行简单介绍之后,接着对镜头参数进行介绍。对于普通用户最直观的2个内部参数分别是焦距、光圈,不少镜头这2个参数都是可调的(还有一个外部参数:工作距离在有些镜头上也是可调的)。对同一芯片尺寸的相机,视场角则可以看作焦距的另一种表达,它与焦距的关系式为:,这里,是CCD传感器的一个维的长度(水平、垂直或对角方向)。有时镜头可以根据它的视角来分类,实际上这一分类并不很严谨。按视场角对镜头比较典型的分类如下:
光学系统 |
望远物镜 远距摄像镜头 标准镜头 广角镜头 超广角镜头 |
视场 |
6° 12° 46° 65° >100° |
焦距(视场角)不仅仅描述镜头的屈光能力,且可作为图像质量的参考。一般镜头失真随着焦距的减小(或视场角的增大)而增大,因而选择测量镜头,不要选择小焦距(小于8mm)或大视场角的镜头。此外,即使不是变焦(ZOOM)镜头,普通镜头上也会有一个调焦环,但如前面提到的它没有改变镜头的焦距f,而只是改变镜头光心到图像传感器的距离V,从前面的公式可以看到这样同样可以改变镜头的放大倍率。
光圈系数是镜头的重要内部参数,它就是镜头相对孔径的倒数,一般的厂家都会用F数来表示这一参数。例如,如果镜头的相对孔径是1:2,那么其光圈也就是F2.0。而在相机的镜头上,都会标写上这一指标。而由于光圈系数是相对孔径的倒数,因此,如果光圈系数的标称值数字越大,也就表示其实际光圈就越小。一般来说,镜头的光圈排列顺序是:1、1.4、2.0、2.8、3.5、4.0、5.6、8.0、11、16、22、32等等。随着数值的增大,其实际光孔大小也就随之减小,而其在相同快门时间内的光通量也就随之减小。当然,有些视觉系统为了增大镜头的可靠性和降低成本,采用的定光圈设计,光圈不能改变时调整图像亮度就需要靠调整光源强度或相机增益。
像方视场(即支持的CCD芯片大小)同样是镜头的重要内部参数,CCD芯片尺寸在相机一节就已介绍,通常大小为1/3”, 1/2”。不同芯片规格要求相应的镜头规格。镜头的设计规格必须等于或大于芯片规格,否则就会出现如图1.3.4 所示的后果,在视场边缘会出现黑边。特别是在测量中,最好使用稍大规格的镜头,因为镜头往往在其边缘处失真最大。
图1.3.4 镜头规格与CCD芯片尺寸的匹配
作为镜头内部参数的像差,在机器视觉应用中最为关键的是畸变(变形率)和场曲(用于传感器接受的镜头该参数已被严格校正)。畸变会影响测量结果,特别是在精密测量中,还必须通过软件的方法进行标定和补偿。如图3.3.5所示,畸变主要分为两种:桶形畸变(Barrel)和枕形畸变(Pincushion),图中虚线方框表示物体应该成的理想像,很明显,畸变沿镜头径向变化并不是线性的,通常在视场边缘畸变最大,用于测量的镜头最大畸变需要小于1%。
图1.3.5 镜头畸变
再接着阐述的镜头光学参数是与客户选择比较相关的外部参数,首先是视场(FOV),可以通过以下两个公式进行计算,式中V和H分别表示垂直和水平方向,M表示光学放大倍率,f表示焦距,WD表示工作距离。
(公式1.3.4)
(公式1.3.5)
然后对于镜头的分辨率则不能与相机的分辨率混为一谈,对于镜头,它的极限空间分辨能力受系统衍射极限的影响,按照瑞利判据,物镜的光学极限分辨距离为:
(公式1.3.6)
式中为波长;NA为物镜的物方数值孔径;n为物方介质折射率,这里是空气n=1;U为物方半孔径角的。对于相机的分辨率则在前面的相机一节有过介绍( FOV(V or H)/CCD像素数(V or H)),是一个与镜头分辨率无关的量,它们两者可以按Nyquist的采样理论联系起来,这里不再详述。那视觉系统的系统分辨率应该按哪个公式计算呢?很简单,系统分辨率应该是两者中小的那个,又由于镜头的分辨率一般都比相机分辨率高,因此绝大多数视觉系统都是按FOV与CCD像素数的比值来计算视觉系统的分辨率。
工作距离往往在视觉应用中至关重要,从公式1.3.5中可以看出它与视场大小成正比,有些系统工作空间很小因而需要镜头有小的工作距离,但有的系统在镜头前可能需要安装光源或其它工作装置因而必须有较大的工作距离保证空间,通常FA镜头与监控镜头相比,小的工作距离就是一个重要区别。
景深则是镜头另一个重要的外部参数。它表示满足图像清晰度要求的最远位置与最近位置的差值,景深的计算可能会相对麻烦一些它与镜头焦距、光圈值、工作距离和允许弥散斑的最大直径有关。由于允许弥散斑的最大直径是个相对量,它的可接受直径很大程度上取决于应用,因此在实际视觉应用中以实验和参考镜头给出的参考值为主。
简单的说,光圈越小,景深越深;焦距越短,景深越深;对焦距离(工作距离)越远,景深越深。
在本节前面介绍表明镜头光学参数从技术的角度多是可选的。但实际商品化的镜头总是只是某些参数的标准产品,如果需要完全满足系统的要求可能需要定制镜头,这样价格就比平常应用贵很多。因此,很多时候镜头参数选择要分清自己视觉系统应用中的哪些是必须保证的,哪些是可以通过其它的方法折中的。
镜头接口
除了前面讨论的光学参数,实际上对于镜头我们需要处理一些额外的参数。首先有很多方法在相机上安装镜头,幸好机器视觉由C接口和CS接口的镜头和相机主导,比较例外的是高像素数的线扫描相机(2048像素以上),它需要比C接口镜头提供的图像格式更大,在这种情况下,通常利用的是尼康的F接口。
C接口与CS接口镜头唯一的区别就是他们背焦距。对C接口背距是17.5mm,对CS接口背距为12.5mm。因此,对C接口镜头可以增加一个5mm的扩展管,就可得到CS接口镜头。由于C接口标准是国际接受的,有很多镜头可供选择。对于这一规则有一重要例外:C接口的3CCD相机不能和C接口镜头协同工作。从机械的角度,各种C接口镜头的背焦距太长。另外,C接口镜头的光学特性不能总适合3CCD相机。因此,需要考虑相机厂商提供的兼容性列表。图1.3.6所示就是C接口与CS接口之间正确的匹配和不正确的匹配方法。
远心镜头
图1.3.6 C接口与CS接口的匹配
|
普通的镜头与人眼一样,由于视场角的缘故看物体都存在“近大远小”的现象,如果这样的镜头用在测量系统中,物距常发生变化,从而使像高发生变化,所以测得的物体尺寸也发生变化,即产生了测量误差;另一方面,即使物距是固定的,也会因为CCD敏感表面不易精确调整在像平面上,同样亲会产生测量误差。为了解决上述问题,可以采用远心物镜。其中像方远心物镜可以消除物距变化带来的测量误差,而物方远心物镜则可以消除CCD位置不准带来的测量误差。下面的表格对传统镜头与远心镜头进行了简单对比。
|
Conventional Lens
优点: • 低花费 • 容易购买到 • 较大的适用范围
缺点: • 放大倍率随工作距离改变 • 投影失真
应用: • 一般的检测应用 • 工作面固定的二维测量 |
|
Telecentric Lens
优点: • 工作距离的小范围改变保持固定的放大倍率 • 无投影失真
缺点: • 低花费 • 直径要大于被测物 • 大的重量
应用: • 精密测量 • 微蚀刻 |
扩展镜或延伸管
很多镜头为了适应更多的应用环境,常常在镜头中预留位置或在镜头两端预留螺纹,以方便扩展镜头用。这里所说的扩展镜是个广义的概念,可以指增倍镜,可以是滤光镜、偏振镜或差分镜,可以是转轴镜,可以是与延伸管功能类似的微距镜(减小工作距离),还可以是用以实现同轴照明的半透半反镜。具体的选择需要根据您的需要询问镜头供应商。
对于一个光学镜头的性能评估通常用分辨率(resolution) 、对比度(contrast)、像差(aberration)、MTF(modulation transfer function)、色彩平衡性(color balance)、周边光量(Peripheral illumination)、渐晕 (Vignetting)、光斑(flare)、镀膜(coating)等参数进行衡量,虽然这些与视觉成像有很大关系,但作为机器视觉的应用者,应该把这些参数的保障交给镜头生产者,而自己主要是选择合适的镜头类型并保证视场大小和分辨率要求,此外与视觉应用比较相关的还有工作距离、景深、畸变、均一充分的亮度、耐振荡冲击性和镜头本身的尺寸规格。
小结
★ 小的光圈、短的焦距、以及大的工作距离将会导致大的景深,因而可以将光圈调到最大时调焦,这样容易找到最佳对焦位置。 ★ 如光照足够,可以减小光圈,即增加F数来增加景深。定光圈工业镜头和针孔摄像机镜头由于无法设置调焦机构,其F数都设计得比较大。 ★ 镜头的规格必须等于或大于CCD芯片的规格。 ★ 尽量小像差的测量镜头,不用小焦距的镜头(焦距小于8mm)用于测量,由于它会产生不可接受的失真,会增大软件补偿的困难。 ★ 失真是镜头边缘的很大问题,这就是为什么在测量应用中,镜头规格一定要大于CCD芯片的规格的原因。 ★ 扩展管和微距镜头可以减小镜头物距。对于变倍镜头,应避免使用扩展管。 ★ 远心镜头可以避免投影失真(即视角失真)的问题,它的直径必须比被测物体大。 ★ 有些镜头之所以被称为百万像素镜头是因为这些镜头本身的分辨能力大于百万像素CCD或CMOS的物理分辨率。 ★ 对于工业应用,不能够减少对机械稳定性的成本。最好当镜头的焦距、光圈、放大倍数都设置好后将它们固定或者一开始就选择定光圈的定倍镜头。 ★ C接口的3CCD芯片相机与通常一个CCD芯片的相机的光学特性和机械特性都有很大不同。由于这个原因,对厂商提供的兼容的镜头要特别注意。 |
[本节参考文献:Introduction to optics, The Imaging Source Europe GmbH; www.Edmundoptics.com ]
3.4 图像采集卡(Frame Grabber)
图像采集卡被作为视频信号从相机到电脑之间传输的桥梁。采集卡有多种总线形式,比如最常见的PCI总线和更大带宽的它的升级版本PCI-X总线,也有基于AGP、ISA、PC104Plus、CompactPCI以及VME总线的图像采集卡。
目前大部分相机仍是以模拟信号输出,图像采集卡则将各种模拟视频信号经A/D转换成数字信号送入计算机,供计算机作处理、存储、传输等之用,一般以可插入计算机,或脱离计算机独立使用的板卡形式出现。针对机器视觉应用的图像采集卡有多种种类、规格。但尽管其设计和特性不同,大多数采集卡的基本原理相同。在此,将基于PCI总线的模拟图像采集卡为例加以说明。
近年来,数字视频产品取得了显著发展。数字视频产品通常需要对动态图像进行实时采集和处理,因此产品性能受图像采集卡的性能影响很大。由于早期图像采集卡以帧存为核心,处理图像时需读写帧存,对于动态画面还需“冻结”图像,同时由于数据传输速率的限制,因此图像处理速度缓慢。90年代初,INTEL公司提出了PCI(Peripheral Component Interconnect)局部总线规范。PCI总线数据传宽度为32/64位,允许系统设备直接或间接连接其上,设备间可通过局部总线完成数据的快速传送,从而较好地解决了数据传输的瓶颈问题。
由于PCI总线的高速度,使A/D转换以后的数字视频信号只需经过一个简单的缓存器即可直接存到计算机内存,供计算机进行图像处理也可将采集到内存的图像信号传送到计算机显示卡显示;甚至可将A/D输出的数字视频信号经PCI总线直接送到显示卡,在计算机终端上实时显示活动图像。基于PCI总线的图像采集系统框图如图1所示。图中的缓存(数据锁存器)代替了帧存储器,这个缓存是一片容量小、控制简单的先进先出(FIFO)存储器,起到图像卡向PCI总线传送视频数据时的速度匹配作用。将图像卡插在计算机的PCI插槽中,与计算机内存、CPU、显示卡等之间形成调整数据传送。
图1.4.1 图像采集卡的基本结构
图1.4.1 显示了图像采集卡的基本结构。首先,同步分离器将同步脉冲从输入的视频信号中分离。水平同步表明新的一行的开始,垂直同步表明新的一场或一帧的开始。通常在视频信号与采集卡相连接后,在采集卡工作稳定之前还需要获取三帧图像的时间,当需要在一个视频源与另一个视频源之间切换时,这就可能产生麻烦。为了避免这么长时间的初始化,视频源必须由外部同步,从而所有相机的水平同步与垂直同步都是同步的,这就是锁相机制。幸好一些采集卡都带有用于产生同步信号来锁相的同步发生器。但是,必须知道这些同步信号是TTL电平而不是视频标准脉冲电平。因此,视频源必须能够与TTL同步输入协同工作。还须注意,使用采集卡的同步发生器并不表示同步分离是由同步发生器直接控制的。而且,同步分离器与同步发生器是相互独立工作的,并且不是直接与视频源相连的。
一旦达到行和帧稳定的同步,获取图像的下一个步骤就与像素的产生本身相关。根据视频标准,抽样/保持单元需要对CCIR相机采用767像素/行,对于EIA相机采用647像素/行的抽样来数字化输入。在上面相机的介绍中讨论过这就导致对于CCIR相机需要14.75MHz的像素时钟频率,而对于EIA相机需要12.3MHz的像素时钟频率。实际中,采集卡的参数可能与标准值会有些不同,但不会有太大差别。另外,只有在采集卡使用相机的像素时钟的情况下才能够精确的将CCD芯片的像素映射到采集卡缓存或计算机内存区。
数字化的像素存储在图像缓存或FIFO缓存中。图像缓存存储至少一副完整帧,当总线带宽太小而不能无失真的传输数字视频数据流的时候就会使用它。较先进的总线系统,比如PCI总线,对于标准视频流仅仅需要几个K字节的FIFO来缓冲无规律的数据流。因此,有可能在计算机主存中直接获取数字视频数据流,也可以将其直接传送给显卡供实时观察。 PCI总线可支持BUS Master设备以132Mbps突发速率传输数据。而其平均持续数据传输率一般在50~90Mbps。
来自相机的数据总是以一个固定的速率传输的。如果PCI总线可以维持大于视频数据率的平均持续数据传输率,问题看起来就解决了。然而实际上并不是这么简单,PCI总线设备只能以突发的方式向总线传输数据。图像采集卡必须将每一突发之间的连续的图像数据保存起来。解决的方法就是采用On-board Memory。有些厂家出于经济方面的考虑去除了Memory而采用数据缓存队列(FIFO),FIFO的大小一般以足以保存一行图像数据为限。然而,当图像数据的速率大于PCI的持续数据传输率时FIFO就不起作用了。
图像采集卡的基本技术参数主要有以下几方面:
A.图像传输格式
图像采集卡需要支持系统中摄像机所采用的输出信号格式。大多数摄像机采用RS422或EIA644(LVDS)作为输出信号格式。在数字相机中,IEEE1394,USB2.0和CameraLink几种图像传输形式则得到了广泛应用。
B.图像格式(像素格式)
黑白图像:通常情况下,图像灰度等级可分为256级,即以8位表示。在对图像灰度有更精确要求时,可用10位,12位等来表示;彩色图像:彩色图像可由RGB(YUV)3种色彩组合而成,根据其亮度级别的不同有8-8-8,10-10-10等格式。
C.传输通道数
当摄像机以较高速率拍摄高分辨率图像时,会产生很高的输出速率,这一般需要多路信号同时输出,图像采集卡应能支持多路输入。一般情况下,有1路,2路,4路,8路输入等。
D.分辨率支持
采集卡能支持的最大点阵反映了其分辨率的性能。一般采集卡能支持768*576点阵,而性能优异的采集卡其支持的最大点阵可达64K*64K。单行最大点数和单帧最大行数也可反映采集卡的分辨率性能。
E.采样频率
采样频率反映了采集卡处理图像的速度和能力。在进行高度图像采集时,需要注意采集卡的采样频率是否满足要求。目前高档的采集卡其采样频率可达65MHZ。
F.传输速率
主流图像采集卡与主板间都采用PCI接口,其理论传输速度为132MB/S。
多媒体VS.机器视觉
乍一看,用于多媒体的图像采集卡与用于机器视觉的图像采集卡有些相似:它们都是获取图像并将图像转化为计算机能够处理的数字化图像。而实际上,他们是有着很大的区别。多媒体图像采集卡获取图像是为了视频及音频编辑的,它们产生的大量数据流必须被有效的显示、存储、传输。视频传送不需要大量数据,典型的方法就是低分辨率图像及压缩技术的应用,而结果图像质量就会变差。另一方面,用于机器视觉的图像必须尽可能精确的表示实际的物体,毕竟一个应用很可能需要告诉用户精确的信息,比如测量某高度值应该为5.20mm。从驱动软件的角度看,多媒体图像采集卡是多采用现存的标准接口比如MCI或TWAIN;而机器视觉领域的图像采集卡,简单的采集卡可以通过寄存器或者按照一个更加先进的概念来获得,随之有驱动库,它包含采集卡寄存器结构并且提供对硬件资源的直接存取。但是,这没有标准,每一个制造商都有他自己的方法。这就反映了机器视觉硬件标准对于一些特性比如触发机制的缺乏(在前面1.2 相机一节有相关的介绍)。驱动程序与应用程序之间的接口是普遍标准化的,相比之下,机器视觉应用程序就有很大不同,有很多是针对应用定制的,也有很多通用的开发包。
与图像采集卡相关的技术
(1)直接存储器访问(DMA)
DMA( Direct Memory Access)是一种总线控制方式,它可取代CPU对总线的控制,在数据传输时根据数据源和目的的逻辑地址和物理地址映射关系,完成对数据的存取,这样可以大大减轻数据传输时CPU的负担。
(2) 分散/聚集表(Scatter/Gather Table)
分散/聚集表实际上就是一张供DMA传输时逻辑地址与物理地址的动态映射表。根据不同的板卡设计,这张表可直接位于采集卡的某个buffer模块内,称为硬件式的分散/聚集,它在PCI传输时的最高速度可达120M/s;此表也可位于主机的某段内存中,称为软件式的分散/聚集,传输的最高速度一般为80bps。大部会PC系列采集卡都属于硬件式的分散/聚集。
(3) 查寻表(LUT)
对于图像采集卡来说,LUT(Look-Up Table)实际上就是一张像素灰度值的映射表,它将实际采样到的像素灰度值经过一定的变换如阈值、反转、二值化、对比度调整、线性变换等,变成了另外一个与之对应的灰度值,这样可以起到突出图像的有用信息,增强图像的光对比度的作用。很多PC系列卡具有8/10/12/16甚到32位的LUT,具体在LUT里进行什么样的变换是由软件来定义的。
(4) PLL、XTAL和VScan
PLL、XTAL和VScan为模拟采集卡的三种不同工作模式。PLL(Phase Lock Loop)模式:相机向采集卡提供A/D转换的时钟信号,此时钟信号来自于相机输出的Video信号,HS和VS同步信号可以有三种来源:composite video,composite sync, separate sync; XTAL模式:图像采集卡给相机提供时钟信号以及HD/VD信号,并用提供的时钟信号作为A/D转换的时钟,但同步信号仍可用相机输出的HS/VS; VScan模式:由相机向分别卡提供Pixel Clock信号、HS和VS信号。
(5) 子采样(Decimation)
Decimation实际上是对原始图像进行子采样,如每隔2、4、8、16行(列)取一行(列)组成新的图像。Decimation可以大大减小原始图像的数据量,同时也降低了分辨率,有点类似于相机的Binning。
(6) 可编程子窗生成(PWG)
PWG (Programmable Window Generator)指在获取的相机原始图像上开一个感兴趣的窗口,每次只存储和显示该窗口的内容,这样也可以在一定程度上减少数据量,但不会降低分辨率。一般采集卡都有专门的寄存器存放有关窗口大小、起始点和终了点坐标的有关数据,这些数据都可通过软件设置。
(7) 数据重组(Resequencing)
Resequencing可以认为是一种对多通道或不同数据扫描方式的相机所输出数据的重组能力,即将来自CCD靶面不同区域或像素点的数据重新组合成一幅完整的图像。
(8)非破坏性覆盖(Non-destructive overlay)
overlay是指在视频数据显示窗口上覆盖的图形(如弹出式菜单,对话框等)或字符等非视频数据。“非破坏性覆盖”是相对于“破坏性覆盖”来说的,“破坏性覆盖”指显示窗口中的视频信息和覆盖信息被存放于显存中的同一段存储空间内,而“非破坏性覆盖”指视频信息与覆盖信息分别存放于显存中两段不同的存储空间中,显示窗口中所显示的信息是这两段地址空间中所存数据的迭加。如果采用“破坏性覆盖”,显存中的覆盖信息是靠CPU来刷新的,这样既占CPU时间,又会在实时显示时由于不同步而带来闪烁,如果采用“非破坏性覆盖”则可消除这些不利因素。
模拟采集卡采样精度与速度
模拟采集卡的数字化精度主要包括两个方面即像素抖动(在相机一节已详细介绍)是由图像采集卡的A/D转换器的采样时钟的误差产生的像元位置上的微小的错误从而导致对距离测量的错误。 (2) 灰度噪音Grey-Scale Noise灰度单元,图像采集卡的数字化转换的过程包括对模拟视频信号的放大和对其亮度(灰度值)进行测量。在此过程中会有一定的噪声和动态波动由图像采集卡的电路产生。如像素抖动一样,灰度噪声将导致对距离测量的错误。典型的灰度噪声为0.7个,表示为0.7LSB。
数字采集卡要考虑数据率大小,计算数字采集卡的数据率是否满足系统的要求可按下列公式计算:
Data Rate(Grabber)>1.2×Data Rate(Camera) (公式1.4.1)
Data Rate(Camera)=R×f×d/8
式中Data Rate(Grabber)为采集卡的数据率,Data Rate(Camera)为相机的数据率,R为相机的分辨率,f为相机的帧频,d为相机的数字深度(或称灰度级)。
非标准视频获取
很多机器视觉应用相机输出并非标准的视频信号,相应的图像采集卡就也必须提供一些视频标准以外的特性。下面就描述了三种典型的非标准采集卡:
①由视频标准定义的最大图像分辨率对于大多数应用是足够的,因此一种非标准采集卡就是将视频标准,比如说像素时钟、触发机制、逐行扫描更加细化。与RGB相机共同使用的采集卡通常用于同时获取高达三种颜色的视频信号(这三个通道可以不必代表通常的红、绿、蓝信号)。用这种方法,就可以实现立体的视觉系统。而且,一些特殊的相机提供两路视频输出来加倍扫描速率并且能够与RGB采集卡相连。
②第二种非标准采集卡并不像第一种那样遵循视频标准。他们自适应几乎所有的非标准相机,比如说线扫描相机、数字相机、以及提供超出视频标准分辨率的相机。非标准视频可以是以下特性的组合:
A. 非标准时钟
不遵循标准视频时钟的视频信号不能用传统的图像采集卡和标准译码电路来处理。输出比帧速率比标准个数多或少的相机(双倍速度相机和百万像素相机)或者当要处理触发、变化扫描设置,将会在以后讨论。
B. 非标准或百万像素分辨率
先进的相机开始在传感器上有越来越多的像素从而图像的分辨率会变大。CCIR标准指出,具有百万像素的相机其1024*768、1300*1030或更高的分辨率已经超过了传统的768*576的分辨率,它能够提供给定分辨率下更大的视野范围。
C. 逐行扫描输出
逐行扫描在相机一节曾有介绍,它是指整个图像而不是一半的图像在一个事件当中同时计算。结果就是完全的处置分辨率非隔行视频,对捕获具有最大分辨率的高速运动物体的图像很适用。大多数制造的CCD传感器是隔行扫描类型的,以适应于监视和电视型的应用。因此,逐行扫描相机比隔行扫描相机价格要贵,并且更适用于机器视觉。使用逐行扫描相机时,快速运动物体的图像也可能是模糊的。这是因为视频中的图像是在一个时间段(曝光时间)内积累的结果,在这过程中物体可能已经移动。为降低模糊,可以用一个电子快门来缩短曝光时间。这在35mm摄影相机中机械的完成,在CCD相机中电子的完成。当电子快门速度提高时,曝光时间就缩短,物体在很短的时间中被拍摄,因而能减少模糊。大多数机器视觉应用都时利用这种技术,尽管少的曝光时间意味着由于少的光照到传感器上,相机变得不敏感。当电子快门达到一个较高的速度,就需要更高的光密度,这也能够有快的,低的F数镜头来辅助完成。只有在采集卡本身能够被用户配置的情况下,才有可能实现这么高的灵活性。因此,这种采集卡通常配有特殊的能够产生相机描述文件的配置程序,描述文件被采集卡驱动程序用来配置采集卡。
③尽管如今的PC机性能已经很高,对于一些图像序列的处理,它还是不够的。因此,就需要额外的计算能力。为了达到这个目的,高终端的图像采集卡就配有一个或多个信号处理器,能够做CPU的图像预处理。显然,这种采集卡成功的应用是需要很多经验的,另外,实际采集卡的复杂度以及信号处理器的开发环境就产生很高的需求。
接口制式,数据格式
目前相机的接口形式包括模拟接口(PAL、NTSC、CCIR、RS170/EIA、非标准模拟制式),数字接口(Camera Link、Channel Link、LVDS/RS422)和议一些直联式数字接口(IEEE 1394、USB、以太网Ethernet)定与视觉系统所选用相机一致,如选用数字制式还必须考虑相机的数字位数。(模拟信号及接口前面已经介绍)
RS-422 及RS-644(LVDS)接口
RS-422 及RS-644(LVDS)通常是68pin 或 100pin 的高密度接口, 但各相机厂家的引脚定义不尽相同而且采集卡引脚定义也不太一样, 因此在选定相机及采集卡后,需要更换其中的一者都必须先看看引脚的信号的定义,也许需要重做信号线或做一个信号转换板。
Channel Link 接口
Channel Link是Camera Link的前身,能够与其兼容,接口的引脚较LVDS少了很多却仍然可以传输大量的数据,它也没有统一的标准接头形式, 因此各厂家的产品之间依然有差异。
Camera Link接口
Camera Link标准则是由多家工业相机和采集卡大厂共同制定出來的, 标准本身是基于Channel Link 的特性, 并定义了标准的接口, 让相机与采集卡之间的信号传输更加简单化了,同時定义了基本架构(Base Configuration), 中级架构(Medium Configuration), 及完整架构(Full Configuration) 的信号引脚规范和传输资料量。
IEEE 1394
IEEE 1394接口,(通常也被称为FireWire或者iLink)。 因为可得到的带宽被分配到需要它的全部设备,在节点上的最慢的设备将决定整个传输网络的带宽。 IEEE1394a是目前实现的版本。 它支持100,200,和400 Mbit/s的带宽。 而IEEE 1394b是一个新兴的标准但还没被广泛地支持,它提供一个800 Mbit/s的带宽,最多可达3.2 Gbit / s。 1394有两种工作方式: 异步(asynchronous)方式和同步(isochronous),异步方式的设计主要是保证信息传递的可靠性,并非保证高的传输速度,它在数据的发送和接收之间通过“握手”以保证被传送的数据被收到;而同步方式则会保证带宽, 它必须牺牲握手个过程而没有保障数据被收到。如果可提供的带宽被给予一个同步的设备, 然后设备可以每125us发送一包数据。数据包的长度由指定设备的保留的带宽确定。 同步设备把数据送到一个通道,其它设备都可以通过该通道同步接受数据包。 如果数据包损坏或丢失,也不能重新传送。 大多数1394接口的工业相机采用同步方式并且遵循DCam协议(或称IIDC协议)。
USB
普通串口总线(USB)是一个主从系统用于点对点通讯,目的是作为一种通用标准来取代现有的各种串行或并行的计算机I/O 协议。 主控制器担任主机,端点的其它外部设备隶属于它, 下位USB设备只能与主机(通常一台计算机)联系,但其它设备相互间不能通信。 USB 1.1提供一个只12 Mbit/s的带宽, 因此,不太适合工业相机的图像传输。有480 Mbit/s的可提供的带宽的USB 2.0则完全能达到工业相机的数据传输速度需求。 USB也采用与1394同步方式类似的数据传输方式。USB的同步方式每125us发送一包数据。 数据包长度确定设备分配到的带宽。 与1394一样,不可能实现握手,因此也只是保证带宽而没有保证信息传输的完整。 同步方式数据传输可以达到90%可得到的带宽。 即一部相机能请求并且被准许480 Mbit/s中的90%(理论上,8 位像素图像传输率为54 Mpixel/s)。但一些其它的总线开支通常降低可提供的带宽到实际40 Mpixel / s左右。
以太网Ethernet
作为一个局域网络协议,它起先被美国施乐公司开发,后来在与DEC和Intel合作中获得来巨大改进,Ethernet接口使用总线形或者星形结构学并且支持数据传送率达到 1 Gbit/s,但是,最通常使用的100baseT版本只能提供100Mbit/s的总线带宽。 Ethernet使用载波监听多路访问/冲突检测(CSMA/CD)存取方式。 因为Ethernet允许任何设备给任何其它或全部设备随时发送数据且无需协调,数据冲突的潜在可能就会随着网络使用设备和被传送数据的数量增大。 CSMA/CD每当数据传输冲突时指定再试,直到数据到达最后的目的地。即使有其它网络设备,例如开关和路由器, 当在一个网络上有超过两个设备时,冲突的潜在可能被大大降低,但也不能达到理论的带宽(100Mbit/s)。 100Mbits/s的理论带宽的100baseT 通常有效的数据传输速度为50Mbit/s,在考虑节点开销和冲突之后,对8位的图像数据只能达到6.25Mpixel/s,不适应多数机器视觉的应用。 由于千兆位Ethernet(1000baseT)的来临,带宽可增加到1,000Mbit/s(1Gbit/s)但其工业目的的未压缩图像数据传输协议标准目的没被完全确定。
因此,视频制式与接口的选择需要与相机一起进行综合考虑,此外,虽然目前一起直连相机(比如USB和IEEE1394)存在着价格较低,但考虑到复杂视觉系统对一些控制功能的需求和图像传输可靠性,因而直连相机并不是大多数工业应用的最佳选择。
附加功能
图像采集卡为了方便视觉系统的应用,通常会增加一些有别于单纯图像采集的附加功能,在机器视觉系统中,输入/输出的控制很重要,系统中常要根据处理过程的需要来决定相机的拍照时间,采用了可异步重置的相机,则需要输出触发相机的信号。此外,在一些系统中,由于需要设定拍摄的帧率,应该有像素时钟发生器。外同步是指不同的视频设备之间用同一同步信号来保证视频信号的同步,它可以保证不同设备输出的视频信号具有相同的帧行起止时间。为了实现外同步,需要给摄像机输入一个复合同步信号或复合视频信号。如果图像采集卡已经具有数字 I/ O功能,能够产生摄像机和其他电子设备所需的选通、触发及其他电子信号,对系统是很有用的,否则将需要独立的数字 I/ O卡。
比如图1.4.1中所示的同步输出、像素时钟输出、外部触发输入和用户自定义的数字 I/ O,此外还有的采集卡会提供RS232串口控制和相机电源输出等。
硬件可靠性以及软件支持
硬件的可靠性在生产系统中是十分重要的,由设备故障而停产造成的损失远远大于设备本身。很多板卡厂家并没有标明如平均无故障时间等可靠性指标。这里有两个经验性的技巧用以评估不同板卡的可靠性,板上的器件的数量和功耗。试着去选择具有更低功耗的采集卡。在其它条件都同等的情况下一块复杂具有更多器件的卡会比器件较少的卡耗散更多的热量。好的设计会采用更多的ASIC(Applica tion-specific integrated circuits)和可编程器件以减少电子器件的数量,而达到更高的功能。您还可以选择具有更少的无用功能的卡以减少不必要的麻烦。过压保护是可靠性的一个重要指标。接近高压会在视频电缆产生很强的电涌,在视频输入端和I/O口加过压保护电路可保护采集卡不会被工业环境电磁干扰会产生的高压击穿。
基本上所有的图像采集卡都支持二次开发,通常随图像采集卡都附送一些采集、存储、显示相关的函数库,而图像处理相关的函数库虽然需要得到响应的硬件支持但往往都是另外销售的,因此在选择采集卡的同时还必须考虑此视觉系统要选用的软件与采集卡是否兼容,是否使用方便,其软件是否要求付费等。比如Matrox公司的Mil和MilLite可以在它们的大多数卡上使用, Dalsa Coreco公司的图像处理软件WIT、Sapera、MVTools等只能在其Bandit系统、PC系列、X64系列、Viper系列等采集卡上使用,而Cognex公司的Vision Pro只能在其8100、8500系列采集卡上运行。此外,像HexSight这类的通用视觉开发软件,则可以支持市面上的大多数采集卡。
小结
★ 选用板卡的标准不应该是“好”与“坏”、“强”与“弱”,而是“适合”与“不适合”。大部分静态拍照的应用同时又不需要太高的分辨率,您需要考虑的就只是成像 采集卡可能一张设计出色的采集卡外加功能强大的软件配套,自然是一个“好”的选择。但如果在您的二次开发应用系统中,只用到了其软件包中一半的函数。那么,对于您们公司来说,整套产品虽然是“好”的产品,但却不是适合的产品。 ★ 图像采集卡和相机必须相互协同工作。可以参考相机介绍的小结。 ★ 用于机器视觉的图像采集卡和用于多媒体的图像采集卡由于要完成完全不同的任务,它们在结构上有很大不同。 ★ 当图像采集卡与电脑以慢速的总线(比如说ISA总线)相连接,就需要附加存储器,但当其以快速的PCI总线相连接时,图像采集卡只需要仅仅一个FIFO来缓冲一些行即可。 ★ 当视频信号进入采集卡后,需要三个图像来初始化采集卡。在视频源之间快速的转换要求相机是同步的(锁相)。 ★ 由于RGB采集卡能够达到三路A/D转换(三通道),它们适用于立体视觉以及传输高速数据流的相机。
|
[本节参考文献:Introduction to frame grabber, The Imaging Source Europe GmbH; 张未强,陆洋,如何为机器视觉系统选择采集卡,机器视觉,2005(7) ]
1.5 光源(illumination)
光源是影响机器视觉系统输入的重要因素,因为它直接影响输入数据的质量和至少30%的应用效果。由于没有通用的机器视觉照明设备,所以针对每个特定的应用实例,要选择相应的照明装置,以达到最佳效果。许多工业用的机器视觉系统用可见光作为光源,这主要是因为可见光容易获得,价格低,并且便于操作。常用的几种可见光源是白帜灯、日光灯、水银灯和钠光灯。但是,这些光源的一个最大缺点是光能不能保持稳定。以日光灯为例,在使用的第一个100小时内,光能将下降15%,随着使用时间的增加,光能将不断下降。因此,如何使光能在一定的程度上保持稳定,是实用化过程中急需要解决的问题。另一个方面,环境光将改变这些光源照射到物体上的总光能,使输出的图像数据存在噪声,一般采用加防护屏的方法,减少环境光的影响。由于存在上述问题,在现今的工业应用中,对于某些要求高的检测任务,常采用X射线、超声波等不可见光作为光源。
一个好的操作平台应该能够在最短的时间内处理图像,好的机器视觉软件应该能够很容易的在一系列的案例中应用,好的相机和镜头应该是拥有最小的畸变和足够的分辨率。但是,好的机器视觉照明应该有什么特点呢?在图像的分析处理中,光源的角色又是什么呢?
判断机器视觉系统照明的好坏,首先必须了解什么是光源需要做到的!显然光源应该不仅仅是使检测部件能够被摄像头“看见”。有时候一个完整的机器视觉系统很难完成的工作,但是仅仅优化一下光源就可以使系统顺利进行了。
1. 衡量光源的好坏
好的光源需要能够使您需要寻找的特征非常明显,除了是摄像头能够拍摄到部件外,好的光源应该能够产生最大的对比度、亮度足够且对部件的位置变化不敏感。光源选择好了,剩下来的工作就容易多了!
影响反射效果的因素有:光源的位置,物体表面的纹理,物体表面的几何形状及光源的均匀性。
光源的位置:既然光源按照入射角反射,因此光源的位置对获取高对比度的图像很重要。光源的目标是要达到使感兴趣的特征与其周围的背景对光源的反射不同。预测光源如何在物体表面反射就可以决定出光源的位置。
表面形状:一个球形表面反射光源的方式与平面物体不近相同。物体表面的形状越复杂,其表面的光源变化也随之而复杂。对应一个抛光的镜面表面,光源需要在不同的角度照射。从不同角度照射可以减小光影。
均匀的光源会补偿物体表面的角度变化,即使物体表面的几何形状不同,光源在各部分的反射也是均匀的。
|
|
|
|
一旦选择了照明技术,接下来就是选择何种光源的问题了。光源应该照明形状的需要,需要有足够的均匀度,且稳定性能要好。在机器视觉应用中选择光源应该考虑下面的有关光源的特性:
费用:许多光源需要在视觉系统的使用过程中更换。如果光源很昂贵,在机器视觉的使用过程中可能会增大后期费用。另外,光源应该在市场上较容易购买。
To the purpose of treating Lighting as a science, I suggest to consider four basic dimensions.
· How does the part direct the light which illuminates it?
· What is the effect the part has on the color content of the light?
· What is the effect the part has on the polarization of the light?
· How effectively does the part transfer the light?
Problem Characterizers (continued):
Problem Characterizers (continued):
Problem Characterizers (continued):
Problem Characterizers (continued):
· How important is the inspection function?
· What are the long-run demand trends?
· What are the costs in a competitive market of not being automated?
· What would be the cost of any retraining?
· Containing sharp radii (tapered).
· Fixed distance (large) viewing.
· Circularly polarized lighting
· Laser illumination for glass thickness
· Apodized (masked) front illumination
· 实际应用部分:专为某一特定领域的视觉系统,所提供的软件工具。如BGA检测。
面对不同公司的视觉软件包时,该如何作出正确的选择?根据上面所讲“软件包的基本功能与构成”一节,就其中较重要的部分,下面我们一一作出分析。
我们首先要考虑的问题是:哪一家公司的软件更加容易使用,即在此软件包基础上作二次开始,是否容易上手、能否缩短开发时间。从以下几个方面来考虑:
A. 开发硬件环境:此软件包在您公司所选用的电脑硬件系统下是否能正常运行。如,是否支持PCI接口、显示卡等。
B. 开发操作系统;此软件包在您们公司所选用的操作系统下能否正常运行。如,是否支持WIN2000,Linux等等。
C. 开发语言:此软件包是否适用于您们公司所选用的开发语言。如,使用VC++,VB、CPB、DELPHI等语言作二次开发,是否简单易用。
当然我们还要对比不同公司的软件包,在图像处理方面的功能的优劣。
u 图像欲处理功能:图像欲处理功能(如,二值化、边缘锐化、反差调节等等),可以提高图像分析速度、简化分析工程。
u 字符读取功能(OCR):对于那些主要应用于各种字符读取的视觉系统来说,此功能尤为重要。
u 数据读取功能:目前,绝大多数公司的软件包中,都带有条形码、二维码的读取功能。大家所要注意的是,不同软件应付在不良情况的能力,如,光源不足、图像不清、源码残缺等情况。
u 接口功能:软件包是否能够方便地与其他软件或控件接口,一起运行。
u 其他辅助功能:除以上所讲的各功能以外。各视觉公司,又各自开发出一些其他非图像处理的软件工具,以方便开发者使用。如,数据分析工具(SPC)、图像显示工具、画图工具等等。
Recommended products
推荐产品
Recommended video
推荐视频
Recommended news
推荐新闻