摘 要:由于普通PC實(shí)現(xiàn)的感興趣區(qū)域提取系統(tǒng)普遍存在耗時大、實(shí)時性差且處理精度不高等缺陷,在此利用瑞泰公司ICETEK-DM642-PCI評估板提供的TI公司的TMS320DM642芯片,DSP/BIOS的實(shí)時操作系統(tǒng),CCS集成開發(fā)環(huán)境來構(gòu)建應(yīng)用程序。應(yīng)用脈沖耦合神經(jīng)網(wǎng)絡(luò)對圖像進(jìn)行噪聲抑制,然后進(jìn)行二值分割。再利用PCNN正向自動波去除一些很小的干擾,反向自動波恢復(fù)感興趣的區(qū)域并提取出。實(shí)驗(yàn)結(jié)果表明,采用的算法能夠精確地提取出圖像中感興趣的區(qū)域。
關(guān)鍵詞: DM642; 脈沖耦合神經(jīng)網(wǎng)絡(luò); 感興趣區(qū)域提取; 二值分割
中圖分類號:TN911.7; DM642 文獻(xiàn)標(biāo)識碼:A
文章編號:1004-373X(2010)14-0144-04
Research and Implementation of Interested Region Extraction System Based on PCNN and DSP
ZHAO Guang-peng, DUAN Zhong-xing, DING You-jun
(School of Information and Control Engineering, Xi’an University of Architecture and Technology, Xi’an 710055, China)
Abstract: Because the interested region extraction algorithm based on common PC has the defects such as time-comsumption, bad real-time and poor processing accuracy, the application program is built with TI's TMS320DM642 chip provided by ICETEK-DM642-PCI evaluation board of Rite-Hite Corporation and DSP/BIOS real-time operating system under the integrated development environment of CCS, the noise suppression of image is performed by the pulse-coupled neural network, two-value segmentation is carried out, some small interference is removed by the foreward automatic wave of PCNN, the interested region is recovered by the backward automatic wave of PCNN, and then the interested region is extracted. Experimental results show that the algorithm can be used to extract the interested region of images accurately.
Keywords: DM642; pulse-coupled neural network; extraction of interestrd region; two-value segmentation
0 引 言
在圖像數(shù)據(jù)中包含著大量而繁復(fù)的信息,然而在實(shí)際應(yīng)用過程中往往需要提取出感興趣的區(qū)域。例如在醫(yī)學(xué)領(lǐng)域,對于一些醫(yī)用藥品的檢測和細(xì)胞的識別就需要能夠快速而準(zhǔn)確地提取出感興趣的區(qū)域。普通PC機(jī)實(shí)現(xiàn)的感興趣區(qū)域提取系統(tǒng)普遍存在耗時大、實(shí)時性差且處理精度不高等缺陷,是因?yàn)橛?jì)算機(jī)的硬件架構(gòu)和外圍設(shè)備存在著瓶頸,無法提升。而專門為圖像處理設(shè)計(jì)的高速數(shù)字信號處理芯片 DM642可以在一個時鐘周期內(nèi)完成一次乘操作,其處理速度要遠(yuǎn)遠(yuǎn)快于普通的PC計(jì)算機(jī),顯然更適合用于需要做大量重復(fù)乘操作的圖像處理。以往的感興趣區(qū)域提取算法都是只對于圖像進(jìn)行識別,經(jīng)常會出現(xiàn)對區(qū)域提取信息的丟失,或者精度不高。而本文給出的PCNN具有正向消除干擾和反向修復(fù)圖像的能力,在精確性方面要優(yōu)于其他算法。所以本文基于脈沖耦合神經(jīng)網(wǎng)絡(luò)算法,并借助于TMS320DM642處理芯片,對感興趣區(qū)域提取系統(tǒng)進(jìn)行研究和實(shí)現(xiàn)。
1 脈沖耦合神經(jīng)網(wǎng)絡(luò)
脈沖耦合神經(jīng)網(wǎng)絡(luò)(pulse coupled neural network,PCNN)是Eckhorn和Johnson根據(jù)貓視覺皮層中的同步脈沖發(fā)放現(xiàn)像而提出的,這個網(wǎng)絡(luò)能促使具有相似輸入的神經(jīng)元一起產(chǎn)生脈沖,它也被認(rèn)作是系統(tǒng)同步脈沖爆發(fā)的現(xiàn)像學(xué)模型。它可以將二維圖像轉(zhuǎn)化為一維,并且將各彩色圖像信息并行的進(jìn)行融合處理[1]。PCNN 與其他神經(jīng)網(wǎng)絡(luò)(如BP,Hopfiel,CNN等)存在著很大的區(qū)別,非PCNN神經(jīng)網(wǎng)絡(luò)主要的特性在網(wǎng)絡(luò)的整體結(jié)構(gòu)、權(quán)值更新、收斂性等方面,而PCNN則著重于單個神經(jīng)元的活性以及點(diǎn)火閾值,從而判斷是否存在脈沖輸出。在PCNN網(wǎng)絡(luò)中,臨近的神經(jīng)元可以發(fā)放同步脈沖信號,單個神經(jīng)元同時接受臨近的脈沖信號和饋入信號,其產(chǎn)生的脈沖可在網(wǎng)絡(luò)中通過神經(jīng)元的連接擴(kuò)散傳播,形成自動脈沖波。這些獨(dú)特的性質(zhì)使得PCNN具有很強(qiáng)的應(yīng)用性,尤其在圖像處理方面完全依賴于圖像的自然屬性,不用預(yù)先選擇處理的空間范圍,是一種更自然的方式[2-5]。
1.1 標(biāo)準(zhǔn)模型介紹
傳統(tǒng)的脈沖耦合神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)方式多種多樣,但基本結(jié)構(gòu)沒有本質(zhì)差異。在本文中,將Eckhorn的PCNN模型作為標(biāo)準(zhǔn)的PCNN模型[3]。
如圖1所示,PCNN的神經(jīng)元包括3個基本的功能單元:接收域(包括連接接收域和饋入接收域)、調(diào)制域和脈沖發(fā)生器[6-7]。2個接收域都是1個或者多個帶指數(shù)衰減輸出的一階線性時間不變系統(tǒng)構(gòu)成的,這種系統(tǒng)稱之為漏積分器。
圖1 Eckhorn的PCNN模型
在實(shí)際的圖像處理中,一般一個PCNN脈沖神經(jīng)元對應(yīng)圖像數(shù)據(jù)的一個像素,這樣就建立起像素與神經(jīng)元的一一對應(yīng)關(guān)系。每一個像素都關(guān)聯(lián)著惟一的一個神經(jīng)元,同時又通過神經(jīng)元與周圍的像素進(jìn)行關(guān)聯(lián),形成整個用于圖像處理的脈沖耦合神經(jīng)網(wǎng)絡(luò)。每個神經(jīng)元通過饋入域接收來自外部的信號,通過連接域接收來自周圍神經(jīng)元的信號。接收域完成信號的接收后,分成2部分進(jìn)行處理,分別產(chǎn)生連接輸入信號L和饋入信號F。在調(diào)制域中,神經(jīng)元從總的饋入輸入FK被連接輸入L調(diào)制,以產(chǎn)生神經(jīng)元內(nèi)部活性UK,UK=FK(1+LK),其中K為迭代次數(shù)。FCNN神經(jīng)元的這種內(nèi)部活性是對發(fā)現(xiàn)于生物神經(jīng)元中的膜活性的一種模擬,這種活性值是促使一個神經(jīng)元產(chǎn)生脈沖的主要因素。脈沖發(fā)生器由一個“0-1”函數(shù)和一個閾值漏積分器構(gòu)成。當(dāng)內(nèi)部活性值UK≥θK時,“0-1”函數(shù)輸出為“1”(神經(jīng)元點(diǎn)火),否則輸出“0”(神經(jīng)元抑制),而“0-1”函數(shù)的輸出正是神經(jīng)元的輸出Y。
由上述功能可以得到以下迭代入式(1)~式(5):
Fij[n] =e-aFFij[n-1]+Sij+
VF∑KLMijKLYKL[n-1] (1)
Lij[n]=e-aLLij[n-1]+VL∑KLWijKLYKL[n-1] (2)
Uij[n]=Fij[n](1+β Lij[n]) (3)
Yij[n]1,Uij[n]>θij[n]
0,Uij[n]≤θij[n] (4)
θij[n]=e-aTTij[n-1]+VTYij[n] (5)
式中:n為迭代次數(shù),n=0為初始狀態(tài);(i,j)為神經(jīng)元在整個PCNN中的位置也就是圖像數(shù)據(jù)中單個像素在圖像中的位置;Sij為像素的灰度信息;β為連接系數(shù),調(diào)節(jié)著周圍神經(jīng)元之間的相互影響,同時影響中心神經(jīng)元點(diǎn)火周期,較大連接系數(shù)能引起較大范圍的脈沖同步;aF,aT和aL分別為輸入域Fij[ n] 、連接輸入域Lij[ n] 和動態(tài)門限θij[ n] 的衰減時間常數(shù);VF,VL和VT分別為PCNN的反饋放大系數(shù)、連接放大系數(shù)和閾值放大系數(shù),VL對周圍神經(jīng)元的耦合輸入進(jìn)行比例限制,VT決定了神經(jīng)元點(diǎn)火時刻閾值將被提升的程度;MijKL為反饋輸入域Fij[ n] 中YKL[ n] 的加權(quán)系數(shù),WijKH為耦合連接輸入域Lij中YKL[ n]的加權(quán)系數(shù),MijKL[ n] 和WijKH表示中心神經(jīng)元受周圍神經(jīng)元影響的大小,反映鄰近神經(jīng)元對中心神經(jīng)元傳遞信息的強(qiáng)弱。每次迭代根據(jù)圖像中的激勵信號和周圍神經(jīng)元的連接信號,來更新神經(jīng)元的內(nèi)部活性[8]。
1.2 一種改進(jìn)的PCNN模型
標(biāo)準(zhǔn)模型存在著一些明顯不足,比如網(wǎng)絡(luò)忽略了距離的差異,迭代過程中像素信號始終不變等缺陷,所以要根據(jù)迭代公式對上面的模型進(jìn)行改進(jìn)。
在實(shí)際的圖像處理系統(tǒng)中,每次迭代每個神經(jīng)元只會被點(diǎn)火一次。而從公式中可以得到VF和VL是影響點(diǎn)火次數(shù)的主要因素,為了簡化模型和提高運(yùn)算速度,可以舍棄這2個常量。所以公式(1)就被化簡為[9]:
Fij[n]=Sij (6)
然后再考慮連接輸入L,是由周圍有聯(lián)系的神經(jīng)元進(jìn)行運(yùn)算得到的。出于實(shí)時性的原因,只要鄰接神經(jīng)元有一個被點(diǎn)火,那么L的值為1,否則為0。這樣可以極大的降低運(yùn)算量。這樣連接輸入函數(shù)被替換為[10]:
Lij[n]=Step(Yij[n-1]*Wij) (7)
式中:耦合連接權(quán)重Wij是一個與連接距離有關(guān)的函數(shù):
Wij=e1-dij, if dij>0
1, if dij=0 (8)
式中:dij是2個神經(jīng)元之間的連接距離,且與自身的連接距離約定為“0”。神經(jīng)元的連接集L的大小決定了系統(tǒng)的某些動力學(xué)行為[11],一般都采取規(guī)則的“3×3”或“5×5”模式。經(jīng)過計(jì)算得到本系統(tǒng)采用的 W 為:
W =0.510.51010.510.5
式(3)中的β為連接權(quán)重,在每一次迭代中,β都會動態(tài)地被α更新。設(shè)β=αβ,α為連接衰減系數(shù)。這樣閾值衰減T就被下面的線性衰減函數(shù)所取代:
Tij[n]=Tij[n-1]-ΔT+VTYij[n-1] (9)
經(jīng)過簡化后的PCNN只需要設(shè)置5個參數(shù), W, α,β,VT,ΔT。
2基于TMS320DM642的感興趣區(qū)域提取系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2.1TMS320DM642功能模塊及圖像處理系統(tǒng)的硬件結(jié)構(gòu)
DSP是一種特別適合于進(jìn)行數(shù)字信號處理運(yùn)算的微處理器,主要用于實(shí)時快速實(shí)現(xiàn)各種數(shù)字信號處理的算法。其采用改進(jìn)的哈佛結(jié)構(gòu)(程序總線和數(shù)據(jù)總線分開)、內(nèi)部具有硬件乘法器、應(yīng)用流水線技術(shù)、具有良好的并行性和專門用于數(shù)字信號處理的指令及超長指令字結(jié)構(gòu)(VLIW)等特點(diǎn);非常適合完成運(yùn)算量大的實(shí)時數(shù)字圖像處理工作。
TMS320DM642芯片是在TMS320C6000 DSP平臺上的高性能定點(diǎn)DSP,是TI公式最近推出的功能比較強(qiáng)大的TMS320C6x系列之一。TMS320DM642是基于由TI開發(fā)的第二代高性能,先進(jìn)VelociTI技術(shù)的VLIW結(jié)構(gòu)(VelociTI1.2)的芯片[12],是目前定點(diǎn)DSP領(lǐng)域里性能較高的一款。DM642具有3個可配置視頻端口(VP0,VP1,VP2)。這些視頻端口給公共視頻編解碼設(shè)備提供了直接接口。DM642視頻端口支持多種解決方法和視頻標(biāo)準(zhǔn)(例如,CCIR601,ITU-BT.656,BT.1120,SMPTE125M,260M,274M,296M)。這3個視頻端口是可配置的,并能提供視頻捕獲和/或視頻顯示模式。每個視頻端口由兩個通道組成即A和B,這2個通道具有一個可分離的5 120 B捕獲/顯示緩存。
本系統(tǒng)是采用瑞泰公司開發(fā)的基于TI TMS320DM642 DSP芯片的評估開發(fā)板——ICETEK DM642 PCI。將整個系統(tǒng)分為視頻采集、數(shù)據(jù)存儲、圖像處理、結(jié)果顯示4個部分。視頻采集部分采用標(biāo)準(zhǔn)PAL制攝像頭[13],通過高精度視頻 A/D轉(zhuǎn)換器的轉(zhuǎn)換得到數(shù)字圖像。視頻A/D采樣電路 SAA7115與視頻端口0或1相連,從而實(shí)現(xiàn)視頻的實(shí)時采集功能。視頻D/A電路 SAA7105與視頻口2相連,視頻輸出信號支持RGB、HD合成視頻、PAL/NTSC復(fù)合視頻和S端子視頻信號。通過I2C總線對SAA7105的內(nèi)部寄存器編程實(shí)現(xiàn)不同需求的輸出。 攝像頭采集的視頻信號經(jīng)視頻編碼器SAA7115的數(shù)字化以后,DM642通過I2C總線對SAA7115進(jìn)行參數(shù)配置。在SAA7115內(nèi)部對數(shù)字化以后的信號進(jìn)行一系列的處理和變換后形成的數(shù)字視頻數(shù)據(jù)流,輸入到核心處理單元DM642。經(jīng)過DSP處理后的數(shù)字視頻再經(jīng)過SAA7105視頻編碼器進(jìn)行D/A轉(zhuǎn)換后在顯示器上顯示最終處理結(jié)果。
2.2 DM642視頻圖像處理的采集和顯示
鑒于圖像處理的復(fù)雜性和軟件工程的考慮,在實(shí)際系統(tǒng)開發(fā)中,為了減少開發(fā)時間,采用TI公司提供的開發(fā)套件(DDK)1來進(jìn)行系統(tǒng)開發(fā)。DDK采用種設(shè)備驅(qū)動的方式來進(jìn)行數(shù)據(jù)采集和顯示,這種設(shè)備驅(qū)動是位于應(yīng)用程序框架和硬件結(jié)構(gòu)之間的部分。設(shè)備驅(qū)動又分為2類,類驅(qū)動(class driver)和迷你驅(qū)動(mini-driver) [14]。應(yīng)用程序通過類驅(qū)動的API函數(shù)來對迷你驅(qū)動進(jìn)行操作,通過迷你驅(qū)動來對硬件進(jìn)行操作。其中圖像處理采用的是GIO API來進(jìn)行實(shí)際的操作,但是為了進(jìn)一步減小開發(fā)系統(tǒng)的復(fù)雜性,采用FVID作為實(shí)際的編程API。FVID[15]的行為類似于在GIO之上的一種封裝,提供一套特殊的API來進(jìn)行專業(yè)的視頻圖像信息的處理。FVID設(shè)備驅(qū)動管理程序在內(nèi)存管理方式上與其他API程序有很大的不同。一般的DSP/BIOS設(shè)備驅(qū)動程序需要用戶對于內(nèi)存自己管理,而FVID和數(shù)據(jù)的采集和顯示則是由設(shè)備驅(qū)動程序管理的。這是因?yàn)閳D像系統(tǒng)經(jīng)常要進(jìn)行數(shù)據(jù)的高速移動,這時就需要專用的,大容量的內(nèi)存來完成操作,由FVID進(jìn)行管理顯然要比用戶從堆上分配更有效率。
2.3 圖像感興趣區(qū)域提取系統(tǒng)的實(shí)現(xiàn)
整個程序的編寫和調(diào)試按照C6000軟件開發(fā)流程進(jìn)行,流程分為:產(chǎn)生C代碼、優(yōu)化C代碼和編寫線性匯編程序3個階段。使用的工具是TI的集成開發(fā)環(huán)境 CCS。在CCS下,可對軟件進(jìn)行編輯、編譯、調(diào)試等工作。在使用C6000編譯器開發(fā)和優(yōu)化C代碼時[16],對其中關(guān)鍵代碼例如需要反復(fù)調(diào)用和C效率不高的函數(shù)需用線性匯編進(jìn)行重新編寫,并且用匯編優(yōu)化器優(yōu)化。整個系統(tǒng)的控制以及數(shù)字圖像處理是用C程序?qū)崿F(xiàn),并按照算法標(biāo)準(zhǔn)進(jìn)行編寫,保證算法的可重入性,對輸入輸出外設(shè)的獨(dú)立性和可調(diào)試性,這無疑提高了程序的可讀性和可移植性,而匯編程序主要是實(shí)現(xiàn)DM642的各部分初始化。PCNN感興趣區(qū)域提取算法在DM642中的實(shí)現(xiàn)步驟具體如下:
(1) 在CCS中新建一個DSP的工程,并按照DM642的硬件結(jié)構(gòu)和系統(tǒng)需求編寫C程序。
(2) 借助CCS中的調(diào)試,編譯,鏈接等工具生成.OUT可執(zhí)行文件。
(3) 初始化系統(tǒng),并利用DSP/BIOS實(shí)時工具來進(jìn)行性能評測,并對C程序和線性匯編進(jìn)行優(yōu)化。
(4) 重新構(gòu)建工程,再生成.OUT可執(zhí)行文件。
(5) 運(yùn)行程序,如果滿足要求則停止;否則重復(fù)步驟(2)~步驟(4)直至滿足使用要求。
3 實(shí)驗(yàn)結(jié)果和分析
為了驗(yàn)證該系統(tǒng)的準(zhǔn)確性和完整性,對多幅圖片進(jìn)行處理,下面以rice和coins 2幅圖為例,對其中特定的米粒和硬幣進(jìn)行提取,其圖像處理結(jié)果如圖2~圖5所示。
從以上實(shí)驗(yàn)結(jié)果可以看出,改進(jìn)過的PCNN在正向傳播中更有效地消除了周圍的干擾,在反向傳播中更好地恢復(fù)了圖像的感興趣區(qū)域,使得提取圖像感興趣區(qū)域的準(zhǔn)確性和完整性得到了較好的改進(jìn)。而時間和性能上也取得了較大的提升,能夠快速而準(zhǔn)確地提取出感興趣的圖像區(qū)域。表1為6幅圖片的比較結(jié)果。
4 結(jié) 語
本文給出脈沖耦合神經(jīng)網(wǎng)絡(luò)的基本模型,并根據(jù)系統(tǒng)需求進(jìn)行了簡化。引進(jìn)高速數(shù)字信號處理器DM642對圖像感興趣區(qū)域提取系統(tǒng)進(jìn)行研究與實(shí)現(xiàn)。從實(shí)驗(yàn)結(jié)果來看,滿足了系統(tǒng)所需要的實(shí)時性和精度的要求??梢源蟠罂s短類似系統(tǒng)的開發(fā)周期,為以后基于感興趣區(qū)域提取的類似系統(tǒng)的研究奠定了良好的基礎(chǔ)。
參考文獻(xiàn)
[1]CHENG H D, JIANG X H, SUN Y, et al. Color image segmentation: advances and prospects[ J] . Pattern Recognition, 2001, 34: 2259-2281.
[2]ECKHORN R, REITBOECK H J, ARNDT M, et al. Feature linking via synchronization among distributed assemblies: Simulation of results from cat cortex[ J] .Neura1Computation, 1990, 2(3): 293-307.
[3]RANGANATH H S, KUNTIMAD G, JOHNSON J L. Pulse coupled neural networks for image processing[ C] //Proceedings of 1995 IEEE Southeast Conference[ S.l.] : Raleigh NC, 1995: 37-43.
[4]KUNTIMAD G, RANGANATH H. Perfect image segmentation using pulse coupled neural[ J] . IEEE Transactions on Neural Networks, 1999, 10(3): 591-598.
[5]JOHNSON J L, PDGETT M L. PCNN Models and applications[ J] . IEEE Tansactions on Neural Networks, 1999, 10(3): 480-498.
[6]GU X, YU D, ZHANG L. Image thinning using pulse coupled neural network[ J] . Pattern Recognition Letters, 2004, 25: 1075-1084.
[7]KARVONEN J A. Baltic sea ice SAR segmentation and classification using modified pulse coupled neural networks[ J] . IEEE Trans. on Geoscience and Remote Sensing, 2004, 42(7): 1566-1574.
[8]XUE Y, YANG S X. Image segmentation using watershed transform and feed back pulse coupled neural network, Artificial Neural Networks: Biological Inspirations[ M] . Berlin: Springer, 2005.
[9]GU X, YU D. Image shadow removal using pulse coupled neural networks[ J] . IEEE Trans. on Neural Networks, 2005, 16(3): 692-698.
[10]GU X, WANG H, YU D. A new approach for image shadow processing based on PCNN[ J] . Journal of Electronics and Information Technology, 2004, 26(3): 479-483.
[11]CHEN J, GONG J, LIU X. Image binary segmentation by simplified PCNN[ J] . Journal of Geomatics, 2005, 30(1): 38-40.
[12]美國德州儀器公司.TMS320 DSP算法標(biāo)準(zhǔn)[ S] .北京:清華大學(xué)出版社,2007.
[13]TMS320DM642 video/imaging fixed-point digital signal processor:US[ P/OL] .20050-5-02[ 2005-05-05] .http://spectrum-instrumentation.com.
[14]Texas Instruments. The Tm320DM642 video port Mini-Driver[ M] . Texas: Texas Instruments, 2003.
[15]Texas Instruments. DSP/BIOS driver developer′s guide[ M] . Texas: Texas Instruments, 2002.
[16]Texas Instruments. TMS320C6x optimizing C compiler user′s guide[ M] . Texas: Texas Instruments, 2002.