張煜文
摘要:針對(duì)泡罩藥品包裝人工檢測(cè)存在的易疲勞、檢測(cè)效率不高的弊端,利用機(jī)器視覺(jué)技術(shù)設(shè)計(jì)一套基于嵌入式linux和達(dá)芬奇技術(shù)TMS320DM365處理器平臺(tái)的藥品包裝在線檢測(cè)系統(tǒng)。文章將差分進(jìn)化算法與最大類(lèi)間方差相結(jié)合,進(jìn)行分割閾值求取,獲得了很好的圖像分割效果,進(jìn)一步提高識(shí)別的準(zhǔn)確率。并且充分考慮系統(tǒng)實(shí)時(shí)性的需求,從軟硬件詳述了系統(tǒng)的工作原理。
關(guān)鍵詞:機(jī)器視覺(jué);TMS320DM365;LINUX;目標(biāo)識(shí)別
中圖分類(lèi)號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)07-1668-03
Design of Pharmaceutical Packaging Inspection System Based on DSP
ZHANG Yu-wen
(Xian University of Architecture and Technology, Xian 710055,China)
Abstract: For manual inspection of the blister drug packaging exist liable FatigueLow detection efficiency, using of machine vision technology to design a pharmaceutical packaging inspection system based on embedded linux and DaVinci technology TMS320DM365 Processor platform. In combination with the differential evolution algorithm and the OTSU algorithm Calculate the Segmentation Threshold. And give full consideration to the needs of real-time, Detailed description of the system working principle by Software and hardware.
Key words: machine vision; TMS320DM365; LINUX; target recognition
1概述
醫(yī)藥包裝作為我國(guó)包裝領(lǐng)域一支非?;钴S的分支,其不斷更新與進(jìn)步見(jiàn)證了包裝工業(yè)的飛速發(fā)展。然而目前,高速度。低效益、高消耗的粗放型增長(zhǎng)是我國(guó)醫(yī)藥包裝發(fā)展的典型特征,國(guó)內(nèi)大多數(shù)醫(yī)藥產(chǎn)品的包裝質(zhì)量檔次偏低,與發(fā)達(dá)國(guó)家還存在較大差距。藥品包裝的方式主要有瓶裝、袋裝、鋁塑泡罩包裝三種。近年來(lái),藥品的鋁塑泡罩包裝在我國(guó)得到了快速發(fā)展。由于在包裝過(guò)程中,會(huì)出現(xiàn)藥品漏裝、缺損、污漬和蚊蟲(chóng)粘附等情況,因此藥品包裝的質(zhì)量檢測(cè)成為制藥行業(yè)生產(chǎn)過(guò)程中的一個(gè)重要環(huán)節(jié)。然而,傳統(tǒng)的人工檢測(cè)會(huì)增加檢測(cè)時(shí)間,又提高了生產(chǎn)成本,而且不能保證精確度。所以,需要一種可靠的自動(dòng)識(shí)別系統(tǒng)來(lái)代替繁瑣的人工。
本文利用高速、高性能處理器和圖像處理技術(shù),設(shè)計(jì)一套基于DSP數(shù)字圖像處理器的藥品包裝檢測(cè)系統(tǒng)。
2系統(tǒng)硬件結(jié)構(gòu)
圖1系統(tǒng)總體框圖
此系統(tǒng)包括三部分,分別是圖像采集前端、中央處理單元和剔除機(jī)構(gòu)。
2.1圖像采集前端
圖像采集前端包括光源、采集攝像頭、圖像解碼器三部分。
2.1.1光源
光源是機(jī)器視覺(jué)系統(tǒng)中的重要組成部分,它直接影響輸入數(shù)據(jù)的質(zhì)量。光源引起的誤差很難在后期處理中消除,從而影響整個(gè)系統(tǒng)的識(shí)別準(zhǔn)確度。照明系統(tǒng)應(yīng)該盡量避免其他燈管對(duì)此的影響。而且要使被測(cè)對(duì)象和周?chē)h(huán)境盡量分開(kāi);比如目標(biāo)和背景之間的灰度值差別盡量大,可提高目標(biāo)邊緣的對(duì)比度,以減少后續(xù)的圖像處理難度,減少處理器的計(jì)算量,提高圖像處理效率[1]。
2.1.2采集攝像頭
圖像采集攝像頭按照傳感器分為CCD和CMOS兩類(lèi)相機(jī)。CCD和CMOS相機(jī)各有優(yōu)點(diǎn)。CCD相機(jī)的優(yōu)點(diǎn)是噪音相對(duì)較小,信噪比大;缺點(diǎn)是生產(chǎn)工藝復(fù)雜、成本高、功耗較大。CMOS相機(jī)優(yōu)點(diǎn)是集成度高、功耗低、成本要低于CCD相機(jī);缺點(diǎn)是噪音比較大。從原理上,CMOS的信號(hào)是以點(diǎn)為單位的電荷信號(hào),而CCD是以行為單位的電流信號(hào),前者更為敏感,速度也更快。隨著CMOS相機(jī)技術(shù)的快速成熟,在信噪比、及成像的差距越來(lái)越??;CMOS相機(jī)的低功耗,又使系統(tǒng)對(duì)供電電源的要求有所降低;而且介于CMOS相機(jī)的價(jià)格優(yōu)勢(shì),所以本設(shè)計(jì)選用CMOS相機(jī)做為采集系統(tǒng)的傳感器。
2.1.3視頻解碼器
在設(shè)計(jì)好光源及相機(jī)后,模擬圖像就能順利的被采集進(jìn)來(lái)。之后選用TI公司的TVP5150AM芯片作為輸入模擬視頻信號(hào)的A/D解碼。此芯片采用14.318 18 MHz晶振,數(shù)字和模擬輸入電壓為1.8 V,IO口電壓為3.3 V;是一款超低功耗的高性能混合信號(hào)視頻解碼芯片,可自動(dòng)識(shí)別NTSC/PAL/SECAM制式的模擬信號(hào)。信號(hào)輸入有CH1和CH2兩路,并且都進(jìn)行阻抗匹配設(shè)計(jì),防止對(duì)輸入信號(hào)的反射;YOUT[0:7]輸出8路YCbCr信號(hào),消隱信號(hào)可選擇單獨(dú)引腳HSYNC和VSYNC輸出,或者內(nèi)嵌于這8路信號(hào)中。PCLK/SCLK腳時(shí)鐘信號(hào)可輸出13.5 MHz和27 MHz兩種頻率。最終,TVP5150模塊將由CMOS攝像頭獲取的模擬視頻信號(hào)解碼成符合ITU-R BT.656標(biāo)準(zhǔn)的數(shù)字視頻信號(hào),輸出8位Y:Cb:Cr=4:2:2的數(shù)字信號(hào),將此數(shù)字信號(hào)送入處理器進(jìn)行圖像的進(jìn)一步處理。
圖2 TVP5150應(yīng)用電路圖
2.2中央處理單元
中央處理器選用TI公司的TM320DM365處理器進(jìn)行圖像的計(jì)算和處理。TI公司TMS320DM365是一款面向多媒體技術(shù)應(yīng)用的高性能,低功耗芯片。有很強(qiáng)的視頻圖像處理能力和較快的運(yùn)行速度。內(nèi)核方面TMS320DM365集成ARM926F_J—S[7]。H.264協(xié)處理器(HDVICP),MPEG4/JPEG協(xié)處理器(MJCP),能以1080p格式與10幀/s的速度提供H.264編解碼功能。和以1080p格式與24幀/s的速度提供MPEG4編解碼功能,以及以720p格式與30幀/s的速度提供H.264或MPEG4編解碼功能。
DM365中的IPIPE,即可編程硬件圖像處理模塊。它把從攝像頭中輸出的原始圖像轉(zhuǎn)換成為YCbCr-4:2:2格式的數(shù)據(jù)。同時(shí),IPIPE中的圖像縮放器可以獨(dú)立完成YCbCr-4:2:2圖像的縮放[6]。
HDVICP是協(xié)處理器,它是一個(gè)專(zhuān)用的多標(biāo)準(zhǔn)高清視頻編碼/解碼引擎。它支持H.264和WMV-9/VC-1,DM365的性能也通過(guò)IPIPE、HDVICP來(lái)增強(qiáng)。系統(tǒng)通過(guò)TI公司的TPS54316構(gòu)成電源模塊,來(lái)提供處理器的3.3V I/0管腳電壓以及1.8V內(nèi)核電壓。TPS54316最大輸出電流為3A,還有六種可變電壓供選擇,分別是0.9V,1.2V,1.5V,1.8V,2.5V,3.3V。
存儲(chǔ)模塊使用MT47H64M16HR3型號(hào)的DDR2, DM365處理器通過(guò)外部存儲(chǔ)器接口EMIF支持外擴(kuò)256MB的SRAM。本系統(tǒng)選用128MB的外部SRAM完成前部視頻采集回來(lái)的圖像數(shù)據(jù)以及處理器處理過(guò)的數(shù)據(jù)存儲(chǔ)。
通過(guò)JTAG來(lái)調(diào)試程序,作為下載接口。DM365通過(guò)I2C總線來(lái)完成控制TVP5150以及設(shè)置它的寄存器實(shí)現(xiàn)特定的功能。
3系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)的視頻采集前端攝像頭采集圖像數(shù)據(jù)并將采集的原始數(shù)據(jù)送入視頻解碼器TVP5150中進(jìn)行數(shù)據(jù)解碼,在它里面將模擬圖像數(shù)據(jù)進(jìn)行抗混疊濾波預(yù)處理、模擬數(shù)字化轉(zhuǎn)換及亮度/色度、水平/垂直同步信號(hào)的分離,實(shí)現(xiàn)模擬信號(hào)轉(zhuǎn)換成數(shù)字8位并行信號(hào)。送入處理器的數(shù)據(jù)并使用H.264算法將數(shù)據(jù)進(jìn)行壓縮,存入DDR2中。將DDR2分為兩個(gè)Bank,Bank0和Bank1。Bank0用來(lái)存放未經(jīng)處理器處理的圖像數(shù)據(jù),bank1用來(lái)存放處理器處理過(guò)的圖像。引入Linux操作系統(tǒng)來(lái)管理和分配片上資源,提高運(yùn)行效率。首先完成Linux對(duì)DM365內(nèi)核的裁剪,加入DDR2、液晶顯示等驅(qū)動(dòng)。其中nor flash中存放Linux內(nèi)核和bootloader。其次,對(duì)獲取的數(shù)據(jù)進(jìn)行壓縮、預(yù)處理。在預(yù)處理中,對(duì)圖像進(jìn)行圖像增強(qiáng),即對(duì)圖像進(jìn)行改進(jìn)的中值濾波[9]。改進(jìn)的中值濾波方法思想是對(duì)含有噪聲的圖像上的每一點(diǎn)都以其為中心選取一個(gè)NxN的區(qū)域(考慮到計(jì)算量和時(shí)間的原因N選取5,即5維濾波窗口),在該區(qū)域內(nèi)找到灰度的中值。區(qū)域內(nèi)的每一點(diǎn)都以該中值為中心計(jì)算其權(quán)值。當(dāng)某點(diǎn)的灰度值越接近中值其權(quán)值也越大.反之權(quán)值也就越小。這樣做給噪聲點(diǎn)的賦值非常小,在做累加的時(shí)候噪聲點(diǎn)的值可以忽略,由此可以濾除一部分噪聲點(diǎn)。同時(shí)累加類(lèi)似于均值濾波,可以抑制高斯噪聲??梢院芎玫奶幚淼魣D像的噪聲,大大提高了圖像識(shí)別的準(zhǔn)確率。
圖3 DM365處理器及外圍器件框圖
對(duì)于圖像的閾值分割是關(guān)鍵的一步,閾值選取的好壞直接影響識(shí)別的結(jié)果。本文提出先運(yùn)用差分進(jìn)化算法對(duì)圖像求去最優(yōu)解T,即最佳分割閾值;然后在之前所求的最優(yōu)解T的基礎(chǔ)上選取動(dòng)態(tài)值t,在[T-t,T+t]范圍內(nèi)再求圖像中像素最大類(lèi)間方差,得到最終的分割閾值。
軟件實(shí)現(xiàn)的步驟:
1)圖像預(yù)處理,將圖像灰度化。
2)初始化種群,使用隨機(jī)函數(shù)得到初始值。
3)確定適應(yīng)度函數(shù),并計(jì)算種群中每個(gè)個(gè)體的適應(yīng)度值。
4)變異操作:在種群中隨機(jī)的選取兩個(gè)個(gè)體并求其差值,將差值乘以變異因子加到當(dāng)前個(gè)體上來(lái)完成變異操作。
5)交叉操作:隨機(jī)地從種群中選取一個(gè)不比當(dāng)前向量的適應(yīng)度低的個(gè)體作為當(dāng)前個(gè)體的交叉對(duì)象。
6)選擇操作:在完成變異操作和交叉操作之后得到的個(gè)體成為試驗(yàn)個(gè)體,比較當(dāng)前個(gè)體與試驗(yàn)個(gè)體的適應(yīng)度值,選擇適應(yīng)度值較高的個(gè)體進(jìn)入下一代。
7)檢查是否達(dá)到最大迭代次數(shù)。若是,則退出循環(huán);否則,返回(3)。
8)將進(jìn)化過(guò)程中適應(yīng)度值最大的個(gè)體作為算法所求得的最優(yōu)結(jié)果,即找到了最優(yōu)閾值T。
9)設(shè)置動(dòng)態(tài)閾值t在[T-t,T+t]范圍內(nèi)計(jì)算最大類(lèi)間方差,從而得到最終分割閾值(該文中選取t=3)。
圖4軟件流程框圖
4結(jié)束語(yǔ)
本文提出一種基于TMS320 DM365處理器的泡罩藥品包裝在線檢測(cè)系統(tǒng)設(shè)計(jì)。利用了DM365處理器對(duì)圖像高速的處理能力,提高了系統(tǒng)的實(shí)時(shí)性。通過(guò)對(duì)系統(tǒng)的測(cè)試,系統(tǒng)能實(shí)現(xiàn)之前預(yù)期的功能,可以達(dá)到90%以上的識(shí)別率。該系統(tǒng)成本低,維護(hù)簡(jiǎn)單具有一定的實(shí)用性。
參考文獻(xiàn):
[1] TAHIR N M, HUSSAIN A, MUSTAFA M, et al. Fourier descriptor for pedestrian shape recognition using support vector machine[C]//Proc
of the IEEE International Symposium on Signal Processing and Information Technology, 2007:636-641.
[2] NAN H, CHEUNG S, THINH N. Secure image filtering[C]//Proc of IEEE International Symposium on Image Processing, 2006:1553-1556.
[3] RAMADAN A. Qualitative assessment of 3D flows using a flow visualization technique[J].Measurement, 2008, 41(4):433-445.
[4]王耀南,李樹(shù)濤.計(jì)算機(jī)圖像處理與識(shí)別技術(shù)[M].北京:高等教育出版社, 2003: 138-144.
[5]任麗香,馬淑芬,李方慧. TMS320C6000系列DSPs的原理與應(yīng)用[M].北京:電子工業(yè)出版社, 2001:79-406.
[6]孫金偉.基于DSP的機(jī)器視覺(jué)系統(tǒng)[D].廣州:華南理工大學(xué),2004.
[7]秦臻,曹劍中.基于TMS320DM365的高速網(wǎng)絡(luò)攝像機(jī)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2011,19(10)121-124.
[8]蔡葉菁,彭濤,何靜.等機(jī)器視覺(jué)在包裝檢測(cè)過(guò)程中的應(yīng)用研究[J].包裝工程,2003,24(2)10-14.
[9]程轉(zhuǎn)偉,頡潭成.圖像處理技術(shù)在表面缺陷檢測(cè)中的應(yīng)用[J].微計(jì)算機(jī)信息,2008(5):312-314.
[10]蘇光大.微機(jī)圖像處理系統(tǒng)[M].北京:清華大學(xué)出版社,2000:130-218.