基于Matrox Meteor-Ⅱ/Digital的图像采集系统研究
摘要:针对Matrox Meteor-II/Digital图像采集卡配套软件不具有实时数据处理功能的问题,根据项目需要提出了一个基于Matrox Meteo r-Ⅱ/Digital图像采集卡的图像采集系统,并完成了系统搭建及软件设计。该系统的硬件平台由CCD、Matrox Meteor-II/Digital图像采集卡及计算机组成;软件部分基于Matrox图像采集卡的模式识别库函数(Matrox Imaging Library),用VC++多线程编程来实现连续图像采集和单帧存储及实时处理等功能。试验表明,该系统操作简单、方便,且已经在实验室正常运行。
关键词:图像采集卡;连续图像采集;单帧存储;采集处理系统;多线程编程
简单的计算机图像处理系统由摄像头、微机及图像采集卡构成,其结构简单,应用广泛。与传统的图像显示、处理比较,利用图像采集卡软件基本控制库对摄像机摄取的模拟图像信号进行数字转化,提供计算机处理所需的数字图像信号,对现有的图像文件的读取、处理,都具有实现简单、原理清晰、通用性好的优点。
在众多的图像采集产品中,加拿大Matrox公司的图像采集卡,别具特色。它用RS-422或LVDS差分信号标准,采集黑白/分量RGB,面阵/线阵信号,是一种PCI或PC/104-Plus格式视频采集卡。并且将极具价值且功能强大的函数扩展性能集成到了采集卡上,可以实时采集且将采集到的图像传输到系统内存进行处理或显存以实时活动视频窗口进行显示,速率可达130MB/s。
正因为如此,使得Matrox Meteor-Ⅱ/Digital图像采集卡脱颖而出。但是,由于其连续图像采集不能实现实时存储的功能,所以就对研究连续图像的变化、图像实时处理和分析带来了极大的不便。于是,根据项目需要,文中提出了基于Matrox Meteor-II/Digital图像采集卡的硬件平台以及其图像识别库函数(MIL)的图像采集系统,主要是在CCD摄像机的采集速率比较低(例如:在图片大小为1 024x1 024像素下,采集速率为4帧/秒)的情况下,调用MIL函数库里的单帧采集函数来实现连续图像实时采集、显示及处理,并且把实时采集到的每帧图像及处理结果都分别存储。
1 系统整体设计
针对实验室中某航天项目中需要进行图像实时采集处理的需求,结合Matrox Meteor-Ⅱ/Digital图像采集卡的硬件平台以及其图像识别库函数(MIL),经过分析得到需要设计的系统如图1所示:CCD捕捉外界的光信息并转换为电信号,该电信号经传输到图像采集卡采集,然后通过图像采集卡的PCI接口将采集到的图像数据传送到计算机,在计算机中内存中进行实时处理及存贮,并同时显示。
要想完如上功能,必须做好如下事情。图像采集卡要开辟卡上临时存贮单元,以完成图像数据的临时存贮及处理;CCD采集速率不能太高,需要满足下一幅图像信息到来之前,本副图像数据已经完成处理及存贮,这里选择CCD采集速率为4帧/秒,符合试验要求;在计算机种开辟内存,编写相应的图像处理程序。
2 采集系统硬件平台
该采集系统采用的CCD为非标准单色相机,实验室自行购置并经过改进,采集速率为4帧/秒,每帧图片大小为1024x1024像素。计算机为Windows XP系统平台,1G内存,160G硬盘,CPU频率为2.7GHz。
图像采集卡为Matrox Meteor-Ⅱ/Digital图像采集卡,该卡的主要特点如下:
a.采集数字面阵/线阵信号,包括多抽头配置
b.32-bit宽RS-422或LVDS接口(可配置4x8-bit,2x16-bit,1x32bit)
c.采样率RS-422下达到25MHz,LVDS下达到40 MHz
d. 可配置LUT(4个256x8-bit或2个4 k×16-bit)
e.触发输入,时钟输出(分离的RS-422/LVDS像素时钟(入和出),行/场同步(入和出),有效输出和两路计时器(曝光)输出)
f. PCI总线主模式32-bit/33 MHz
g.实时传输到系统或显卡
h.扩展板上缓存,确保采集
i.RS-232串口
j.软件包括Matrox Imaging Library(MIL)/ActiveMIL,MIL-Lite/ActiveMIL-Lite和Matrox Inspector
3 软件实现
Matrox公司图像采集卡带有丰富的程序库-MIL-LITE(基本控制库)和MIL(Matrox Imaging Library模式识别库),具有易于使用的特点。它通过引入“函数驱动层”,使源代码具有硬件无关性,可实现对Matrox不同图像采集卡以及不同CCD配置的操作和使用。在VC中调用图像采集卡的图像采集处理函数,就可以做到集成性好,信息获取直观,编程方便,实现图像采集任意存储的目的。故软件系统采用WindowsXP操作系统作为系统软件运行平台,在Windows XP下,利用VC++语言编程通过调用MIL库函数实现图像采集。
利用MIL库首先必须分配一个应用对象,相当于创建一个图像处理的控制和执行环境,在应用对象下可以建立多个系统,一个系统下可以建立多个数据缓存、数字转换器和数据显示,将图像文件读入数据缓存,将缓存内容放到指定的文件,这样就可以实现图像的任意存储和显示。其软件组织结构和流程图如图2所示。
评论