文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2012)09-0128-03
ARM(Advanced RISC Machines)是主控制CPU,可以提供豐富的接口與外界進(jìn)行通信,其應(yīng)用領(lǐng)域已遍及工業(yè)控制、消費(fèi)類電子、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、無線系統(tǒng)等各類產(chǎn)品[1-2]?;贒SP(Digital Signal Processor)的圖像處理硬件平臺在圖像數(shù)據(jù)壓縮、運(yùn)算處理、運(yùn)動模糊圖像的恢復(fù)、圖像特征提取等方面的應(yīng)用具有不可替代的優(yōu)勢,普遍用作數(shù)字圖像處理系統(tǒng)的核心硬件[3]。ARM+DSP構(gòu)成了實(shí)時(shí)機(jī)器視覺技術(shù)的核心部件。隨著機(jī)器視覺技術(shù)在農(nóng)業(yè)領(lǐng)域應(yīng)用中的廣泛開展,實(shí)時(shí)地進(jìn)行農(nóng)作物害蟲識別成為研究熱點(diǎn)。
農(nóng)田害蟲識別系統(tǒng)以農(nóng)作物害蟲為研究對象,系統(tǒng)的核心是在ARM+DSP技術(shù)框架支撐下設(shè)計(jì)一個(gè)農(nóng)田害蟲識別硬件系統(tǒng)。本系統(tǒng)的開發(fā)是將原來的PC處理移植至ARM+DSP的嵌入式系統(tǒng)處理,設(shè)計(jì)目的是實(shí)現(xiàn)農(nóng)作物害蟲的實(shí)時(shí)識別。
1 系統(tǒng)設(shè)計(jì)方案
系統(tǒng)分為ARM控制系統(tǒng)、DSP識別系統(tǒng)和后臺處理子系統(tǒng)。ARM控制系統(tǒng)選用ARM9為主處理器,負(fù)責(zé)控制DSP的算法處理,并可將采集到的視頻和圖像用H.264算法壓縮傳輸?shù)胶笈_服務(wù)器;DSP識別系統(tǒng)外接攝像機(jī)得到處理對象,內(nèi)部由DSP最小系統(tǒng)構(gòu)成,內(nèi)嵌害蟲處理算法實(shí)時(shí)處理采集到的圖像;后臺處理子系統(tǒng)是在服務(wù)器上安裝對應(yīng)軟件,接收ARM+DSP處理系統(tǒng)傳來的結(jié)果,并加以存儲和顯示, 進(jìn)一步傳遞給用戶。圖1為系統(tǒng)設(shè)計(jì)框架圖。
2 硬件系統(tǒng)設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)采用ARM+DSP的雙核架構(gòu),ARM選用TI公司的DM365處理器,DSP選用TI公司的DM6437處理器,DM365和DM6437之間采用SPI串口進(jìn)行通信。DM365和DM6437同時(shí)收到視頻圖像信號,DM365采用H.264算法進(jìn)行壓縮后傳輸?shù)胶笈_服務(wù)器,DM6437對視頻幀圖像處理,從而識別害蟲。
2.1 ARM控制系統(tǒng)
系統(tǒng)采用的核心控制芯片是基于ARM9處理器的TMS320DM365芯片。DM365作為一款多媒體處理器,具有極其強(qiáng)大的視頻輸入輸出端口,尤其在控制方面提高了其配置和使用的簡易性[2]。
由于DM365的視頻前端需要接入數(shù)字視頻信號,所以系統(tǒng)采用了TVP5146視頻A/D轉(zhuǎn)換芯片。攝像機(jī)實(shí)時(shí)采集視頻圖像并將之轉(zhuǎn)換成模擬視頻信號,視頻電纜將模擬視頻信號送入TVP5146芯片,轉(zhuǎn)換成的數(shù)字視頻信號通過DM365硬件連線將一幅完整的視頻幀傳送輸入DM365[2]。
DM365庫里自帶H.264壓縮算法,H.264是一個(gè)新的數(shù)字視頻編碼標(biāo)準(zhǔn),它采用回歸基本的簡捷設(shè)計(jì),具有很高的編碼效率,碼流結(jié)構(gòu)網(wǎng)絡(luò)適應(yīng)性強(qiáng),增加了差錯(cuò)恢復(fù)能力,能夠很好地適應(yīng)IP和無線網(wǎng)絡(luò)的應(yīng)用。其基本系統(tǒng)是開放的,使用無需版權(quán)。
2.2 DSP識別系統(tǒng)
2.2.1 TMS320DM6437B
系統(tǒng)算法核心處理器采用TI公司的TMS320DM6437B。DM6437達(dá)芬奇處理器是TI公司新一代高性能數(shù)字媒體處理器,工作頻率達(dá) 600 MHz,擁有以下出色性能:短1.67 ns的指令周期、每個(gè)時(shí)鐘周期可并行執(zhí)行8個(gè)32 bit的C64x+指令、 處理性能高達(dá)4 800 MIPS、功能豐富的視頻處理系統(tǒng)。系統(tǒng)支持CCD和CMOS圖像傳感器接口,實(shí)時(shí)圖像處理預(yù)覽引擎,對通用視頻解碼器的無縫接口等[3]。
2.2.2 視頻接口
系統(tǒng)采用2路標(biāo)準(zhǔn)模擬視頻輸入和1路模擬視頻輸出。2路標(biāo)準(zhǔn)模擬視頻輸入。通過相應(yīng)的控制位進(jìn)行選擇,每次只能選擇其中1路。視頻解碼器選用TVP5150APBS,視頻編碼器選用SAA7105H。視頻解碼器和編碼器均支持標(biāo)準(zhǔn)的NTSC和PAL格式模擬視頻。DM6437處理的對象就是TVP5150APBS解碼器輸入的一幀一幀的圖像,然后再將處理結(jié)果通過SAA7105H編碼器一幀一幀地送到液晶TV[4]。
2.3 ARM與DSP的通信設(shè)計(jì)
ARM與DSP雙核工作機(jī)制中,ARM設(shè)置為主處理器,DSP設(shè)置為協(xié)處理器,之間采用SPI串口通信。SPI是一個(gè)同步協(xié)議接口,所有的傳輸都參照一個(gè)共同的時(shí)鐘CLOCK,這個(gè)同步時(shí)鐘信號由主機(jī)產(chǎn)生,從機(jī)使用時(shí)鐘對串行比特流的接收進(jìn)行同步化。主機(jī)和從機(jī)都包含一個(gè)串行移位寄存器,主機(jī)通過向SPI串行寄存器寫入一個(gè)字節(jié)來發(fā)起一次傳輸。寄存器通過主輸出從輸入數(shù)據(jù)線MOSI(Master Output Slave Input)信號線將字節(jié)傳送給從機(jī),從機(jī)也將自己移位寄存器中的內(nèi)容通過主輸入從輸出數(shù)據(jù)線MISO(Master Input Slave Output)信號線返回給主機(jī),這樣,兩個(gè)移位寄存器中的內(nèi)容就被交換了。還有一根可選的從選信號線SPI_EN,可以用于使能從機(jī)輸出。由于本系統(tǒng)使用SPI_EN,所以必須保證SPI_EN在上電時(shí)為高電平,否則在上電后,從機(jī)將首先收到一個(gè)偽數(shù)據(jù)。因此實(shí)現(xiàn) SPI接口需要4根線,其通信接口框架如圖2所示[5]。
3 算法設(shè)計(jì)及實(shí)驗(yàn)
DM6437中的算法設(shè)計(jì)主要包括圖像采集、圖像的二值化、基于數(shù)學(xué)形態(tài)學(xué)的噪聲去除及基于小蟲跟蹤法的害蟲輪廓提取等,可通過H.264壓縮算法由DM365經(jīng)網(wǎng)絡(luò)傳送到后臺服務(wù)器。本系統(tǒng)選取稻飛虱作為識別對象,采用仿真方式驗(yàn)證算法,仿真器選用北京瑞泰公司的ICETEK-XDS560,實(shí)驗(yàn)時(shí)在CCS3.3中VIEW菜單或通過SAA7105H編碼器送到液晶TV觀察具體結(jié)果。圖3所示為通過Graph菜單選項(xiàng)顯示采集到的2張稻飛虱圖像。
3.1 圖像二值化及形態(tài)學(xué)去噪
當(dāng)采集到稻飛虱的圖像后,首先進(jìn)行二值化處理。具體算法是設(shè)定一個(gè)灰度閾值T,將一幅灰度圖像f(x,y)中的像素分成兩類:滿足f(x,y)>T的像素和f(x,y)≤T的像素,其中前一類稱為識別目標(biāo),后一類稱為背景[6]。對于目標(biāo)可以用1取代所有像素值,背景則用0取代,這樣就實(shí)現(xiàn)了分割后圖像二值化。
二值化后的圖像經(jīng)過數(shù)學(xué)形態(tài)學(xué)運(yùn)算去噪,主要形態(tài)學(xué)運(yùn)算如下:
3.2 基于小蟲跟蹤法的輪廓提取
小蟲跟蹤法(簡稱蟲跟法),其定義如下[8]:
(1) 定義蟲, 通常是一個(gè)矩形的具有相同權(quán)值的窗口;
(2) 以當(dāng)前邊界點(diǎn)為窗口軸心;
(3) 以上一邊界點(diǎn)和當(dāng)前邊界點(diǎn)確定當(dāng)前邊界方向;
(4) 窗口在當(dāng)前邊界方向左右直角內(nèi)旋轉(zhuǎn),在每一個(gè)窗口內(nèi)確定平均梯度值對應(yīng)梯度點(diǎn);
(5) 確定具有最高平均梯度的窗口,對應(yīng)的梯度點(diǎn)作為下一邊界;
(6) 重復(fù)步驟(5),直到滿足終止條件。
根據(jù)以上算法對稻飛虱去噪后的圖像進(jìn)行邊界的提取,結(jié)果如圖5所示。
本系統(tǒng)完成了ARM+DSP的害蟲識別系統(tǒng),DM365是一個(gè)ARM9處理器芯片,庫里自帶H.264壓縮算法,使用H.264壓縮后能夠方便地傳遞到后臺服務(wù)器。ARM控制系統(tǒng)使用H.264壓縮算法將識別后的圖像以視頻形式一幀一幀壓縮后傳遞給服務(wù)器,DM6437負(fù)責(zé)處理視頻圖像,盡管是通過仿真器仿真的方式,但是DSP速度很快,實(shí)驗(yàn)證明能夠快速實(shí)時(shí)地識別稻飛虱。系統(tǒng)還需進(jìn)一步改進(jìn)和完善硬件以及算法,使之成為實(shí)際可用的害蟲識別系統(tǒng)。
參考文獻(xiàn)
[1] 余水,鄧振,蔡洪斌.基于ARM+DSP的汽車視頻黑匣子系統(tǒng)的總體設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用研究,2008,25(2): 628-630.
[2] 王雄勇.基于DM365的視頻編碼器的硬件設(shè)計(jì)[J].電子設(shè)計(jì)工程,2011,19(8):128-129,136.
[3] 胡新華,鄧元勇,王先平.基于達(dá)芬奇技術(shù)的日面活動圖像處理與識別系統(tǒng)[J].計(jì)算機(jī)應(yīng)用研究,2008,25(10):3165-3168.
[4] 馮桂蘭,田維堅(jiān),屈有山,等.實(shí)時(shí)視場拼接系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].光電工程,2007,34(4):124-127.
[5] 張巖, 馬旭東,張?jiān)品? ARM與DSP的SPI通信設(shè)計(jì)實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2008(9):56-57,66.
[6] 劉俊,吳謹(jǐn).一種基于梯度的直方圖閾值圖像分割改進(jìn)方法[J].計(jì)算機(jī)與數(shù)字工程,2010,38(4):131-133.
[7] 任獲榮.數(shù)學(xué)形態(tài)學(xué)及其應(yīng)用[D].西安:西安電子科技大學(xué),2004.
[8] 馬俊福,周曉軍,徐志農(nóng),等.基于計(jì)算機(jī)視覺的鍛件尺寸檢測[J].組合機(jī)床與自動化加工技術(shù)檢測,2007(11):48-50.