影像增强器是对微弱光信号进行放大的光电图像增强设备,人们可以利用它在光线较弱的情况(如夜晚)下观察外界景物或目标。影像增强器的电路系统制造的好坏直接影响它的质量。不合格的电系统会使影像增强器在使用时容易产生黑斑(电路虚焊)、亮点(电路短路)、闪光和忽明忽暗(电路不稳定)等故障。因此在影像增强器投入使用之前,必须对其可靠性指标进行考核试验。
近几年,随着计算机技术和数字图像处理技术的不断发展,机器视觉在医学图像、工业生产、质量检测等领域得到了广泛的应用。而虚拟仪器(Virtual Instruments)技术可通过软件将通用计算机与硬件结合起来快速构成可靠的测试或测控系统。笔者将机器视觉技术与虚拟仪器技术结合起来,开发了基于虚拟仪器的影像增强器可靠性检测机器视觉系统(以下简称可靠性试验系统),取得了较好的效果。
系统结构和工作原理
整个系统分为光机分系统和监测与记录分系统(图1)。光机分系统为影像增强器模拟实际工作环境下的光应力、电应力并提供试验时影像增强器的摆放支架,包括光源、大小两级积分球、毛玻璃、光阑、透过率板、平行光管、夜视仪支架、光应力切换运动装置和发光强度探测器等。 监测与记录分系统不仅实时识别、记录影像增强器目镜处产生的黑斑、亮点、闪光和忽明忽暗等故障,还记录与故障图像对应的试验环境参数,最后再对这些试验数据进行分析处理,给出对影像增强器质量的合理评价。考虑系统的实时性的要求和效率,监测与记录分系统设计为分布式结构,由四台图像机和一台管理机经HUB连接为星型网络。每台图像机上安装的图像采集卡PCI-1407与CCD摄像机连接,以配合故障图像识别与处理软件监测、记录相应影像增强器目镜处的故障图像。为了解决故障图像实时存盘问题,每台图像机上还安装了磁盘阵列控制器。管理机上安装有多动能数据采集卡PCI-6024E,以配合管理机软件监测记录试验过程中的各项参数、控制光机部分的光应力切换、电应力开关、增减等。控制箱和适配器是光机分系统和检测与记录分系统的接口,它一方面将来自监测与记录分系统的控制信号转换为运动机构可识别的信号,另一方面将光机部分和其它部分的试验参数转换为监测与记录分系统可识别的电信号,这样两个分系统便形成一个整体。
系统工作时,操作人员首先在管理机上对试验条件(如所需要的电应力)进行设置,然后, 管理机协调(通过网络上各进程间的通讯)整个系统进行自检,确保各设备准备就绪。自检完成后,管理机按照操作员设置的试验条件对试验条件进行自动设置后才开始进行试验。在试验循环的每个工作循环中,各图像机首先在不出现故障(由算法和操作人员目测保证)的情况下获得标准图像,此后与图像机所联接的CCD摄像机不断将影像增强器目镜处的图像转换为标准的视频信号输入到图像采集卡,图像采集卡对视频信号进行分解、采集后将其转换为数字信号并输送计算机进行处理,图像机上的故障图像识别与处理软件对数字图像信号进行实时处理,并识别图像中是否存在故障,如果存在故障便保存,否则继续判断下一帧。管理机在试验过程中对每帧图像对应的试验环境参数进行同步监测并将它们记录到数据库中。每个工作循环结束后,管理机控制施加到影像增强器的电应力关闭,确保影像增强器休息,同时控制光机分系统的运动机构改变光阑和透过率板,进行光应力切换,以保证下一个工作循环开始前光应力准备就绪。如此重复,直到完成整个试验的多个试验循环为止。
开发过程中用虚拟仪器开发平台NI LabVIEW5.0 PDS和机器视觉软件开发平台NI IMAQ Vision 5.0再结合NI SQL ToolKit快速开发大部分软件模块。为了提高软件的处理速度用VC++6.0开发底层的故障识别程序,并利用LabVIEW的CIN接口将用C语言编写的程序嵌入整合到软件系统中。用Power Builder 6.0和MS SQL Server 7.0开发状态数据管理模块。用LabVIEW与NI DataSockect编写数据通讯和系统管理模块。这些软件模块分别安装在管理机和图像机上,并且各图像机的软件和配置完全相同,如果要对系统进行扩展,只需要将按图像的配置要求配置的计算机连接到网络中即可。
系统使用的技术特点
可靠性检测系统的技术特点有效地保证了系统的正常运行。
系统在非常规光源下进行工作
影像增强器用于对微弱的外界光线进行放大,其目镜处物像的亮度大约几十个勒克斯左右,图像的噪声非常大,对故障识别带来了很大难度。解决问题的办法是在不同的照度下,用LabVIEW和IMAQ Vision编写程序自动调整图像采集卡的黑白电平和CCD曝光系数,保证故障提取在较高的信噪比下进行。
系统有很强的实时性
按照指标要求,系统要在80ms内进行图像采集、预处理、故障识别、图像存储等一系列操作,对实时性要求很高。主要采用两个办法解决实时性问题,一是采用磁盘阵列技术,一是用VC编写故障识别软件。按照要识别的故障黑斑、亮点、闪光和忽明忽暗灰度阈值依次降低,面积阈值依次增加的特征,系统中用灰度和面积作为特征参数进行故障识别。用VC编写程序使故障图像和标准图像相减后的结果进行一次腐蚀,再按照所设置的阈值识别故障。将编写的程序编译成.lsb格式,用CIN接点嵌入到LabVIEW程序中。经测试此程序对一帧故障图像进行识别一般需要30ms,完全满足系统的要求。
图像高速流盘
系统中采用的另外一个提高系统实时性的手段是RAID(磁盘阵列)技术。RAID按照不同的存储性能、数据安全性和存储成本有RAID0 到 6 七种基本的级别和一些基本RAID级别的组合形式。RAID0(有时也称作Stripe或Striping)可以让多个磁盘并行的执行系统的某个数据请求,把连续的数据分散到多个磁盘上存取,这样就有效解决了磁盘I/O与CPU处理速度之间的瓶颈问题。系统中每台图像机上的硬盘组都通过RAID接口卡连接到系统中来提高系统的实时性。
分布式同步数据采集与控制
整个系统由一台管理计算机和四台图像机协同完成计算工作,在工作过程中有严格的时序关系。在用NI DataSocket编写的通信模块中,发信者每发出消息给受信者,必须得到受信者的确认后才进行后续工作,这种机制很好的保证了整个系统协调工作。另一方面,为了便于事后区分从属故障,要求保存每一幅故障图像时同时记录对应的系统状态。为此采取同频、同相和同时启动的同步机制。同频是指图像采集和状态采集的频率相同;同相是指将从任一图像采集卡解析出的同步视频信号连接到其他三个CCD的同步输入端,保证四个CCD送到图像采集卡的视频信号相位相同;另外,图像采集卡和数据采集卡的触发端子连接在一起,并且都工作在触发状态下,任一图像采集卡发出触发信号后,整个系统开始动作。
结语
在将虚拟仪器技术与机器视觉技术结合起来实现整个系统的过程中,为了提高系统的实时性,故障识别部分用VC++来完成。编写完成的算法被编译为虚拟仪器开发平台LabVIEW的CIN接口支持的格式后嵌入整个软件系统。经过测试,使用这种软件整合方式和算法后系统对故障图像进行处理的时间加上图像采集与存盘的时间,总共耗时不超过40毫秒,完全满足指标的要求,同时,利用虚拟仪器开发平台来完成其擅长的控制功能,开发者只需要专注与系统功能的完整性而不必考虑复杂的细节,这就极大的发挥了虚拟仪器的性能,使系统有很强的灵活性和扩展性,并节省了开发所应支付的费用,提高了系统的性能价格比。
图1 系统整体结构示意图
上一篇:普通运放的仪表放大器
下一篇:比较ADC的孔径延迟
推荐阅读最新更新时间:2023-10-12 20:34