任毅,程耀瑜
(中北大學 山西現代無損檢測工程技術中心,山西 太原030051)
智能相機的一個重要應用領域是交通的實時監控,在這個領域智能相機可以作為已知的由普通相機、圖像采集卡和電腦組成的機器視覺系統的替代品[1]。CMOS圖像傳感器可以克服由于天氣狀況或者路燈原因而引起的強度對比問題從而可以從智能相機中得到一個質量更好的圖像或視頻處理結果。在智能相機中,不僅是圖像增強和圖像壓縮非常重要,而且應用于場景分析和行為分析的視頻圖像計算方法也變得越來越重要。雖然這些應用于實時處理和存儲的計算都有一個很高的要求,但是由于智能相機具有低功耗、低成本、具有充足計算處理和存儲能力,所以它可以滿足上述要求。
一般情況下,智能相機由圖像傳感器、處理單元和傳輸單元組成。用于交通監控的智能相機被封裝在一個盒子里頭,安裝在隧道和高速路旁,由電源插座或者太陽能電路板向其供電。因此,智能相機在暴風雨天氣等天氣變化明顯的時候,也可以正常使用。
智能相機的系統結構如圖1所示。

圖1 智能相機系統結構
1.2.1 圖像傳感器
圖像傳感器是智能相機整體數據流的第一個階段。傳感器把入射光轉換成能被傳輸到處理單元的電信號。由于CMOS傳感器帶有對數特性、片上模數轉換器和功率放大器,所以它可以很好地滿足智能相機的要求。
1.2.2 處理單元
整個數據流的第二個階段是處理單元。高性能的圖像和視頻處理對計算性能的要求非常高,粗略估算計算速度是10GIPS。在智能相機中,通過數字信號處理器(DSP)可以實現這些性能要求。本實驗設計的智能相機包含兩個DSP速率為600MHz的TMS320DM642DSP,這兩個DSP通過多通道緩沖串行口(McBSP)緊密地連接在一起,并且每個處理器與自己的局部存儲器相連[2]。圖像傳感器通過FIFO存儲器與一個DSP相連,以緩沖傳感器和DSP數據傳輸的時間,然后通過一個8MB到256MB的外部存儲器把圖形傳輸到DSP中。
1.2.3 通信單元
智能相機中整個數據流的最后一個階段是通信單元。處理單元通過通用接口把數據傳輸到通信單元,這個接口可以實現如以太網、無線局域網和GSM / GPRS不同網絡間的簡單連接。在以太網接口上必須添加物理層,因為已經在數字信號處理器上實現了媒體訪問控制層。
1.3.1 動態能量管理(DPM)
動態能量管理(DPM)的主要思想是各個組件在運行時可以被切換到不同的電源模式。每種電源模式的特征是通過元件不同的功能/性能和相應功耗來展現。例如,如果在某個特定時期內沒有使用一個具體的元件,那么這個元件就沒被供電。改變元件供電模式的命令是由一個中央電源管理器(PM)控制的。該命令相當于一個電源管理策略(PMP),通常在主要處理組件的操作系統中應用PMP。為了決定該發出哪種命令,PM必須知道系統的工作量。轉變組件的電源模塊需要一段時間,因此為了避免系統故障,在PM的PMP中必須包含一些切換時間。
1.3.2 智能相機中的DPM
在智能相機中,PM位于主機DSP的操作系統內核中。每個組件的電源模式由通過I2C發送的各個命令來控制。每個組件都有其特殊的包括不同功耗、速率和響應時間的電源模塊。這些特征都封裝在PM的查找表中并被作為PMP的輸入來使用。如果智能相機在正常模式下運行,比如在全功率模式下不需要運行相應的DSP。在這種情況下,PM把DSP設置成低功率模式以便滿足實時性的需要。如果相機改變其運行模式為報警方式,那么PM把所有的組件都設置成高性能模式[3]。
為了驗證智能相機的視頻處理能力,選擇在交通檢測中應用非常重要的固定式車輛來做檢測。我們選擇在隧道環境做檢測,因為它與戶外場景環境比起來較簡單。假如相機是靜止的而且周圍燈光環境是常量,光亮度僅僅由汽車運動或噪音如汽車燈光反射引起。一幅圖像在(x,y)點處的像素就是所謂的背景像素,如果在靜態環境下兩幅連續圖像It-1(x,y)和It(x,y)的差值比固定狀態下的閾值小或者比統計情況下由分布式背景亮度值所支持的一個像素亮度值小,那么背景像素亮度值可以用高斯分布來描述。
圖2描述了固定汽車監測算法。每一像素的背景模型用包含整個亮度范圍的高斯分布初始化,然后把觀察分布上傳到每個帶有新視頻流圖像的像素中,觀察分布的均值和方差由樣本均值和樣本方差估計得到。

圖2 固定式車輛檢測的視頻處理算法
以一秒25幀的全PAL分辨率標準傳輸視頻,這需要一個幾乎為一秒20MB的帶寬。最先進的視頻壓縮減少帶寬的需要,需要100到1.5Mb/s。
高級簡單的MPEG-4編碼方法非常適合交通監控,由于編碼質量的原因,可以根據不同的需要調整需要的帶寬[4]。
把TCP/IP協議作為一個IP棧,可以實現網絡連接。通過FTP用戶可以把存儲在文件中的數據下載到相機中,如固化軟件更新或者新參數設置。通過UDP,用戶可以進行多播流媒體視頻傳輸。本設計中的IP棧在DSP中已經被設置優化[5]。
智能相機的固件控制整個系統的工作,并且提供接口和不同任務的控制如任務管理、相機控制和外圍控制。固件定義了4個基本的啟動等級:(1)正常模式;(2)報警模式;(3)全更新模式和最后更新模式;(4)部分更新模式。
為了能盡快評估智能相機的功能和性能我們開發出了一個模型,如圖3所示。模型的核心部分是由ATEME制造的網絡視頻開發套件(NVDK)。該套件包括一個帶有264 MB同步動態內存的TMS320DM642和一個以太網擴展卡。通過擴展板把LM-9618CMOS傳感器與NVDK連接在一起,并通過FIFO存儲器傳輸視頻數據。

圖3 智能相機的模型結構
假如相機是靜止的而且周圍燈光環境不變,僅僅由汽車運動或噪音引起前景光亮度改變,如汽車燈光反射,亮度值是在0和255間的灰度值。一幅圖像在(x,y)點處的像素是語義上的背景像素,如果兩幅連續圖像It-1(X,Y)和It(X,Y)的差值
I(t-1)(X,Y)—It(X,Y)比固定狀態下的閾值小或者比統計情況下由分布式背景亮度值所支持的一個像素亮度值小,且我們已經假定是在靜態環境下,那么背景像素亮度值可以用高斯分布來描述。為了使參數隨著時間的變化更可靠,在參數估計以前在空間域中把圖形用帶有標準偏差的高斯濾波器濾波,如圖4(a)。
本文選擇了一種帶有增強變化像素區域的連通區域算法,如圖4(b)。如果發生了最小閾值和最大閾值之間的區域重疊,同時每個亮度分布It-k(x,y)……It(x,y) 都描述了一個區域所有像素的最后圖像,如圖4(d)那么固定的汽車就被檢測出來。相對于觀察分布,可以實現適應性前景模型,如圖4(c)。以下3種情況應該注意:

圖4
(1)觀察分布在前景模型里面;(2)前景景模型在觀察分布里面;(3)前景模型和觀察分布相互交叉。
在(1)中前景模型太寬,所以模型參數被更新到觀測分布的參數中。這是由平均指數實現的。在(2)中,如果兩個分布的四分位差距比較小,那么前景模型僅僅由指數平均數更新。在(3)中的適應性規則比(2)中的適應性規則小。前景模型與觀測分布從左邊或者右邊交叉相互交叉。因此,前景模型的75%的四分位值或25%的四分位值分別被更新成觀測分布的75%的四分位值或25%的四分位值[7],如圖4(e)。在由環境光的變化引起的全局強度變化的情況下,相當數量的像素強度不會被當前前景模型支持。然后,所有像素前景模型被重置成初始化模型。
在3.1節中描述固定式車輛檢測是對該模型的第一種算法的實現。然后把原始的MATLAB程序移植到C++中同樣也做了一些性能實驗。未優化的算法大約需要3500億每幀的周期,這相當于在PAL分辨率中7秒鐘一幅圖像的處理時間。這個算法的主要瓶頸是內存被過度浪費和過度使用浮點運算[8]。優化的浮點運算雖然有所改善,但我們還是決定用16位的變量實行定點運算,通過減少浪費的內存和用前面提到的定點運算方法,使性能得到提高了。
表1中列出了相機主要部件的標準功耗。通過應用DPM,可以降低相機的功耗,提高相機的性能和可靠性。

表1 智能相機的預計功耗
[1]C.S.Regazzoni, V.Ramesh, and G.L.Foresti.Introduction of the special issue[J].Proceedings of the IEEE,89(10),Oct 2001.
[2]W.Wolf, B.Ozer, and T.Lv.Smart cameras as embedded systems[J].Proceedings of the IEEE.48-53, 2002
[3]肖傳偉.智能相機的設計研究 [D].長春: 中國科學院長春光學精密儀器機械與物理研究所,2007.
[4]周懷得,肖傳偉,郝志航.基于DSP和CPLD的智能相機系統設計與研制[J].微計算機信息,2006,22(62):209-211.
[5]戴逸民,梁曉雯,裴小平.基于DSP的現代電子系統設計[J].北京:電子工業出版社,2002,6(39):25-31.
[6]鄒臣.基于DSP的智能相機系統設計[D].武漢:華中科技大學,2007.
[7]R.P.Pflugfelder.Visual traffic surveillance using realtime tracking.Master’s thesis[D].Vienna University of Technology, Vienna, Austria, 2002.
[8]J.Foote,D.Kimber,FlyCam.Practical Panoramic Video and Automatic Camera Control[J].IEEE International Conference on Multimedia and Expo, 2000:1419-1422.