机器视觉基本概念学习笔记6

电子说

1.3w人已加入

描述

4、图像采集卡

图像采集卡被作为视频信号从相机到电脑之间传输的桥梁。采集卡有多种总线形式,比如最常见的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总线的图像采集系统框图如图所示。图中的缓存(数据锁存器)代替了帧存储器,这个缓存是一片容量小、控制简单的先进先出(FIFO)存储器,起到图像卡向PCI总线传送视频数据时的速度匹配作用。将图像卡插在计算机的PCI插槽中,与计算机内存、CPU、显示卡等之间形成调整数据传送。

机器视觉

图像采集卡的基本结构

上图显示了图像采集卡的基本结构。首先,同步分离器将同步脉冲从输入的视频信号中分离。水平同步表明新的一行的开始,垂直同步表明新的一场或一帧的开始。通常在视频信号与采集卡相连接后,在采集卡工作稳定之前还需要获取三帧图像的时间,当需要在一个视频源与另一个视频源之间切换时,这就可能产生麻烦。

为了避免这么长时间的初始化,视频源必须由外部同步,从而所有相机的水平同步与垂直同步都是同步的,这就是锁相机制。幸好一些采集卡都带有用于产生同步信号来锁相的同步发生器。但是,必须知道这些同步信号是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.分辨率支持

采集卡能支持的最大点阵反映了其分辨率的性能。一般采集卡能支持768576点阵,而性能优异的采集卡其支持的最大点阵可达64K64K。单行最大点数和单帧最大行数也可反映采集卡的分辨率性能。

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时间,又会在实时显示时由于不同步而带来闪烁,如果采用“非破坏性覆盖”则可消除这些不利因素。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分