基于虛擬儀器的質(zhì)量檢測機(jī)器視覺系統(tǒng)的設(shè)計
影像增強器是對微弱光信號進(jìn)行放大的光電圖像增強設(shè)備,人們可以利用它在光線較弱的情況(如夜晚)下觀察外界景物或目標(biāo)。影像增強器的電路系統(tǒng)制造的好壞直接影響它的質(zhì)量。不合格的電系統(tǒng)會使影像增強器在使用時容易產(chǎn)生黑斑(電路虛焊)、亮點(電路短路)、閃光和忽明忽暗(電路不穩(wěn)定)等故障。因此在影像增強器投入使用之前,必須對其可靠性指標(biāo)進(jìn)行考核試驗。
近幾年,隨著計算機(jī)技術(shù)和數(shù)字圖像處理技術(shù)的不斷發(fā)展,機(jī)器視覺在醫(yī)學(xué)圖像、工業(yè)生產(chǎn)、質(zhì)量檢測等領(lǐng)域得到了廣泛的應(yīng)用。而虛擬儀器(Virtual Instruments)技術(shù)可通過軟件將通用計算機(jī)與硬件結(jié)合起來快速構(gòu)成可靠的測試或測控系統(tǒng)。筆者將機(jī)器視覺技術(shù)與虛擬儀器技術(shù)結(jié)合起來,開發(fā)了基于虛擬儀器的影像增強器可靠性檢測機(jī)器視覺系統(tǒng)(以下簡稱可靠性試驗系統(tǒng)),取得了較好的效果。
系統(tǒng)結(jié)構(gòu)和工作原理
整個系統(tǒng)分為光機(jī)分系統(tǒng)和監(jiān)測與記錄分系統(tǒng)(圖1)。光機(jī)分系統(tǒng)為影像增強器模擬實際工作環(huán)境下的光應(yīng)力、電應(yīng)力并提供試驗時影像增強器的擺放支架,包括光源、大小兩級積分球、毛玻璃、光闌、透過率板、平行光管、夜視儀支架、光應(yīng)力切換運動裝置和發(fā)光強度探測器等。 監(jiān)測與記錄分系統(tǒng)不僅實時識別、記錄影像增強器目鏡處產(chǎn)生的黑斑、亮點、閃光和忽明忽暗等故障,還記錄與故障圖像對應(yīng)的試驗環(huán)境參數(shù),最后再對這些試驗數(shù)據(jù)進(jìn)行分析處理,給出對影像增強器質(zhì)量的合理評價??紤]系統(tǒng)的實時性的要求和效率,監(jiān)測與記錄分系統(tǒng)設(shè)計為分布式結(jié)構(gòu),由四臺圖像機(jī)和一臺管理機(jī)經(jīng)HUB連接為星型網(wǎng)絡(luò)。每臺圖像機(jī)上安裝的圖像采集卡PCI-1407與CCD攝像機(jī)連接,以配合故障圖像識別與處理軟件監(jiān)測、記錄相應(yīng)影像增強器目鏡處的故障圖像。為了解決故障圖像實時存盤問題,每臺圖像機(jī)上還安裝了磁盤陣列控制器。管理機(jī)上安裝有多動能數(shù)據(jù)采集卡PCI-6024E,以配合管理機(jī)軟件監(jiān)測記錄試驗過程中的各項參數(shù)、控制光機(jī)部分的光應(yīng)力切換、電應(yīng)力開關(guān)、增減等??刂葡浜瓦m配器是光機(jī)分系統(tǒng)和檢測與記錄分系統(tǒng)的接口,它一方面將來自監(jiān)測與記錄分系統(tǒng)的控制信號轉(zhuǎn)換為運動機(jī)構(gòu)可識別的信號,另一方面將光機(jī)部分和其它部分的試驗參數(shù)轉(zhuǎn)換為監(jiān)測與記錄分系統(tǒng)可識別的電信號,這樣兩個分系統(tǒng)便形成一個整體。
系統(tǒng)工作時,操作人員首先在管理機(jī)上對試驗條件(如所需要的電應(yīng)力)進(jìn)行設(shè)置,然后, 管理機(jī)協(xié)調(diào)(通過網(wǎng)絡(luò)上各進(jìn)程間的通訊)整個系統(tǒng)進(jìn)行自檢,確保各設(shè)備準(zhǔn)備就緒。自檢完成后,管理機(jī)按照操作員設(shè)置的試驗條件對試驗條件進(jìn)行自動設(shè)置后才開始進(jìn)行試驗。在試驗循環(huán)的每個工作循環(huán)中,各圖像機(jī)首先在不出現(xiàn)故障(由算法和操作人員目測保證)的情況下獲得標(biāo)準(zhǔn)圖像,此后與圖像機(jī)所聯(lián)接的CCD攝像機(jī)不斷將影像增強器目鏡處的圖像轉(zhuǎn)換為標(biāo)準(zhǔn)的視頻信號輸入到圖像采集卡,圖像采集卡對視頻信號進(jìn)行分解、采集后將其轉(zhuǎn)換為數(shù)字信號并輸送計算機(jī)進(jìn)行處理,圖像機(jī)上的故障圖像識別與處理軟件對數(shù)字圖像信號進(jìn)行實時處理,并識別圖像中是否存在故障,如果存在故障便保存,否則繼續(xù)判斷下一幀。管理機(jī)在試驗過程中對每幀圖像對應(yīng)的試驗環(huán)境參數(shù)進(jìn)行同步監(jiān)測并將它們記錄到數(shù)據(jù)庫中。每個工作循環(huán)結(jié)束后,管理機(jī)控制施加到影像增強器的電應(yīng)力關(guān)閉,確保影像增強器休息,同時控制光機(jī)分系統(tǒng)的運動機(jī)構(gòu)改變光闌和透過率板,進(jìn)行光應(yīng)力切換,以保證下一個工作循環(huán)開始前光應(yīng)力準(zhǔn)備就緒。如此重復(fù),直到完成整個試驗的多個試驗循環(huán)為止。
開發(fā)過程中用虛擬儀器開發(fā)平臺NI LabVIEW5.0 PDS和機(jī)器視覺軟件開發(fā)平臺NI IMAQ Vision 5.0再結(jié)合NI SQL ToolKit快速開發(fā)大部分軟件模塊。為了提高軟件的處理速度用VC++6.0開發(fā)底層的故障識別程序,并利用LabVIEW的CIN接口將用C語言編寫的程序嵌入整合到軟件系統(tǒng)中。用Power Builder 6.0和MS SQL Server 7.0開發(fā)狀態(tài)數(shù)據(jù)管理模塊。用LabVIEW與NI DataSockect編寫數(shù)據(jù)通訊和系統(tǒng)管理模塊。這些軟件模塊分別安裝在管理機(jī)和圖像機(jī)上,并且各圖像機(jī)的軟件和配置完全相同,如果要對系統(tǒng)進(jìn)行擴(kuò)展,只需要將按圖像的配置要求配置的計算機(jī)連接到網(wǎng)絡(luò)中即可。
系統(tǒng)使用的技術(shù)特點
可靠性檢測系統(tǒng)的技術(shù)特點有效地保證了系統(tǒng)的正常運行。
系統(tǒng)在非常規(guī)光源下進(jìn)行工作
影像增強器用于對微弱的外界光線進(jìn)行放大,其目鏡處物像的亮度大約幾十個勒克斯左右,圖像的噪聲非常大,對故障識別帶來了很大難度。解決問題的辦法是在不同的照度下,用LabVIEW和IMAQ Vision編寫程序自動調(diào)整圖像采集卡的黑白電平和CCD曝光系數(shù),保證故障提取在較高的信噪比下進(jìn)行。
系統(tǒng)有很強的實時性
按照指標(biāo)要求,系統(tǒng)要在80ms內(nèi)進(jìn)行圖像采集、預(yù)處理、故障識別、圖像存儲等一系列操作,對實時性要求很高。主要采用兩個辦法解決實時性問題,一是采用磁盤陣列技術(shù),一是用VC編寫故障識別軟件。按照要識別的故障黑斑、亮點、閃光和忽明忽暗灰度閾值依次降低,面積閾值依次增加的特征,系統(tǒng)中用灰度和面積作為特征參數(shù)進(jìn)行故障識別。用VC編寫程序使故障圖像和標(biāo)準(zhǔn)圖像相減后的結(jié)果進(jìn)行一次腐蝕,再按照所設(shè)置的閾值識別故障。將編寫的程序編譯成.lsb格式,用CIN接點嵌入到LabVIEW程序中。經(jīng)測試此程序?qū)σ粠收蠄D像進(jìn)行識別一般需要30ms,完全滿足系統(tǒng)的要求。
圖像高速流盤
系統(tǒng)中采用的另外一個提高系統(tǒng)實時性的手段是RAID(磁盤陣列)技術(shù)。RAID按照不同的存儲性能、數(shù)據(jù)安全性和存儲成本有RAID0 到 6 七種基本的級別和一些基本RAID級別的組合形式。RAID0(有時也稱作Stripe或Striping)可以讓多個磁盤并行的執(zhí)行系統(tǒng)的某個數(shù)據(jù)請求,把連續(xù)的數(shù)據(jù)分散到多個磁盤上存取,這樣就有效解決了磁盤I/O與CPU處理速度之間的瓶頸問題。系統(tǒng)中每臺圖像機(jī)上的硬盤組都通過RAID接口卡連接到系統(tǒng)中來提高系統(tǒng)的實時性。
分布式同步數(shù)據(jù)采集與控制
整個系統(tǒng)由一臺管理計算機(jī)和四臺圖像機(jī)協(xié)同完成計算工作,在工作過程中有嚴(yán)格的時序關(guān)系。在用NI DataSocket編寫的通信模塊中,發(fā)信者每發(fā)出消息給受信者,必須得到受信者的確認(rèn)后才進(jìn)行后續(xù)工作,這種機(jī)制很好的保證了整個系統(tǒng)協(xié)調(diào)工作。另一方面,為了便于事后區(qū)分從屬故障,要求保存每一幅故障圖像時同時記錄對應(yīng)的系統(tǒng)狀態(tài)。為此采取同頻、同相和同時啟動的同步機(jī)制。同頻是指圖像采集和狀態(tài)采集的頻率相同;同相是指將從任一圖像采集卡解析出的同步視頻信號連接到其他三個CCD的同步輸入端,保證四個CCD送到圖像采集卡的視頻信號相位相同;另外,圖像采集卡和數(shù)據(jù)采集卡的觸發(fā)端子連接在一起,并且都工作在觸發(fā)狀態(tài)下,任一圖像采集卡發(fā)出觸發(fā)信號后,整個系統(tǒng)開始動作。
結(jié)語
在將虛擬儀器技術(shù)與機(jī)器視覺技術(shù)結(jié)合起來實現(xiàn)整個系統(tǒng)的過程中,為了提高系統(tǒng)的實時性,故障識別部分用VC++來完成。編寫完成的算法被編譯為虛擬儀器開發(fā)平臺LabVIEW的CIN接口支持的格式后嵌入整個軟件系統(tǒng)。經(jīng)過測試,使用這種軟件整合方式和算法后系統(tǒng)對故障圖像進(jìn)行處理的時間加上圖像采集與存盤的時間,總共耗時不超過40毫秒,完全滿足指標(biāo)的要求,同時,利用虛擬儀器開發(fā)平臺來完成其擅長的控制功能,開發(fā)者只需要專注與系統(tǒng)功能的完整性而不必考慮復(fù)雜的細(xì)節(jié),這就極大的發(fā)揮了虛擬儀器的性能,使系統(tǒng)有很強的靈活性和擴(kuò)展性,并節(jié)省了開發(fā)所應(yīng)支付的費用,提高了系統(tǒng)的性能價格比?!?BR>參考文獻(xiàn):
1. K.R.Castleman,《數(shù)字圖像處理》,電子工業(yè)出版社,1998.9.
2. National Instruments,《Measurement and Automation Catalogue》, 2000.
3. National Instruments ,《IMAQ Vision User's Manual》,1999.
4. National Instruments ,《LabVIEW 5.0 User's Manual》,1999.
5. 何斌,馬天予等 《Visual C++數(shù)字圖像處理》,人民郵電出版社,2001.4.
圖1 系統(tǒng)整體結(jié)構(gòu)示意圖
評論