摘 要:由于普通PC實現的感興趣區域提取系統普遍存在耗時大、實時性差且處理精度不高等缺陷,在此利用瑞泰公司ICETEK-DM642-PCI評估板提供的TI公司的TMS320DM642芯片,DSP/BIOS的實時操作系統,CCS集成開發環境來構建應用程序。應用脈沖耦合神經網絡對圖像進行噪聲抑制,然后進行二值分割。再利用PCNN正向自動波去除一些很小的干擾,反向自動波恢復感興趣的區域并提取出。實驗結果表明,采用的算法能夠精確地提取出圖像中感興趣的區域。
關鍵詞: DM642; 脈沖耦合神經網絡; 感興趣區域提取; 二值分割
中圖分類號:TN911.7; DM642 文獻標識碼: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 引 言
在圖像數據中包含著大量而繁復的信息,然而在實際應用過程中往往需要提取出感興趣的區域。例如在醫學領域,對于一些醫用藥品的檢測和細胞的識別就需要能夠快速而準確地提取出感興趣的區域。普通PC機實現的感興趣區域提取系統普遍存在耗時大、實時性差且處理精度不高等缺陷,是因為計算機的硬件架構和外圍設備存在著瓶頸,無法提升。而專門為圖像處理設計的高速數字信號處理芯片 DM642可以在一個時鐘周期內完成一次乘操作,其處理速度要遠遠快于普通的PC計算機,顯然更適合用于需要做大量重復乘操作的圖像處理。以往的感興趣區域提取算法都是只對于圖像進行識別,經常會出現對區域提取信息的丟失,或者精度不高。而本文給出的PCNN具有正向消除干擾和反向修復圖像的能力,在精確性方面要優于其他算法。所以本文基于脈沖耦合神經網絡算法,并借助于TMS320DM642處理芯片,對感興趣區域提取系統進行研究和實現。
1 脈沖耦合神經網絡
脈沖耦合神經網絡(pulse coupled neural network,PCNN)是Eckhorn和Johnson根據貓視覺皮層中的同步脈沖發放現像而提出的,這個網絡能促使具有相似輸入的神經元一起產生脈沖,它也被認作是系統同步脈沖爆發的現像學模型。它可以將二維圖像轉化為一維,并且將各彩色圖像信息并行的進行融合處理[1]。PCNN 與其他神經網絡(如BP,Hopfiel,CNN等)存在著很大的區別,非PCNN神經網絡主要的特性在網絡的整體結構、權值更新、收斂性等方面,而PCNN則著重于單個神經元的活性以及點火閾值,從而判斷是否存在脈沖輸出。在PCNN網絡中,臨近的神經元可以發放同步脈沖信號,單個神經元同時接受臨近的脈沖信號和饋入信號,其產生的脈沖可在網絡中通過神經元的連接擴散傳播,形成自動脈沖波。這些獨特的性質使得PCNN具有很強的應用性,尤其在圖像處理方面完全依賴于圖像的自然屬性,不用預先選擇處理的空間范圍,是一種更自然的方式[2-5]。
1.1 標準模型介紹
傳統的脈沖耦合神經網絡結構方式多種多樣,但基本結構沒有本質差異。在本文中,將Eckhorn的PCNN模型作為標準的PCNN模型[3]。
如圖1所示,PCNN的神經元包括3個基本的功能單元:接收域(包括連接接收域和饋入接收域)、調制域和脈沖發生器[6-7]。2個接收域都是1個或者多個帶指數衰減輸出的一階線性時間不變系統構成的,這種系統稱之為漏積分器。
圖1 Eckhorn的PCNN模型
在實際的圖像處理中,一般一個PCNN脈沖神經元對應圖像數據的一個像素,這樣就建立起像素與神經元的一一對應關系。每一個像素都關聯著惟一的一個神經元,同時又通過神經元與周圍的像素進行關聯,形成整個用于圖像處理的脈沖耦合神經網絡。每個神經元通過饋入域接收來自外部的信號,通過連接域接收來自周圍神經元的信號。接收域完成信號的接收后,分成2部分進行處理,分別產生連接輸入信號L和饋入信號F。在調制域中,神經元從總的饋入輸入FK被連接輸入L調制,以產生神經元內部活性UK,UK=FK(1+LK),其中K為迭代次數。FCNN神經元的這種內部活性是對發現于生物神經元中的膜活性的一種模擬,這種活性值是促使一個神經元產生脈沖的主要因素。脈沖發生器由一個“0-1”函數和一個閾值漏積分器構成。當內部活性值UK≥θK時,“0-1”函數輸出為“1”(神經元點火),否則輸出“0”(神經元抑制),而“0-1”函數的輸出正是神經元的輸出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為迭代次數,n=0為初始狀態;(i,j)為神經元在整個PCNN中的位置也就是圖像數據中單個像素在圖像中的位置;Sij為像素的灰度信息;β為連接系數,調節著周圍神經元之間的相互影響,同時影響中心神經元點火周期,較大連接系數能引起較大范圍的脈沖同步;aF,aT和aL分別為輸入域Fij[ n] 、連接輸入域Lij[ n] 和動態門限θij[ n] 的衰減時間常數;VF,VL和VT分別為PCNN的反饋放大系數、連接放大系數和閾值放大系數,VL對周圍神經元的耦合輸入進行比例限制,VT決定了神經元點火時刻閾值將被提升的程度;MijKL為反饋輸入域Fij[ n] 中YKL[ n] 的加權系數,WijKH為耦合連接輸入域Lij中YKL[ n]的加權系數,MijKL[ n] 和WijKH表示中心神經元受周圍神經元影響的大小,反映鄰近神經元對中心神經元傳遞信息的強弱。每次迭代根據圖像中的激勵信號和周圍神經元的連接信號,來更新神經元的內部活性[8]。
1.2 一種改進的PCNN模型
標準模型存在著一些明顯不足,比如網絡忽略了距離的差異,迭代過程中像素信號始終不變等缺陷,所以要根據迭代公式對上面的模型進行改進。
在實際的圖像處理系統中,每次迭代每個神經元只會被點火一次。而從公式中可以得到VF和VL是影響點火次數的主要因素,為了簡化模型和提高運算速度,可以舍棄這2個常量。所以公式(1)就被化簡為[9]:
Fij[n]=Sij (6)
然后再考慮連接輸入L,是由周圍有聯系的神經元進行運算得到的。出于實時性的原因,只要鄰接神經元有一個被點火,那么L的值為1,否則為0。這樣可以極大的降低運算量。這樣連接輸入函數被替換為[10]:
Lij[n]=Step(Yij[n-1]*Wij) (7)
式中:耦合連接權重Wij是一個與連接距離有關的函數:
Wij=e1-dij, if dij>0
1, if dij=0 (8)
式中:dij是2個神經元之間的連接距離,且與自身的連接距離約定為“0”。神經元的連接集L的大小決定了系統的某些動力學行為[11],一般都采取規則的“3×3”或“5×5”模式。經過計算得到本系統采用的 W 為:
W =0.510.51010.510.5
式(3)中的β為連接權重,在每一次迭代中,β都會動態地被α更新。設β=αβ,α為連接衰減系數。這樣閾值衰減T就被下面的線性衰減函數所取代:
Tij[n]=Tij[n-1]-ΔT+VTYij[n-1] (9)
經過簡化后的PCNN只需要設置5個參數, W, α,β,VT,ΔT。
2基于TMS320DM642的感興趣區域提取系統的設計與實現
2.1TMS320DM642功能模塊及圖像處理系統的硬件結構
DSP是一種特別適合于進行數字信號處理運算的微處理器,主要用于實時快速實現各種數字信號處理的算法。其采用改進的哈佛結構(程序總線和數據總線分開)、內部具有硬件乘法器、應用流水線技術、具有良好的并行性和專門用于數字信號處理的指令及超長指令字結構(VLIW)等特點;非常適合完成運算量大的實時數字圖像處理工作。
TMS320DM642芯片是在TMS320C6000 DSP平臺上的高性能定點DSP,是TI公式最近推出的功能比較強大的TMS320C6x系列之一。TMS320DM642是基于由TI開發的第二代高性能,先進VelociTI技術的VLIW結構(VelociTI1.2)的芯片[12],是目前定點DSP領域里性能較高的一款。DM642具有3個可配置視頻端口(VP0,VP1,VP2)。這些視頻端口給公共視頻編解碼設備提供了直接接口。DM642視頻端口支持多種解決方法和視頻標準(例如,CCIR601,ITU-BT.656,BT.1120,SMPTE125M,260M,274M,296M)。這3個視頻端口是可配置的,并能提供視頻捕獲和/或視頻顯示模式。每個視頻端口由兩個通道組成即A和B,這2個通道具有一個可分離的5 120 B捕獲/顯示緩存。
本系統是采用瑞泰公司開發的基于TI TMS320DM642 DSP芯片的評估開發板——ICETEK DM642 PCI。將整個系統分為視頻采集、數據存儲、圖像處理、結果顯示4個部分。視頻采集部分采用標準PAL制攝像頭[13],通過高精度視頻 A/D轉換器的轉換得到數字圖像。視頻A/D采樣電路 SAA7115與視頻端口0或1相連,從而實現視頻的實時采集功能。視頻D/A電路 SAA7105與視頻口2相連,視頻輸出信號支持RGB、HD合成視頻、PAL/NTSC復合視頻和S端子視頻信號。通過I2C總線對SAA7105的內部寄存器編程實現不同需求的輸出。 攝像頭采集的視頻信號經視頻編碼器SAA7115的數字化以后,DM642通過I2C總線對SAA7115進行參數配置。在SAA7115內部對數字化以后的信號進行一系列的處理和變換后形成的數字視頻數據流,輸入到核心處理單元DM642。經過DSP處理后的數字視頻再經過SAA7105視頻編碼器進行D/A轉換后在顯示器上顯示最終處理結果。
2.2 DM642視頻圖像處理的采集和顯示
鑒于圖像處理的復雜性和軟件工程的考慮,在實際系統開發中,為了減少開發時間,采用TI公司提供的開發套件(DDK)1來進行系統開發。DDK采用種設備驅動的方式來進行數據采集和顯示,這種設備驅動是位于應用程序框架和硬件結構之間的部分。設備驅動又分為2類,類驅動(class driver)和迷你驅動(mini-driver) [14]。應用程序通過類驅動的API函數來對迷你驅動進行操作,通過迷你驅動來對硬件進行操作。其中圖像處理采用的是GIO API來進行實際的操作,但是為了進一步減小開發系統的復雜性,采用FVID作為實際的編程API。FVID[15]的行為類似于在GIO之上的一種封裝,提供一套特殊的API來進行專業的視頻圖像信息的處理。FVID設備驅動管理程序在內存管理方式上與其他API程序有很大的不同。一般的DSP/BIOS設備驅動程序需要用戶對于內存自己管理,而FVID和數據的采集和顯示則是由設備驅動程序管理的。這是因為圖像系統經常要進行數據的高速移動,這時就需要專用的,大容量的內存來完成操作,由FVID進行管理顯然要比用戶從堆上分配更有效率。
2.3 圖像感興趣區域提取系統的實現
整個程序的編寫和調試按照C6000軟件開發流程進行,流程分為:產生C代碼、優化C代碼和編寫線性匯編程序3個階段。使用的工具是TI的集成開發環境 CCS。在CCS下,可對軟件進行編輯、編譯、調試等工作。在使用C6000編譯器開發和優化C代碼時[16],對其中關鍵代碼例如需要反復調用和C效率不高的函數需用線性匯編進行重新編寫,并且用匯編優化器優化。整個系統的控制以及數字圖像處理是用C程序實現,并按照算法標準進行編寫,保證算法的可重入性,對輸入輸出外設的獨立性和可調試性,這無疑提高了程序的可讀性和可移植性,而匯編程序主要是實現DM642的各部分初始化。PCNN感興趣區域提取算法在DM642中的實現步驟具體如下:
(1) 在CCS中新建一個DSP的工程,并按照DM642的硬件結構和系統需求編寫C程序。
(2) 借助CCS中的調試,編譯,鏈接等工具生成.OUT可執行文件。
(3) 初始化系統,并利用DSP/BIOS實時工具來進行性能評測,并對C程序和線性匯編進行優化。
(4) 重新構建工程,再生成.OUT可執行文件。
(5) 運行程序,如果滿足要求則停止;否則重復步驟(2)~步驟(4)直至滿足使用要求。
3 實驗結果和分析
為了驗證該系統的準確性和完整性,對多幅圖片進行處理,下面以rice和coins 2幅圖為例,對其中特定的米粒和硬幣進行提取,其圖像處理結果如圖2~圖5所示。
從以上實驗結果可以看出,改進過的PCNN在正向傳播中更有效地消除了周圍的干擾,在反向傳播中更好地恢復了圖像的感興趣區域,使得提取圖像感興趣區域的準確性和完整性得到了較好的改進。而時間和性能上也取得了較大的提升,能夠快速而準確地提取出感興趣的圖像區域。表1為6幅圖片的比較結果。
4 結 語
本文給出脈沖耦合神經網絡的基本模型,并根據系統需求進行了簡化。引進高速數字信號處理器DM642對圖像感興趣區域提取系統進行研究與實現。從實驗結果來看,滿足了系統所需要的實時性和精度的要求。可以大大縮短類似系統的開發周期,為以后基于感興趣區域提取的類似系統的研究奠定了良好的基礎。
參考文獻
[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算法標準[ S] .北京:清華大學出版社,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.