2.4 摄像机-计算机接口
作用:
1、将模拟或数字视频信号传送到计算机,并重构成灰度或彩色矩阵图像。
所需设备:
1、模拟视频信号需要图像采集卡,数字视频信号需要图像采集卡或某种标准接口卡,如IEEE1394卡、USB卡和千兆网卡。
2.4.1 模拟视频信号
1、模拟视频传输会导致图像质量变差,降低测量准确度和精度,而数字视频可避免此类问题,故机器视觉常用数字信号传输。
模拟视频标准:
1、EIA-170和CCIR是黑白视频标准,NTSC和PAL是彩色视频标准。
2、EIA-170和CCIR的图像都是两场隔行传输,但EIA-170先偶数行再奇数行,CCIR与之相反。
3、隔行传输会出现锯齿,机器视觉采用逐行扫描模式。
彩色视频信号传输方式 | 优缺点 |
---|---|
单线传输 将色度调制到含有亮度信息的标准视频信号 |
优点:黑白接收器可解码彩色信号 缺点:亮度信号需经过低通滤波器来抑制亮色串扰 |
双线传输 亮度信号与色度信号分开传输 |
优点:无须低通滤波器,图像质量有所改进 |
三线传输 红绿蓝信号分开传输 |
优点:图像质量更好 |
模拟图像采集卡:
1、图像采集卡先从视频信号中重构图像,再通过DMA传输方式将图像保存到计算机内存。
2、若图像采集卡含有多路模数转换器(或者一路模数转换器+多路输入插座),则可采集多路视频。
3、图像采集卡在采样时通过锁相环电路重建像素时钟以对齐摄像机中的像素。
重建像素时钟造成的问题 | 后果 | 解决方法 |
---|---|---|
图像采集卡和摄像机的时钟频率不完全一致 | 采样频率不同 像素纵横比发生改变 非方像素 |
摄像机标定 |
锁相环电路不能精确重建有效行周期的开始 | 列抖动造成行偏移 垂直边缘灰度改变 |
随机列抖动:多幅图像叠加 系统列抖动:多幅图像平均 |
2.4.2 数字视频信号
1、模拟视频的同步信息嵌入在信号中,而数字视频的同步信号基于包传输,每帧的开始和结束都是显性的,图像像素宽高比与摄像机的宽高比相同,且不产生列抖动。
2、摄像机将传感器输出的电压进行模数转换,由此产生的数值串行或并行传输到图像采集卡。
3、数字摄像机图像质量更好,分辨率和帧率更高,可在软件中直接控制图像采集卡工作(模拟摄像机需要其上面的拨码开关来控制),体积更小,功耗更低。
Camera Link:
1、Camera Link定义26针MDR连接器,小一点的26针SDR连接器和HDR连接器,以及更小的14针HDR连接器,可通过Camera Link电缆供电。
2、Camera Link定义数字信号的物理传输方式。基本技术是低电压差分信号技术LVDS,该技术抗干扰能力强,传输速度非常高。
3、Camera Link由驱动器和接收器对组成。驱动器和接收器分别是摄像机和图像采集卡上的一个芯片或FPGA。两者传输28个单向的数据信号和1个的单向的时钟信号,其中数据信号串行化后分4对LVDS传输,时钟信号单独1对LVDS传输。
4、Camera Link定义4对LVDS用于一般摄像机控制(如外触发),2对LVDS用于设置与摄像机的双向通信。
5、Camera Link的配置可分为Lite配置,Base配置,Medium配置,Full配置和80bit配置。
Camera Link HS:
1、Camera Link是并行传输模式,Camera Link HS使用的是用于网络和存储设备的基于包的协议。
2、Camera Link HS定义3种摄像机和图像采集卡连接的电缆(连接器),分别是C2,F1和F2,不支持通过电缆供电。
3、Camera Link HS在物理层和数据链路层定义M协议和X协议。M协议与C2和F1连接器配合使用,X协议与F2配合使用,两个协议都提供纠错功能。
4、Camera Link HS在协议层规定消息基协议,对不同优先级使用不同的消息类型(脉冲信息,确认信息,GPIO信息,视频信息,控制信息)。
5、 Camera Link HS定义图像数据传输(黑白、Raw、Bayer、BGR、BGR独立通道),支持矩形感兴趣区域。
CoaXPress:
1、CoaXPress使用同轴光缆(用于传输模拟视频)进行高速数据传输。
2、CoaXPress定义可使用常用的BNC连接器或更小的DIN1.0/2.3连接器,多个DIN可组合成多路连接器,可通过同轴电缆供电。
3、CoaXPress为运输数据而定义基于包的协议,这可避免受单一位错误的影响,使协议便于发现错误。
4、CoaXPress定义一组逻辑通道(I/O、流数据和设备控制)和特定数据包类型(触发、流、控制)。
5、与Camera Link HS不同,CoaXPress不支持发送数据到多个采集卡,没有重传机制,没有GPIO包,支持矩形和任意形状感兴趣区域。
IEEE1394(火线):
1、IEEE1394是高速串行总线标准,使用6针连接器,数据传输时使用2对双绞线传输信号,2根电缆分别用于电源和地线,对于低功耗产品可直接使用电缆供电,而无需额外电源。IEEE1394还定义带锁固的连接器用于锁固电缆防止意外脱开。
2、目前标准数字接口主要是USB和网络接口,IEEE1394摄像机的使用呈下降趋势。
3、IIDC是针对工业摄像机而对IEEE1394所做的修订,定义多种视频输出格式(分辨率、帧率、传输的像素数据格式),标准化设置和控制摄像机的方法(曝光、光圈、增益、外触发、外触发延时、摄像机上下左右旋转),定义和规范摄像机内部的用于控制摄像机的寄存器。
4、IEEE1394定义异步传输和等时传输两种数据传输模式,异步传输不能为数据保证一个固定带宽,故不能传输数字视频信号。IIDC使用异步模式传输与摄像机往来的控制信号,摄像机使用等时传输发送数字视频信号。
5、Camera Link、Camera Link HS、CoaXPress和IEEE1394都需要图像采集卡。
USB2.0:
1、USB使用4针连接器,2根电缆用于信号传输、另外2根电缆用于电源和地线,对于低功耗产品可以不外接电源,没有锁紧插头或其它固定防止电缆意外脱落的规范。
2、USB虽然有视频类规范,但不包括机器视觉的要求,故机器视觉的USB摄像机厂商使用自己的传输协议或设备驱动来传输图像。
3、USB是定义4种数据传输类型:控制传输、批量传输、中断传输和等时传输。视频数据常用等时传输或批量传输方式。
USB3 Vision:
1、USB2.0是半双工(双向不同时),使用轮询总线,USB3.1是全双工(双向同时),设备可异步向主机申请。USB3.1通过电缆供电。USB3.1摄像机与USB2.0摄像机一样使用专用协议控制摄像机和图像数据流。
2、USB3.1在使用SuperSpeed和SuperSpeed+传输数据时,使用与USB2.0完全不同的物理层,在低速时与USB2.0兼容,使用独立的USB2.0总线。
3、USB3 Vision是针对机器视觉摄像机的规范,定义如何设置、控制摄像机以及如何传输图像数据,还定义可用螺钉固定的连接器以防止摄像机被意外拔掉。
4、USB3 Vision控制协议(U3VCP)用于设置和控制摄像机,USB3 Vision传输流协议(U3VSP)用于图像传输。U3VSP依次传输头、图像数据和尾,支持传输一般图像数据和数据块数据。
GigE Vision:
1、GigE Vision标准化的机器视觉摄像机应用层协议,高数据率、不需要图像采集卡,电缆和连接器非常便宜,使用铜线可同时供电,使用光缆不能供电。
2、IEEE1394和USB是即插即用总线(设备自动在总线上宣布自己的存在,并有标准方式来描述设备本身),GigE Vision连接网络必须获取IP地址。
3、GigE Vision定义GigE Vision控制协议(GVCP)用于控制摄像机,定义GigE Vision流协议(GVSP)用于通过流通道传递实际的图像数据。GVSP传输图像时发送数据头包,数据载荷包和数据尾包,支持一般图像数据和数据块数据。
4、GigE Vision通过GVCP信息提供同时触发多个摄像机的机制,通过IP多点传送的特征可将GVSP包同时传输到多个主机。
2.4.3 通用接口
GemICam:
1、若换用的摄像机型号或图像采集卡不同,则需要重新编写采集软件。HALCON提供通用采集接口使用户在更换摄像机或图像采集卡基本不用重新编程。
2、GemICam提供独立于底层通信技术的设置和控制摄像机的通用编程。
3、GemICam要求摄像机必须提供摄像机每个特征的XML文件并给出每个特征与摄像机上控制寄存器间的映射关系。
4、Gen Api是GemICam参考实现版本3.0.2,用于设置GUI;GemICam SFNC是GemICam标准特性命名规范版本2.3;GemICam PFNC是GemICam像素格式命名规范版本2.1;GemICam GenCP规范基于通用包的控制协议用于主机和摄像机间信息交换,定义对应的包布局;GemICam CL Protocol描述GemICam是如何基于Camera Link串行通信机制使用的。
GemICam GenTL:
1、GemICam和GenApi仅定义设置和控制摄像机的机制和API,用户需自己在传输层实现图像数据和控制信号的传输机制,而GemICam GenTL便是传输层规范。
2、GemICam GenTL定义抽象传输层软件API,可不依赖于实际传输层(如Camera Link、Camera Link HS、CoaXpress、USB3 Vision、Gige Vision或非标传输层)就能访问摄像机并采集图像。
2.4.4 图像采集模式
1、自由采集模式:摄像机不受外触发信号影响而按固定帧率传送图像。
2、异步复位模式:驱动和应用不必等待帧开始。
3、排队采集模式:因为开始采集命令需要占用一些时间,为确保每个触发信号或每一帧都不会丢失,便在驱动中事先安排好采集的命令。
4、连续采集模式:应用程序不再需要发出开始采集命令,在完成一幅图像传输后,摄像机和驱动自动准备好采集下一幅图像,同样可以确保每个触发信号或每一帧都不会丢失。
5、同步图像采集:图像采集和处理必须等待图像传送。缺点:应用程序浪费许多时间用于等待图像采集和传输。
6、异步图像采集:在采集当前图像时处理上一图像。优点:若处理时间小于帧周期,每一帧都可以处理一副图像。
7、当图像采集必须与外部事件同步时通常使用异步复位摄像机异步采集。如当被测物到达采集位置时,触发设备(接近开关或光电传感器)产生触发信号。