摘 要:介紹了火焰圖像的特征判據,提出基于DSP的圖像型火災探測系統的開發流程,并介紹了利用CCS集成開發軟件,在一個開發環境下完成工程項目創建、程序編輯、編譯、鏈接、調試和數據分析的過程。最后,提出基于DM642的嵌入式圖像型火災探測軟件系統實現。關鍵詞:火災探測; DSP; CCS; DM642
中圖分類號:TN919-34文獻標識碼:A
文章編號:1004-373X(2010)17-0166-03
Image Fire Detection Technology Based on DSP
HU Wei, WANG Hui-qin
(Information and Control Engineering College, Xi’an University of Architecture and Technology, Xi’an 710055, China)
Abstract: The basic characteristics of fire image is introduced, the image fire detection system development process based on DSP and the use of CCS integrated development software are proposed, the creation, program editing, compiling, link, debugging and data analysis of a project are completed in development environment, Finally, the DM642-based embedded image fire detection software system is proposed.Keywords: image fire detection; DSP; CCS; DM642
0 引 言
火災是最常見的嚴重災害之一,它往往給人們的生命財產造成巨大的危害。目前用于火焰探測的主要有煙感探測器、紅外探測器、紫外探測器等,但這些探測器件在探測范圍和抗干擾等方面還存在不少問題。本文提出了一種根據火災火焰的特征[1],采用DSP技術對火災火焰進行識別,并給出了其算法實現。
1 火焰圖像的特征判據
1.1 面積變化率
火焰在發生的初期,火焰的出現是一個從無到有且不斷擴張蔓延的過程,由于風力、空氣流動、熱量驅動等原因,火焰火苗會不斷跳動。火焰的這一物理特性在圖像上的表現就是:高亮區域的面積是不斷變化的,并且連續幾幀圖像中,高亮區域的面積是呈增長趨勢的[2]。
定義面積變化率為:
AR=|A(n+1)-A(n)|max(A(n+1),A(n))+eps(1)
式中:AR表示相鄰幀間高亮區域的面積變化率;A(n)表示當前幀中可疑區域的面積;A(n+1)表示下一幀中可疑區域的面積,eps為一個極小值,在分母上加上eps是為了防止相鄰兩幀圖像中都不存在可疑火焰區域而使得計算出的面積變化率成為無窮大。為了實現歸一化,取兩幀中高亮區域面積的最大值作為上式的分母,這樣可以使得最終計算出的結果介于0~1之間。通過Matlab仿真分析,得出火焰的面積變化率范圍為0.1~0.4,固定光源的面積變化率接近于0,快速閃動的物體面積變化率接近于1。
1.2 圓形度
形狀特征是圖像表達、圖像檢索以及圖像分類識別的一個重要特征。通過觀察大量的火焰以及干擾物體圖像會發現:一般的火焰不具有規則的形狀,其邊緣呈現為不規則的曲線,而手電筒、白熾燈以及蠟燭等干擾光源往往具有比較規則的形狀。據此,本文引用了圓形度的概念,用其表征物體邊緣的復雜程度,并將其作為區分火焰以及干擾光源的一個特征[3]。
圓形度定義為[4]:
Ck=4πAkP2k, k=1,2,…,n(2)
式中:Ck表示編號為k的圖元的圓形度;Pk為第k個圖元的周長,即可疑圖元的邊界長度,可以通過計算邊界鏈碼得到,在邊界鏈碼中,水平和垂直方向的鏈碼步長為單位長度1,對角線方向的鏈碼步長為2,直角方向的鏈碼步長也為2; Ak為第k個圖元的面積,對于灰度圖像,可以通過計算可疑圖元中的亮點數目獲得,對于二值圖像,可以通過計算像素值為1的像素點個數獲得;n為圖像中可疑火焰圖元的個數。從式(2)可以看出,當面積相同時,可疑圖元的形狀越復雜,其周長值越大,圓形度的值會越小;當可疑圖元為圓形物體時,其圓形度最大,值為1。在Matlab環境下做仿真實驗,分別取了30幅火焰、燈光、打火機圖像,計算各自圓形度,得到實驗結果為火焰的原型度小于0.5。
1.3 利用DSP實現圖像型火災探測系統的必要性
(1) 目前許多火災探測系統都是采用傳統感溫、感煙傳感器,這種系統有很多缺點,誤報率非常高,受環境限制,而且這種系統不能掌握火災現場的情況,不能依靠其來進行實時調度等工作,雖然其單個傳感器價格較低,但是由于每個監控范圍小,必須安裝多個各種傳感器才能有稍微較好的性能。
(2) 基于PC的圖像處理的火災監控方法,其對于圖像采集一般采用攝像頭與圖像采集卡或者攝像頭加圖像譯碼器的結構,然后再把采集的圖像傳輸到后臺進行處理,大大增加了監控臺的負擔。
1.4 基于DSP圖像型火災探測的優點
為了克服傳統的感煙火災探測系統的弊端和許多特殊環境無法使用的問題,可以利用DSP開發出適應不同環境圖像型火災探測系統來滿足不同環境的需要,其具有很高的靈活性[5]。而且DSP芯片是一種特殊的微處理器,是高性能系統的核心,它不僅具有可編程性,而且它實時運行的速度遠遠超過通用微處理器[6]。其特殊的內部結構,強大的信息處理能力以及較高的運行速度,是其重要的特點。它能實時地對大量數據進行數字技術處理。這種實時能力使DSP在圖像火災探測領域應用的十分理想。隨著DSP芯片的發展,DSP系統的成本、體積、重量和功耗等逐漸下降,時鐘頻率、處理速度、處理精度等逐漸提高,對圖像型火災探測系統的發展都起到了很大的促進作用。
2 DSP技術及其開發流程
2.1 DSP芯片介紹
數字多媒體處理器DM642[6]是TI公司C6000系列的一款新型高性能DSP,基于C64x內核,擴展的高級甚長指令字(VelociTI)體系結構,具有64個32位通用寄存器,8個獨立計算功能單元(2個乘法器,6個算術邏輯單元)可以并行運行,因此多條指令可同時執行。可工作在600 MHz時鐘速率,在此工作頻率下,所有功能單元能穩定可靠的工作,外部總線時鐘為100 MHz。每個指令周期可并行運行8條32位指令,因此可達到4 800 MIPS的峰值計算速度。DM642采用兩級緩存結構,L1P,L1D,L2。DM642具有64個獨立通道的EDMA(擴展的直接存儲器訪問)控制器,負責片內L2與其他外設之間的數據傳輸。容量較大的兩級緩存和EDMA通道是DM642高性能的體現之一,若能合理使用和管理,將能大幅度提高程序的運行性能。它帶有3個可配置的視頻端口,提供與視頻輸入、視頻輸出以及碼流輸入的無縫接口。這些視頻端口支持許多格式的視頻輸入/輸出,包括BT.656,HDTVY/C,RGB以及MPEG-2碼流的輸入。DM642的其他外設包括:10/100 Mb/s的以太網口(EMAC)、多通道音頻串口(McASP)、外部存儲器接口(EMIF)、主機接口(HPI)、多通道緩沖串口(McBSP)以及PCI接口等。
2.2 DSP視頻處理開發平臺
本文用于DSP開發的平臺SSD-DM642 Ver 2.0(見圖1)是索思達公司出品的基于TM320DM642一款可用于多路視頻監控、視頻服務器、數字視頻錄像機等場合的嵌入式平臺。
圖1 SSD-DM642 Ver 2.0
2.3 集成開發環境CCS
采用由TI公司推出的用于開發DSP芯片的集成開發環境CCS(Code Composer Studio)。它采用Windows風格界面,集編輯、編譯、鏈接、軟件仿真、硬件調試以及實時跟蹤等功能于一體,極大地方便了DSP芯片的開發與設計,是目前使用最為廣泛的DSP開發環境之一。CCS有兩種工作模式,即軟件仿真器和硬件在線編程[7]。軟件仿真器工作模式可以脫離DSP芯片,在PC上模擬DSP的指令集和工作機制,主要用于前期算法實現和調試。硬件在線編程可以實時運行在DSP芯片上,與硬件開發板相結合進行在線編程和調試應用程序。利用CCS集成開發軟件,用戶可以在一個開發環境下完成工程項目創建、程序編輯、編譯、鏈接、調試和數據分析等工作環節。使用CCS開發應用程序的步驟為[8]:
(1) 打開或創建一個工程項目文件(project),包括源程序(C或匯編)、目標文件、庫文件、鏈接命令文件和包含文件。
(2) 編輯各類文件。可以使用CCS提供的集成編輯環境,對頭文件(*.h文件)、鏈接命令文件(*.cmd文件)和源程序(*.c,*.asm)進行編輯。
(3) 對工程項目進行編譯。如出現語法錯誤,將在構建(Build)窗口中顯示錯誤信息。用戶可以根據顯示的信息定位錯誤位置,更改錯誤。
(4) 對結果和數據進行分析和算法評估。用戶可以利用CCS提供的探測點、圖形顯示、性能評價等工具,對運行結果、輸出數據進行分析,評估算法性能。主程序流程如圖2所示。
圖2 主程序流程
3 基于DM642的嵌入式圖像型火災探測系統實現
根據防火規范和系統的功能要求,相應的火災探測報警和滅火系統軟件也應具有如下特點[9]:
實時性 火災報警系統是一個實時控制系統,對于系統響應時間要求較高,所以對應用軟件的執行速度有一定的要求,即能夠在采集現場數據后,在允許的時間間隔內,及時對數據進行計算、處理、并做出正確判斷,對系統進行控制。
靈活性和通用性 為了節省內存和具有較高的適應能力,軟件采用模塊化結構,在編寫程序的時候,采用自頂向下的分析方法,將整個軟件系統劃分為若
干個軟件功能模塊,然后針對每一個功能模塊編寫子程序。以后如果需要添加功能或修改現有功能,只需要添加或修改子程序即可。
本文利用SSD-DM642 Ver 2.0評估板卡為開發研究平臺,對圖像型火災系統做進一步的軟件開發的研究。
軟件系統的總體框架如圖3所示。
圖3 軟件系統的總體框架
各個系統的子模塊是在主系統控制模塊的控制和管理監督下協調工作的。系統的工作流程圖如圖4所示。
圖4 系統軟件工作流程圖
(1) 系統加電開始運行,運行系統初始化模塊,設定寄存器初始值,進行存儲器的映射,建立系統工作的環境。
(2) 運行圖像采集模塊,采集連續幀圖像,尋找背景圖像,存儲背景圖像,并進行圖像動態比。
(3) 運行圖像處理火災識別模塊,對可疑目標進行圖像處理、特征提取,并把提取的特征與預設的閾值DT比較,若小于門限閾值DT,則可以認為是其他干擾信號,從而跳轉到第二步,繼續監視。
(4) 若提取的特征值超過預設門限,就確認為火災發生。
4 實驗結果
在充分了解系統運行方式和對算法的Matlab仿真無誤的情況下,進行圖像型火災識別算法的DSP實現。由試驗的結果(見圖5)來看,取得了較為理想的運行結果,為算法的進一步實際應用打下了良好的基礎。
圖5 火災識別結果
5 結 語
研究了基于DSP的圖像型火災探測技術開發的基本流程,并結合自適應圖像型火災探測算法,利用開發板對算法進行了驗證,下一步將經過編譯的代碼利用代碼優化器進行優化,提高代碼效率,并且開始研究DSP硬件設計問題。
參考文獻
[1]金華彪,夏雨人,張振偉,等.基于數字圖像處理的火災探測技術[J].微電腦應用,2003,19(5):25-27.
[2]董華,程曉舫,范維澄.早期火災圖像監測技術的應用與比較[J].光學技術,1997(9):51-98.
[3]唐發明.基于統計學習的支持向量機算法研究[D].武漢:華中科技大學,2005.
[4]陳瑩.大空間圖像型火災探測和自動滅火技術的研究[D].天津:天津大學,2006.
[5]徐俊毅.Davinci技術幫助TI開啟未來通信與娛樂市場[J].電子與電腦,2005(10):113-115.
[6]張曉勇.基于DSP的汽車牌照識別技術研究[D].貴陽:貴州大學,2007.
[7]王念旭.DSP基礎與應用系統設計[M].北京:北京航空航天大學出版社,2000.
[8]孫興.DSP在機器人視覺系統的應用與研究[D].貴陽:貴州大學,2006.
[9]LIU Che-bin ,AHUJA Narendra. Vsion based fire detection[C]. Proceedings of the 17th International Conference on Pattern Recognition. Washington, DC: IEEE Computer Society, 2004: 134-137.
[10]白濤.基于DSP的機車監控視頻處理技術的研究[D].哈爾濱:哈爾濱工程大學,2007.