何 陽(yáng),尤 暉,鄭常寶
(1.安徽大學(xué)電氣工程及其自動(dòng)化學(xué)院,安徽合肥 230601;2.;中國(guó)科學(xué)院合肥智能機(jī)械研究所,安徽合肥 230031;3.安徽大學(xué)工業(yè)節(jié)能與電能質(zhì)量控制協(xié)同創(chuàng)新中心,安徽合肥 230601)
微陣列芯片在基因檢測(cè)等領(lǐng)域有著廣泛的應(yīng)用,對(duì)于芯片的質(zhì)量,非接觸式微陣列點(diǎn)樣儀起到了至關(guān)重要的作用[1]。在制備芯片的過(guò)程中,點(diǎn)樣噴頭通過(guò)擠壓或振動(dòng)的方式來(lái)激發(fā)液滴噴射[2],將樣品以微液滴的形態(tài)噴射到芯片表面,但現(xiàn)有的非接觸式點(diǎn)樣儀在長(zhǎng)時(shí)間連續(xù)點(diǎn)樣后期會(huì)出現(xiàn)液滴大小不均勻的問(wèn)題[3],本文結(jié)合圖像識(shí)別技術(shù)設(shè)計(jì)了一種非接觸式微陣列點(diǎn)樣控制監(jiān)測(cè)系統(tǒng)。該系統(tǒng)通過(guò)LabVIEW軟件控制攝像頭進(jìn)行液滴圖像的采集,并調(diào)用MATLAB對(duì)圖像進(jìn)行在線處理,通過(guò)背景差法結(jié)合Sobel算子對(duì)圖像中液滴進(jìn)行邊緣檢測(cè),再標(biāo)簽化處理并提取微陣列中各液滴的面積、周長(zhǎng)、弧度等特征構(gòu)造數(shù)據(jù)庫(kù)進(jìn)行BP神經(jīng)網(wǎng)絡(luò)識(shí)別,并搭建了相應(yīng)的硬件試驗(yàn)平臺(tái)用以測(cè)試。試驗(yàn)表明,所設(shè)計(jì)的系統(tǒng)具有良好的點(diǎn)樣和識(shí)別效果,能識(shí)別出不符合標(biāo)準(zhǔn)的微陣列液滴,并可根據(jù)實(shí)際需求適當(dāng)補(bǔ)償液滴大小,使長(zhǎng)時(shí)間連續(xù)點(diǎn)樣后期液滴趨于穩(wěn)定。
圖1 點(diǎn)樣儀結(jié)構(gòu)原理示意圖
設(shè)計(jì)的非接觸式點(diǎn)樣儀控制系統(tǒng)如圖1所示,系統(tǒng)由步進(jìn)電機(jī)運(yùn)動(dòng)控制、點(diǎn)樣噴頭驅(qū)動(dòng)電路、攝像頭模塊、通信模塊及電源模塊等部分組成。操作人員可在上位機(jī)中利用LabVIEW軟件設(shè)計(jì)的人機(jī)交互界面控制點(diǎn)樣儀平臺(tái),通過(guò)串口通信將運(yùn)動(dòng)參數(shù)傳遞給下位機(jī),下位機(jī)STM32控制2部?jī)上嗷旌鲜讲竭M(jìn)電機(jī)為點(diǎn)樣頭提供傳動(dòng)裝置,點(diǎn)樣噴頭在引動(dòng)到指定位置后,由下位機(jī)控制點(diǎn)樣噴頭產(chǎn)生液滴。最后,通過(guò)攝像頭捕捉微陣列液滴圖像,以監(jiān)測(cè)液滴噴發(fā)效果。
系統(tǒng)控制器采用STM32芯片為核心,主要完成的功能有:與上位機(jī)進(jìn)行數(shù)據(jù)通訊、控制攝像頭模塊、控制步進(jìn)電機(jī)運(yùn)動(dòng)、激發(fā)點(diǎn)樣噴頭等,控制電路的硬件框架圖如圖2所示。
圖2 控制電路的硬件框架
為實(shí)現(xiàn)微陣列點(diǎn)樣,點(diǎn)樣噴頭采用多個(gè)噴發(fā)單元集成的方式[4],點(diǎn)樣噴頭的結(jié)構(gòu)如圖3所示。
圖3 點(diǎn)樣噴頭的結(jié)構(gòu)圖
噴頭的激發(fā)裝置是由彈性薄片在兩面對(duì)稱粘貼極化方向相反的2片壓電陶瓷晶片組成。在工作時(shí),通過(guò)點(diǎn)樣頭驅(qū)動(dòng)電路對(duì)左右兩片壓電陶瓷交替施加脈沖電壓,由于逆壓電效應(yīng),兩晶片會(huì)在脈沖電壓作用下交替伸長(zhǎng)和縮短,產(chǎn)生沖擊波。當(dāng)沖擊波傳遞至噴孔處時(shí),在噴孔處將產(chǎn)生一個(gè)液柱并發(fā)生縮頸,從而與噴孔斷開(kāi),形成液滴。點(diǎn)樣液的物理性質(zhì)、點(diǎn)樣頭噴孔內(nèi)徑、壓電陶瓷的驅(qū)動(dòng)電壓、驅(qū)動(dòng)頻率等參數(shù)都會(huì)對(duì)點(diǎn)樣過(guò)程造成影響。韋伯系數(shù)可用于判定液滴能否從噴孔處成功脫落[5]:
12 (1) 式中:ρ為液體密度;d為點(diǎn)樣頭噴孔內(nèi)徑;v為點(diǎn)樣針末端液體流速;r為液體表面張力系數(shù)。 式(1)中,v由壓電陶瓷的驅(qū)動(dòng)電壓幅值決定,將會(huì)在下文的實(shí)驗(yàn)中進(jìn)行研究。為了滿足實(shí)際應(yīng)用的需要,為壓電陶瓷雙晶片提供90~150 V的電壓,系統(tǒng)采用OP27和PA08搭建前級(jí)驅(qū)動(dòng)電路和后級(jí)放大電路,以實(shí)現(xiàn)可編程增益功率放大的作用,直接由MCU控制調(diào)節(jié)功率放大器的增益,以調(diào)節(jié)噴發(fā)液滴的大小。 系統(tǒng)選擇松下CMOS圖像傳感器JT-1600B構(gòu)建攝像頭模塊,其USB接口便于圖像快速上傳給PC機(jī)處理。 在軟件部分,系統(tǒng)通過(guò)LabVIEW實(shí)現(xiàn)對(duì)USB攝像頭的控制進(jìn)行液滴圖像采集,為了彌補(bǔ)LabVIEW圖像處理算法的局限性,在LabVIEW中調(diào)用了MATLAB Script函數(shù),通過(guò)MATLAB對(duì)圖像進(jìn)行在線處理。點(diǎn)樣儀液滴的監(jiān)測(cè)程序由圖像采集和處理、液滴特征提取和神經(jīng)網(wǎng)絡(luò)識(shí)別這幾部分組成,具體實(shí)現(xiàn)的流程圖如圖4所示。 圖4 液滴識(shí)別流補(bǔ)償流程圖 采集到的液滴圖像需要進(jìn)行預(yù)處理,以便進(jìn)行后續(xù)的特征提取,圖像的預(yù)處理包括:圖像灰度化、濾波去噪、銳化增強(qiáng)等。通過(guò)攝像頭采集到的彩色圖像所需存儲(chǔ)容量大,計(jì)算復(fù)雜,因此需要把采集的彩色圖像轉(zhuǎn)換成灰度圖像,如圖5(a)所示;對(duì)于圖像中的噪聲問(wèn)題采用中值濾波的方法進(jìn)行處理,這是基于排序統(tǒng)計(jì)理論的一種能有效抑制噪聲的非線性信號(hào)處理技術(shù),經(jīng)反復(fù)對(duì)比后采用3×3的模板進(jìn)行中值濾波,將模板中心點(diǎn)用該點(diǎn)的一個(gè)鄰域中各點(diǎn)值的中值代替,讓周圍的像素值接近真實(shí)值,從而消除孤立的噪聲點(diǎn)。中值濾波對(duì)于濾除圖像中的椒鹽噪聲非常有效[6],去噪后的圖像如圖5(b)所示。 為了突出液滴的邊緣和輪廓信息,去噪后的圖像采用反銳化掩模的方法對(duì)圖像進(jìn)行銳化處理,它是一種常用的圖像銳化方法,能有效地提高圖像中高頻成分,使去噪后的模糊圖像變得清晰且輪廓分明,其數(shù)學(xué)表達(dá)式如下: g(x,y)=f(x,y)+C[f(x,y)-f′(x,y)] (2) 式中:f(x,y)為原始圖像;f′(x,y)為經(jīng)過(guò)中值濾波后的模糊圖像;g(x,y)為經(jīng)過(guò)反銳化掩膜算法處理后的圖像;C為比例系數(shù),經(jīng)反復(fù)測(cè)試后C值取2.35,銳化后的結(jié)果如圖5(c)所示。 (a)灰度圖像 (b)去噪后圖像 (c)銳化后圖像圖5 預(yù)處理后的微陣列液滴圖像 預(yù)處理后利用閾值分割結(jié)合邊緣檢測(cè)的方式對(duì)圖像進(jìn)行目標(biāo)分割,根據(jù)液滴與背景灰度值的差別選取閾值,對(duì)去噪、增強(qiáng)對(duì)比度后的圖像進(jìn)行二值化處理,分割出目標(biāo)后,由于原始圖像中灰度分布不均勻和光照等的影響,可能在目標(biāo)液滴中會(huì)出現(xiàn)空洞或個(gè)別邊緣處出現(xiàn)斷裂情況等,如圖6(a)所示,因此要對(duì)圖像進(jìn)行邊緣檢測(cè)以彌補(bǔ)斷裂的邊緣部分。采用Sobel算子進(jìn)行邊緣檢測(cè),它是最重要的微分算子之一,可以降低邊緣模糊程度。利用Sobel算子進(jìn)行邊緣檢測(cè)的結(jié)果如圖6(b)所示,可以清晰地看到液滴的邊緣。再利用OR運(yùn)算結(jié)合二值化處理和邊緣信息,去除斷邊,利用數(shù)學(xué)形態(tài)學(xué)重新填充一下圖像中的洞,最終處理后的圖像如圖6(c)所示。 (a)二值化圖像 (b)邊緣檢測(cè)圖像(c)OR運(yùn)算填充后圖像圖6 目標(biāo)分割后圖像 在液滴識(shí)別的過(guò)程中難免會(huì)有由于背景中的干擾而造成的識(shí)別誤差,故引入了背景差分法初步排除在背景中的干擾因素。本文通過(guò)幀間差法來(lái)實(shí)現(xiàn)背景差分的功能[8],即在微陣列液滴未滴落前捕獲背景圖像,再等到液滴滴落后捕獲液滴圖像,通過(guò)兩者的幀間差分圖像,以差分出目標(biāo)微陣列液滴,其數(shù)學(xué)表達(dá)式如下: (3) 式中:fm(x,y,t)為背景差前圖像;fn(x,y,t)為背景圖像;fi(x,y,t)為背景差后的二值圖像;X為設(shè)定閾值,為了使背景對(duì)目標(biāo)液滴帶來(lái)的影響降低到最小,這里X經(jīng)多次驗(yàn)證后取0.55。 背景差分圖像如圖7所示。 (a)背景差前圖像 (b)背景圖像 (c)背景差后圖像圖7 背景差分圖像 經(jīng)過(guò)前面幾個(gè)步驟的處理以后,液滴和背景已經(jīng)很明顯地被區(qū)分開(kāi)來(lái),但由于點(diǎn)樣后期各噴發(fā)單元自身穩(wěn)定性等原因,微陣列中各液滴的大小會(huì)有所變化,故需要對(duì)各個(gè)液滴經(jīng)行特征提取,以區(qū)分不滿足要求的液滴。先對(duì)圖像進(jìn)行標(biāo)簽化處理,將不同液滴賦予不同的標(biāo)號(hào)以方便后續(xù)提取每個(gè)液滴各自特征,包括面積特征、周長(zhǎng)特征、弧度特征。經(jīng)過(guò)標(biāo)簽化處理的液滴圖像在各自區(qū)域有著不同的標(biāo)簽號(hào),統(tǒng)計(jì)各自區(qū)域內(nèi)標(biāo)號(hào)的像素?cái)?shù)量即可得到液滴的面積特征;計(jì)算出物體輪廓線上的像素?cái)?shù)可得到周長(zhǎng)特征,但由于斜方向上數(shù)字化圖形特有的誤差,故以二倍量加以補(bǔ)充;弧度是在面積和周長(zhǎng)的基礎(chǔ)上測(cè)量的特征量;通過(guò)弧度的計(jì)算,可以將圖中大液滴有效地識(shí)別出來(lái),標(biāo)簽化處理后的圖像(為方便區(qū)分填充了不同顏色)如圖8所示。 圖8 標(biāo)簽化處理后圖像 經(jīng)圖像識(shí)別處理后的3種情況下液滴的特征參數(shù)如表1所示,可以看出只有當(dāng)單個(gè)液滴面積在300~600;周長(zhǎng)在80~120、弧度在0.55~0.65時(shí),才滿足微陣列液滴標(biāo)準(zhǔn),并由此建立了液滴數(shù)據(jù)庫(kù),為后期識(shí)別試驗(yàn)做相應(yīng)準(zhǔn)備。 表1 液滴特征參數(shù) BP神經(jīng)網(wǎng)絡(luò)是一種按照誤差逆向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)[9],近些年來(lái),其在圖像識(shí)別領(lǐng)域得到越來(lái)越廣泛的應(yīng)用。它是一種按誤差反向傳播訓(xùn)練的多層前饋網(wǎng)絡(luò),在本系統(tǒng)中采用3層網(wǎng)絡(luò)對(duì)液滴圖像進(jìn)行識(shí)別,主要是將標(biāo)準(zhǔn)液滴與不符合要求的大液滴和小液滴區(qū)分開(kāi)來(lái)。具體流程如下: (1)確定輸入層的個(gè)數(shù)m=3,即液滴圖像的特征參數(shù)(IN1,IN2,IN3),其中IN1為面積參數(shù);IN2為周長(zhǎng)參數(shù);IN3為弧度參數(shù)。 (2)確定輸出層的個(gè)數(shù)n=3,即液滴識(shí)別輸出值O∈[0,1],O∈[0,0.25]為“小液滴”;O∈[0.75,1]為“大液滴”;O∈[0.25,0.75]為“標(biāo)準(zhǔn)液滴”。 (3)通過(guò)式(4)確定隱藏節(jié)點(diǎn)個(gè)數(shù)。 (4) 式中:h為隱藏層節(jié)點(diǎn)數(shù);m為輸入層的個(gè)數(shù);n為輸出層的個(gè)數(shù);a為1~10之間的常數(shù)。 通過(guò)仿真對(duì)比得到當(dāng)隱藏層節(jié)點(diǎn)數(shù)為12時(shí),效果最好。 (4)將連接權(quán)值Wji和Wki置為(-1,1)之間的隨機(jī)數(shù)。 (5)信息正向傳遞時(shí)將IN1、IN2、IN3輸入,通過(guò)連接權(quán)值Wji得到隱含層的輸入: (6)同理,輸出層的輸入為 并通過(guò)輸出層傳遞函數(shù)(Sigmoid函數(shù)),即 (5) 可得到輸出層的輸出為 Y(k)=f[nex2(k)] (7)BP網(wǎng)絡(luò)的反向傳播。輸出層的實(shí)際輸出為Y(k),期望輸出為O(k),樣本模型的均方差為 (6) 求輸出層和隱含層的學(xué)習(xí)誤差dk和dj,調(diào)整權(quán)值Wji和Wki,循環(huán)上述步驟(5)到(7),直至滿足目標(biāo)誤差0.01。 (8)利用上面訓(xùn)練得到的權(quán)值對(duì)新數(shù)據(jù)進(jìn)行檢驗(yàn),輸出識(shí)別結(jié)果。 為了驗(yàn)證系統(tǒng)設(shè)計(jì)的可行性,使用前期搭建的實(shí)驗(yàn)平臺(tái)驗(yàn)證該系統(tǒng)的點(diǎn)樣性能,如圖9所示。 圖9 點(diǎn)樣儀樣機(jī)實(shí)物圖 本文測(cè)試了不同幅值的脈沖波對(duì)生成液滴產(chǎn)生的影響。實(shí)驗(yàn)采用4個(gè)獨(dú)立的點(diǎn)樣噴頭,噴孔孔徑為150 μm,在信號(hào)頻率為1 Hz、脈寬為50 ms的脈沖信號(hào),電壓幅值的變化范圍為90~150 V的條件下分別進(jìn)行多次試驗(yàn),實(shí)驗(yàn)結(jié)果取平均值如圖10所示。 圖10 驅(qū)動(dòng)電壓的幅度對(duì)液滴體積的影響 根據(jù)實(shí)驗(yàn)結(jié)果分析可得,脈沖電壓幅值會(huì)影響生成液滴的大小,電壓需要達(dá)到一個(gè)特定的閾值后,才會(huì)有液滴生成,且隨著電壓增大,液滴的增大是呈階梯狀的,在實(shí)際點(diǎn)樣中可以根據(jù)所需液滴體積大小調(diào)節(jié)電壓幅值。 本文對(duì)所搭建的圖像識(shí)別系統(tǒng)進(jìn)行了相關(guān)測(cè)試,經(jīng)過(guò)200幅液滴圖像的訓(xùn)練樣本訓(xùn)練,使BP神經(jīng)網(wǎng)絡(luò)的識(shí)別正確率接近100%,并通過(guò)訓(xùn)練曲線可以看出該曲線收斂,說(shuō)明訓(xùn)練成功,可以用來(lái)進(jìn)行微陣列液滴的監(jiān)測(cè),BP網(wǎng)絡(luò)訓(xùn)練仿真曲線圖如圖11所示。 圖11 BP網(wǎng)絡(luò)訓(xùn)練仿真曲線 根據(jù)研究得出的電壓脈沖幅值對(duì)液滴大小的影響,對(duì)點(diǎn)樣后期液滴變小、不均勻等情況進(jìn)行了電壓補(bǔ)償,每次監(jiān)測(cè)到液滴變小時(shí)提高10 V供電電壓,并對(duì)系統(tǒng)做了對(duì)照試驗(yàn),即有圖像識(shí)別補(bǔ)償系統(tǒng)后和無(wú)補(bǔ)償系統(tǒng)前的差別對(duì)比。連續(xù)500次點(diǎn)樣,并每間隔10次對(duì)微陣列液滴進(jìn)行圖像捕獲,用接觸角測(cè)量?jī)x從側(cè)面觀測(cè)并計(jì)算其液滴大小,并統(tǒng)計(jì)微陣列液滴圖像中滿足要求液滴的個(gè)數(shù),試驗(yàn)結(jié)果如圖12所示。 圖12 連續(xù)點(diǎn)樣實(shí)驗(yàn)結(jié)果 5 結(jié)束語(yǔ) 本文研制了一種基于圖像識(shí)別的非接觸式微陣列點(diǎn)樣控制系統(tǒng),解決了現(xiàn)有非接觸式微陣列點(diǎn)樣儀在長(zhǎng)時(shí)間連續(xù)點(diǎn)樣后期液滴體積變小,大小不均勻等問(wèn)題,該系統(tǒng)可驅(qū)動(dòng)由壓電陶瓷雙晶片組成的儲(chǔ)液腔式點(diǎn)樣噴頭根據(jù)實(shí)際需求產(chǎn)生體積為2~10 nL的微陣列液滴,并可通過(guò)圖像識(shí)別技術(shù)對(duì)點(diǎn)樣后期不符合標(biāo)準(zhǔn)的微陣列液滴進(jìn)行識(shí)別并適當(dāng)補(bǔ)償,使長(zhǎng)時(shí)間連續(xù)點(diǎn)樣后期液滴趨于穩(wěn)定,使點(diǎn)樣后期不到60%的液滴合格率,到達(dá)94%以上,滿足實(shí)際應(yīng)用的要求,對(duì)非接觸式微陣列點(diǎn)樣儀的自動(dòng)化研究具有借鑒意義。2.3 攝像頭模塊
3 液滴識(shí)別系統(tǒng)軟件設(shè)計(jì)
3.1 圖像預(yù)處理
3.2 目標(biāo)分割
3.3 背景差分
3.4 特征提取
3.5 BP神經(jīng)網(wǎng)絡(luò)識(shí)別
4 實(shí)驗(yàn)及分析