利用FPGA協(xié)處理器優(yōu)化高性能數(shù)字?jǐn)z像監(jiān)控系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
商用攝像監(jiān)視系統(tǒng)的一般需求是支持一至八個(gè)攝像機(jī),先進(jìn)的視頻壓縮如MPEG-4,Windows Media 9 H.264,低延遲編碼(1-3幀)和不同幀速率下的同步查看和記錄。編碼分辨率從CIF(大概是VCR分辨率)到D1(大概是DVD分辨率)。視頻速率從每秒2幀(家用安全)到賭場和其它高級系統(tǒng)中高達(dá)每秒30幀。
增強(qiáng)攝像監(jiān)視的質(zhì)量
在固定帶寬情況下,可以采用不同的方式包括先進(jìn)的CODEC、定義興趣區(qū)域,圖像穩(wěn)定和全景攝影來改進(jìn)視頻質(zhì)量。
最常用的先進(jìn)視頻壓縮技術(shù)是MPEG-4。然而,設(shè)計(jì)者正在檢測H.264的基本性能,經(jīng)比較它可以將視頻質(zhì)量提高33%(圖1),大大地增強(qiáng)攝像監(jiān)視系統(tǒng)的檢測能力。
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window CTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('upload/2008_04/080430112072641.gif');}" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window CTRL+Mouse wheel to zoom in/out';}">
因此,視頻質(zhì)量和檢測能力可以通過監(jiān)視情況定義更感興趣區(qū)域來增強(qiáng)。在不感興趣的區(qū)域即天空、天花板和風(fēng)中搖擺的樹冠等,系統(tǒng)能夠增加視頻壓縮等級,從而減小那些區(qū)域的視頻帶寬和處理負(fù)荷,因?yàn)檫@些地方出現(xiàn)安全漏洞的危險(xiǎn)性是很低的。反之,這讓系統(tǒng)更關(guān)注感興趣的區(qū)域,如外門、窗戶、高安全區(qū)域的內(nèi)部和會(huì)有或已有移動(dòng)的區(qū)域。本質(zhì)上,通過定義興趣區(qū)域和關(guān)注更關(guān)心的那些區(qū)域,系統(tǒng)能夠減小虛警數(shù)量,同時(shí)增加檢測到真正安全漏洞的可能性。
攝像機(jī)移動(dòng)和/或攝像機(jī)抖動(dòng)也會(huì)降低攝像監(jiān)視的質(zhì)量。當(dāng)然,攝像機(jī)移動(dòng)對確保覆蓋整個(gè)監(jiān)視區(qū)域是必須的,而抖動(dòng)可能是有環(huán)境因素如風(fēng)或過往車輛造成的。然而,這兩種因素會(huì)降低壓縮質(zhì)量,可能會(huì)到造成丟幀,因此降低攝像監(jiān)視系統(tǒng)的質(zhì)量。在最糟糕的情況下,這些因素會(huì)造成系統(tǒng)處理超負(fù)荷。數(shù)字?jǐn)z像監(jiān)視系統(tǒng)穩(wěn)定技術(shù)現(xiàn)在能夠用來解決攝像機(jī)的物理抖動(dòng)。在這方面現(xiàn)在有幾種算法類型,但是都遵循同樣的原則。圖像的某些部分和以前的圖像比較。圖片偏移不同的矢量,用搜索來尋找圖像間相關(guān)性最大的點(diǎn)。然后把偏移矢量應(yīng)用在整個(gè)圖像上,邊緣上進(jìn)行一些剪裁,但是大部分的圖像仍然是穩(wěn)定的。
FPGA可以作為搜索和相關(guān)的評估。30fps D1分辨率單通道的一般需求是大約3,000-5,000個(gè)FPGA邏輯單元——等效于大容量器件如Altera Stratix II FPGA大約4-7%的邏輯面積。
提供全景圖的那里也是集成了旋轉(zhuǎn)攝像機(jī)的攝像監(jiān)視系統(tǒng)的一個(gè)關(guān)鍵特性。這個(gè)特性使得覆蓋特定場所所需的攝像機(jī)數(shù)目最少,讓安全部門監(jiān)視系統(tǒng)很快地查看更大的區(qū)域或關(guān)注已經(jīng)檢查到潛在安全問題的特定區(qū)域。當(dāng)全景算法結(jié)合選擇攝像機(jī)(PTZF),系統(tǒng)能夠跟蹤視頻圖像的移動(dòng)。不是將圖像移回中心,而是圖像放大為更大分辨率的圖片。新的圖像“縫在”老圖像上,覆蓋部分被更新。用于圖像穩(wěn)定的同樣的FPGA機(jī)制用于全景攝影,具有增加最小計(jì)算量的縫合。
視頻移動(dòng)檢測在室內(nèi)和室外,無論白天黑夜都很有效,能夠大大地增強(qiáng)攝像監(jiān)視系統(tǒng)的能力。這個(gè)特性使用跟蹤算法,接收來自監(jiān)視攝像機(jī)的噪聲檢測,提取出由圖像噪聲、如風(fēng)等環(huán)境因素造成攝像機(jī)移動(dòng)和由云或移動(dòng)的樹枝造成的錯(cuò)誤圖像等引起的不重要的移動(dòng)。它簡化了跟蹤入侵者的算法,可以和傳統(tǒng)的移動(dòng)檢測相結(jié)合,讓錯(cuò)誤識別降至最低。移動(dòng)檢測算法從用幾百個(gè)邏輯單元實(shí)現(xiàn)的非常簡單的高通或邊緣檢測濾波器到能夠克服雨、風(fēng)干擾及人、小動(dòng)物和車輛等的差異的非常復(fù)雜的算法。先進(jìn)的算法一般采用移動(dòng)跟蹤,和MPEG壓縮中的運(yùn)行估計(jì)模塊類似。圖像不同部分的移動(dòng)在時(shí)間上進(jìn)行跟蹤,如果移動(dòng)顯示始終如一,檢測和跟蹤到一個(gè)入侵者。這允許系統(tǒng)忽略雨、灰塵和燈光的變化。實(shí)現(xiàn)先進(jìn)的移動(dòng)檢測算法需要只需要1,000-3,000 FPGA邏輯單元。
視頻存檔
在最現(xiàn)代的攝像監(jiān)視系統(tǒng)中視頻存檔是必須的功能,它讓安全部門保存可能的侵入和維護(hù),用于識別入侵者的視頻。它或者在創(chuàng)建圖像的本地完成,或者在更安全的遠(yuǎn)程地點(diǎn)完成。IP攝像機(jī)或視頻服務(wù)器把所有的壓縮視頻發(fā)送給后臺部門,在那里中央記錄單元收集所有的視頻流并進(jìn)行歸檔。這種配置不需要昂貴的終端單元,容易進(jìn)行視頻管理,但是需要非??煽康木哂懈邘挼木W(wǎng)絡(luò),一次支持所有攝像機(jī)的傳送。另一種配置使用本地硬盤記錄,讓后臺部門一次只能查看一臺攝像機(jī),或訪問任何單元的任意存檔視頻。
實(shí)現(xiàn)
DSP處理器和FPGA協(xié)處理器的組合具有數(shù)字?jǐn)z像監(jiān)視系統(tǒng)所需的非常高的性能和高度靈活的信號處理能力。DSP處理器優(yōu)勢包括高時(shí)鐘速率(高度1GHz),基于C/C++的開發(fā),內(nèi)建的存儲(chǔ)器管理和內(nèi)建的I/O接口。同時(shí),DSP處理器有有限數(shù)量的指令/時(shí)鐘和乘法器,以及固定的字長和I/O接口。另外,大部分DSP允許非常有限的處理器間通信,采用低速總線如PCI和其它DSP相連。
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window CTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('upload/2008_04/080430112072642.gif');}" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window CTRL+Mouse wheel to zoom in/out';}">
另一方面,F(xiàn)PGA包括大量的指令/周期,比DSP多一至兩個(gè)數(shù)量級的乘法器和靈活的字長。例如,Stratix II FPGA每個(gè)器件有多達(dá)384個(gè)18×18乘法器/累加器,每個(gè)能夠運(yùn)行在370MHz,及將近180K個(gè)標(biāo)準(zhǔn)邏輯單元。FPGA也容許訪問先進(jìn)的存儲(chǔ)器件如DDR,DDR II,RLDRAM和QDR。先進(jìn)FPGA的其它優(yōu)點(diǎn)是能夠通過高速LVDS和數(shù)千兆SERDES總線和其它FPGA或其它器件相連,如DSP。它們的驅(qū)動(dòng)包括更長的開發(fā)時(shí)間,更大的器件功率(盡管不是根據(jù)計(jì)算量)和1/3 DSP峰值處理速率的時(shí)鐘速率。
這兩類器件顯然可能互相補(bǔ)充。雖然DSP能夠快速地開發(fā)新的和復(fù)雜的算法,但是它們一次只能完成兩至四個(gè)計(jì)算。另一方面,F(xiàn)PGA能夠一次對整個(gè)矢量甚至矩陣進(jìn)行算術(shù)操作。而且,F(xiàn)PGA在連接多個(gè)處理點(diǎn)上非常出眾,在DSP間分配數(shù)據(jù),把收集并把分支計(jì)算組合成單個(gè)輸出流。
尤其在攝像監(jiān)視應(yīng)用中,F(xiàn)PGA可以用來預(yù)處理視頻、完成視頻穩(wěn)定、濾波和移動(dòng)檢測。然后將穩(wěn)定的視頻及移動(dòng)檢測信息送給DSP進(jìn)行視頻壓縮和協(xié)議棧處理。
結(jié)論
攝像監(jiān)視只是一些視頻影像系統(tǒng)的一種,它們?nèi)找嫘枰浅8叩男盘柼幚砗痛鎯?chǔ)帶寬以及多處理單元間通信的能力,以完成所需分辨率和實(shí)時(shí)視頻觀看要求。其它應(yīng)用包括醫(yī)療影像、光學(xué)檢測、視頻廣播、科學(xué)計(jì)算和軍事應(yīng)用。設(shè)計(jì)這些系統(tǒng)的工程師將不斷地利用DSP處理器和高性能FPGA的組合來實(shí)現(xiàn)所需的視頻影像質(zhì)量,這是完全可能的。