摘 要: 針對嵌入式系統在紅外圖像處理領域的應用,提出在紅外圖像處理方面構建一種一體化信息處理器。采用基于SOPC+DSP的體系架構,實現雙波段紅外圖像的預處理、圖像壓縮、目標檢測與識別、與其他系統的通信等功能。給出了一種適用于該領域的通用架構,并對該架構進行了論證,結合具體應用進行硬件和軟件設計。在此基礎上,對系統架構進行測試,經過驗證,硬件平臺運行結果與軟件仿真結果誤差很小,達到設計要求。同時,該系統可以完成兩路紅外圖像的處理工作,提高了系統處理速度,減少了CPU的工作量。
關鍵詞: 通用架構; 嵌入式系統; 紅外圖像; SOPC; DSP
中圖分類號: TN929.1?34; TP391 文獻標識碼: A 文章編號: 1004?373X(2016)03?0039?04
Integrated design of infrared image information processor based on general architecture
CHEN Peng
(College of Economic and Management, Taizhou University, Taizhou 225300, China)
Abstract: Aiming at the application of embedded system in the field of infrared image processing, the method that an integration information processor is constructed in the aspect of infrared image processing is put forward. The system architecture based on SOPC+DSP is adopted to accomplish the dual band infrared image preprocessing, image compression, target detection, target recognition, communication with other systems and other functions. A general architecture suiting for this field is given and demonstrated. The hardware and software were designed in combination with the specific application, and based on this, the system architecture was tested. The test results show that the error coming from the operation result of hardware platform and software simulation result is very small, which can meet the test requirement. The system can complete the processing work of two?channel infrared image, improve the processing speed, and reduce the workload of CPU.
Keywords: general architecture; embedded system; infrared image; SOPC; DSP
0 引 言
非PC信息設備與具體應用相結合,應用范圍廣泛,而其主體正是嵌入式系統[1]。目前在一些發達國家,以嵌入式系統為基礎的數字電視的市場值已達到相當規模,另外,基于實時操作系統(RTOS)的EI(Embedded Internet)也成為了該領域的一個新熱點。在國內,基于嵌入式系統的信息家電也是信息技術領域的研究熱點之一[2]。嵌入式系統的發展是基于特定應用的,因此即使對同一應用而言,采用的處理系統架構也各不相同。這也導致了嵌入式技術雖然發展快速,但是開發過程零散,同時重復開發成本高[3]。因此,如果能在如此專用的嵌入式技術的發展中加入更多的通用性,針對某一類應用,設計一種通用化、可編程、可擴展的處理器就顯得非常有意義。
1 紅外圖像信息處理系統架構設計
一般硬件驅動由設備廠商提供,而操作系統由專門開發操作系統的公司提供,如Microsoft,Google,Apple等。用戶程序開發者只需在應用層開發相應的程序,不需要硬件基礎。但是對于紅外圖像處理領域則不然。紅外圖像處理領域沒有一個統一的軟硬件標準,對于不同的系統功能需求,采取不同的設計方法[4]。
紅外圖像信息處理領域具有處理任務多種多樣、結構差異大、算法復雜度相差大、實時性和可靠性要求高[5]、對體積和功耗的要求也越來越高等特點。基于這些特點,目前紅外圖像信息處理器設計對訂制的要求較多,造成重復投入,研制周期加長,成本提高。本文目的是要研究類似民用領域的通用化信息處理平臺,使得不同的程序可以運行于同樣的硬件平臺上。
一個較好的方案是把對性能要求較高的常用圖像處理算法設計成硬件處理模塊,處理器選擇ARM,在進行圖像處理時,ARM只需運行頂層處理算法[6],底層算法調用硬件模塊執行。而且目前的ARM處理器處理能力越來越強,已經發展到四核,主頻2 GHz,并配備專用浮點處理單元。
本文提出了一種適用于紅外圖像處理的通用架構設計方案,如圖1所示。該架構采用了一個ARM處理器,常用的數據密集型圖像處理算法采用硬件模塊實現。ARM主要負責頂層算法,特點是算法復雜度高但是數據量較少,其實現方式多樣,可以是SOPC,SoC,也可以是FPGA+ARM。其中的圖像預處理器主要完成紅外圖像非均勻校正、中值濾波、高斯濾波、降噪、電子穩像等;視頻協處理器主要完成圖像壓縮、直方圖統計、灰度投影、角點檢測、連通域標記等;視頻后處理器主要完成圖像顯示,包括視頻顯示控制、OSD(On Screen Display)、圖像縮放。
在該系統中,將目前最有發展前景的1394接口、RapidIO接口、光纖通道接口都集成到系統中,可根據不同需要連接不同接口;存儲器接口主要用于系統與外部存儲器連接,如DDR2 SDRAM,SBSRAM,FLASH等;其他接口可保留傳統接口,如RS 485,RS 422,開關量接口等。
2 紅外圖像一體化信息處理器設計
紅外圖像一體化信息處理器包括信息處理單元(FPGA+DSP)、存儲器(SBSRAM,FLASH,DPRAM等)、外圍接口芯片、二次電源等一體化信息處理系統所需要的硬件資源,以及底層支持軟件和圖像處理軟件等。
其中,處理器采用SOPC+DSP為基本框架。 接口電路包括開關量接口、RS 422/RS 485接口、LVDS接口。對處理器部分所要完成的功能要根據處理器的特點進行功能劃分,以便充分利用處理器的資源,使處理器工作在最優狀態。對上述體系結構圖進行細化得到如圖2所示的結構。
2.1 硬件設計
紅外圖像一體化信息處理器的設計思路是采用SOPC+DSP技術,通過高性能的DSP完成復雜的控制算法和數據計算,采用SOPC技術在單片FPGA上完成信號流水處理、圖像預處理算法等。SOPC+DSP技術有效結合了兩種技術的優點,互相彌補單獨采用某一種技術的不足,可以大大地提高系統的性能[7]。
處理器的硬件由FPGA,DSP,雙口RAM,SBSRAM,FLASH,配置芯片,開關量接口,差分LVDS芯片,通信接口,視頻DA,電源芯片,連接器等組成。具體硬件組成框圖如圖3所示。
在處理器要完成的所有功能中,圖像預處理、圖像壓縮、RS 485通信中的HDLC協議等由FPGA邏輯來實現;兩個軟核CPU分別實現兩路紅外圖像的特征提取和初檢測。軟核CPU主要實現兩路圖像的特征提取及初檢測,并將處理后的圖像特征傳送給DSP。DSP的主要功能是完成圖像融合算法。在系統上電后,DSP將FLASH中存儲的程序調入相應的RAM緩存中運行,為了完成圖像融合算法,DSP需要通過EMIF總線讀取外部DPRAM中的紅外圖像特征數據,另外,DSP還要與外界進行開關量和RS 485通信,可通過外部中斷,GPIO口完成。
根據需要針對該架構的功能需求進行芯片選型,考慮到要預留一定的裕量,選用Altera公司的EP3SE110,其內部邏輯單元約11萬個,RAM約1 MB,硬件乘法器896個,其中內部RAM的最高工作頻率為600 MHz,高性能DSP塊最高工作頻率為550 MHz。綜合對比C6701,C6711,C6713三款芯片,選用C6713。考慮靜態RAM比動態RAM可靠性高,采用同步靜態RAM,容量1M×36位,選用ISSI公司的IS61LPS102436A。為了滿足系統處理兩路紅外圖像的需求,包括特征提取,二值化,連通域標記,目標檢測與跟蹤等,兩路圖像各用一片SBSRAM,選用ISSI公司的IS61LPS102436A。FPGA外部DPRAM選用IDT公司的IDT70T3539M。進一步地完成處理器所涉及的開關量接口、RS 422/RS 485通信接口、圖像輸入/輸出等接口的設計。
2.2 軟件設計
在很多圖像處理系統中,單個成像器所得到的圖像信息往往不完整,精確度低[8],此時,如果增加一個成像器提供補充數據,然后把兩個成像器的數據進行融合就能夠獲得對該場景中更多、更精確的信息,降低單一成像器所造成的不確定性。因此,通過圖像融合技術可以在很大程度上提高圖像數據的可靠性和抗干擾性。
紅外目標的圖像特征主要表現為目標的外形輪廓、灰度、紋理等。對于要處理的紅外目標,可以事先確定目標的面積范圍、形狀特征[9]。可以根據目標的面積和形狀復雜度對真假目標進行判斷。
本文采用的圖像幾何濾波的計算方法如下:
(1) 目標面積計算。分別統計各疑似目標所包含的總像素點數,作為疑似目標的面積。
(2) 目標外接矩形的長度和寬度。通過同一目標的[x,y]坐標的取值范圍來確定。計算公式如下:
式中:[W]代表目標外接矩形的寬度;[L]代表目標外接矩形的長度;[ymax]代表目標[y]坐標最大值;[ymin]代表目標[y]坐標最小值;[xmax]代表目標[x]坐標最大值;[xmin]代表目標[x]坐標最小值。
(3) 周長計算:圖像處理中,目標的周長可以通過統計同一目標邊界點的個數之和得到。在得到上述目標特征之后,依據先驗的目標特征對疑似目標逐一判斷,濾除不符合條件的疑似目標。
對于要處理的紅外目標,可以事先獲得紅外目標的灰度分布情況,以此為依據對真假紅外目標進行識別。可采用的灰度特征有:圖像的均值、最大值位置、行均值提取、列均值提取。根據上述提取的計算特征,與先驗目標特征比較,濾除不符合條件的疑似目標。
單幀的目標檢測算法無法完全提取真正的目標,仍會存在一些干擾噪聲點。此時,需要利用序列圖像目標運動的連續性即多幀軌跡關聯進一步剔除噪聲提取真目標。
本文所采用的圖像融合方法為決策級融合,對提取出的目標特征信息進行處理,利用的目標特征信息包括目標的形狀、大小、位置,通過決策級融合達到去除虛警點,準確保留真實目標的目的。
如圖4所示,在編碼端,首先輸入原始圖像,將原始圖像分割為8×8的基本處理模塊,首先根據前后幀的相關性來判別塊的編碼方式,如果是幀內編碼,直接對塊圖像進行JPEG編碼,即DCT變換、之字編碼、變長編碼、添加塊信息,輸出碼流即可;如果是幀間編碼,則需要進行運動估計。運動估計是將前一幀量化后的圖像經過逆量化、反DCT變換還原后保存為參考幀,當前塊經運動估計及隨后的運動補償,然后原始圖像與重建圖像的差異值在經過離散余弦變換、量化、之字編碼、變長編碼、添加塊信息,輸出碼流。同時,運動矢量也傳給變長編碼器進行編碼傳遞。
根據HDLC協議的描述進行FPGA實現的模塊劃分:發送或者接收控制,標志字產生,數據的并/串轉換,數據發送,CRC校驗,插0功能。其中發送或者接收控制模塊是核心模塊,控制整個發送或者接收數據的流程在各個功能模塊間進行切換。
3 算法仿真與系統測試
中值濾波、最大值及均值計算、閾值判斷都在FPGA中完成,可不考慮處理時間。因此仿真時可以只針對二值化以后的圖像進行仿真,主要仿真識別效果和運行時間。仿真環境為NiosⅡ IDE,CPU系統時鐘為150 MHz,處理時間包括CPU中完成的所有工作,如特征提取、灰度映射、幾何濾波、軌跡關聯等。
當有多個目標滿足灰度特征,且幾何濾波后還有多個目標時,僅跟蹤面積最大的目標,處理時間348 μs,處理結果如圖5所示。跟蹤所有滿足灰度特征及幾何特征的目標,四個目標滿足條件,處理時間450 μs,處理結果如圖6所示。同時跟蹤10個目標,處理時間為1.12 ms,處理結果如圖7所示。
FPGA部分的調試涉及到FPGA芯片和其外接芯片。
(1) JTAG接口和EPCS芯片測試:通過編寫FPGA程序,并將程序加載到EPCS芯片,重新上電,通過程序運行狀態判斷JTAG接口和EPCS芯片是否正常。
(2) FPGA外接存儲器測試:包括DPRAM,SBSRAM,FLASH。編寫FPGA程序對存儲器進行遍歷讀寫,若沒有錯誤則說明存儲器正常。
(3) FPGA外接視頻DA測試:編寫FPGA程序,通過ADV7123輸出固化在ROM中的LENA圖像,用電視盒接收圖像,若接收圖像無錯誤,則說明DA工作正常。
DSP部分的調試涉及到DSP芯片和其外接芯片。
(1) DSP芯片的外接存儲器測試,包括DPRAM,SBSRAM,FLASH,配置DSP的EMIF總線寄存器,對片外存儲器進行遍歷讀寫,沒有錯誤。
(2) DSP與FPGA的通信測試:配置DSP的EMIF寄存器,DSP可以通過EMIF總線操作FPGA的DPRAM,將FPGA上的數據緩存讀取到DSP的內存中。
軟件調試的驗證方法通過對比硬件平臺上的處理結果與Matlab仿真的結果是否一致來判斷,下面對核心模塊連通域標記部分進行驗證,對比連通域標記的Matlab仿真結果和SOPC的CPU運行結果。所采用的連通域標記輸入圖像如圖8所示。處理結果如表1。
統計CPU處理時間,對于該輸入圖像來說,目標個數,復雜程度超過實際應用,CPU頻率設置為100 MHz,處理時間為4.76 ms,滿足系統要求。將圖像數據傳輸給MPEG壓縮模塊,經過壓縮模塊壓縮后輸出壓縮碼流,另一端通過上位機接收壓縮碼流,并對壓縮碼流進行解碼顯示。經測試,圖像壓縮模塊工作正常,上位機可以連續的接收壓縮碼流并進行解碼顯示。
4 結 論
本文在研究當前嵌入式技術現狀與前景的基礎上,以某一紅外圖像處理項目為依托,提出了一種基于通用架構的紅外圖像一體化信息處理器,結合需求,給出了該架構的硬件設計。研究了紅外圖像處理領域的相關圖像處理算法,主要有特征提取、二值化、連通域標記、圖像融合、目標檢測跟蹤和圖像壓縮等,另外還有通信接口所涉及的HDLC協議,給出了所有功能的軟件設計,并在硬件平臺上調試通過。在今后的研究中,主要在圖像處理算法部分仍需要根據實際圖像數據進一步修改完善,保證其精度;在成像器接口、圖像處理算法、通信接口、處理器數據處理能力方面也需要進一步完善。
參考文獻
[1] 楊恢先,王緒四,謝鵬鶴,等.改進閾值與尺度間相關的小波紅外圖像去噪[J].自動化學報,2011,37(10):1167?1174.
[2] 堯征.基于SOPC嵌入式實時操作系統的應用設計[D].上海:東華理工大學,2013.
[3] 蘇玉強,劉穎.基于消息的嵌入式系統應用框架研究[J].計算機測量與控制,2011,19(5):1142?1145.
[4] 游福成.數字圖像處理Digital Image Processing[M].北京:電子工業出版社,2011:67?68.
[5] SHEN L, JIA S, JI Z, et al. Extracting local texture features for image?based coin recognition [J]. IET Image Processing, 2011, 5(5): 394?401.
[6] 王曉曦.紅外圖像活動輪廓分割方法研究[D].重慶:重慶大學,2013.
[7] 康志亮,許麗佳.基于小波的紅外圖像去噪算法研究[J].計算機仿真,2011,28(1):265?267.
[8] 岳改麗,王棟,楊蕊.幾種邊緣檢測算子在紅外圖像處理方面應用研究[J].西安科技大學學報,2012,32(4):500?504.
[9] 張會敏,謝澤奇,張云龍.紅外圖像報警系統的研究與實現[J].計算機測量與控制,2011,19(2):432?436.