視頻監(jiān)控系統(tǒng)及其在Blackfin上的應用及優(yōu)勢
1. 視頻監(jiān)控系統(tǒng)的現狀
視頻監(jiān)控系統(tǒng)從最初的模擬閉路電視監(jiān)控開始,經歷了數字化,網絡化的發(fā)展,正在向分布式、智能化的方向邁進。視頻壓縮技術的發(fā)展促進了視頻監(jiān)控系統(tǒng)的數字化,節(jié)約了大量的存儲空間。計算機網絡的普及和帶寬的增加使得城域網視頻監(jiān)控成為現實。而經過科研人員40多年的不懈努力,計算機視覺已經進入突破式發(fā)展階段。得益于計算機視覺的研究成果,智能視頻監(jiān)控系統(tǒng)開始得到產業(yè)化應用。
從上世紀90年代中期開始,以卡耐基梅隆大學(CMU)和麻省理工學院(MIT)為代表的,多家美國高校所參與的,由美國國防高級研究項目署設立的視覺監(jiān)控重大項目VSAM(Visual Surveillance and Monitoring),以及其它科研機構的研究成果,使得智能視覺分析取得了快速發(fā)展。2001年美國“911事件”,以及后來的西班牙馬德里列車連環(huán)爆炸和英國倫敦地鐵大爆炸等恐怖襲擊后,全世界范圍內對視頻監(jiān)控系統(tǒng),包括智能視頻分析系統(tǒng)的需求空前高漲。在英國全國范圍內已經安裝攝像機420多萬個,平均每14人一個,一個人一天之中可能出現在多達300個攝像機前(英國《The Daily Mail》)。國內,2007年底廣州市安裝完畢25萬個治安攝像機,北京在26.3萬臺攝像機的基礎上,又在所有重點單位、人員聚集的公共場所、重要的交通樞紐、城市重要基礎設施及法律法規(guī)規(guī)定的重點區(qū)域安裝公共圖像信息系統(tǒng)并且全部與警方監(jiān)控網聯網。上海2010年前將在馬路上安裝20多萬個監(jiān)控攝像機,全面建立“社會防控體系”。海量的監(jiān)控圖像需要視頻監(jiān)控系統(tǒng)智能地選擇壓縮、存儲和檢索內容。
當前,除了CMU和MIT,奧地利Graz理工大學的嵌入式智能攝像機研究組,IBM的S3(Smart Surveillance System)項目組,Intel的IRISNET(Internet-scale, Resource-intensive Sensor Network Services)項目組等,分別在分布式智能監(jiān)控系統(tǒng)的不同領域處于領先地位。Object Video, Hisign,3VR等公司率先實現了智能視頻監(jiān)控的工業(yè)應用。在國內,中科院自動化所,清華大學電子工程系和自動化系等處于研究的前列。
2.智能視頻監(jiān)控系統(tǒng)的技術背景簡介
智能視頻監(jiān)控的核心內容之一是對特定目標的自動跟蹤。目標跟蹤可分為5個步驟,包括運動檢測、目標分類、目標(類型)跟蹤、行為分析和目標(個體)跟蹤。例如對人體的跟蹤:首先從實時圖像序列(即視頻)中檢測出運動物體,再判定運動物體中的人體,然后跟蹤人體的運動軌跡,并分析和選定有異常行為的人,如在車站,機場等遺留包裹的人,最后對行為異常的人進行持續(xù)跟蹤。
運動檢測是從圖像序列中將變化區(qū)域從背景圖像中提取出來。運動區(qū)域的有效分割將大大減少后繼過程的運算量。然而,背景圖像的不穩(wěn)定性,如陰影,光照,慢移動(如蝸牛的爬行),靜移動(樹葉的擺動)等等,也使得運動檢測非常困難。
視頻監(jiān)控系統(tǒng)中的運動檢測有兩種不同的實現途徑,一種是直接利用視頻壓縮算法的中間結果,比如ADI的第三方合作伙伴利用MPEG 4和H.264編碼過程中的運動向量,在Blackfin處理器上同步實現了運動檢測和視頻壓縮。另外一種是獨立于視頻編碼的方法。
運動檢測算法可按照不同分類標準分為多種。中科院自動化所把運動檢測算法歸納為三種:背景消除法,時間差分法,光流法。背景消除法和時間差分法都可以看作是差分圖像法。背景消除法是目前運動分割中最常用的一種方法,它利用當前圖像與背景圖像的差分來檢測出運動區(qū)域。時間差分方法是在連續(xù)的圖像序列中兩個或三個相鄰幀間采用基于像素的時間差分并且閾值化來提取出圖像中的運動區(qū)域?;诠饬鞣椒ǖ倪\動檢測采用了運動目標隨時間變化的光流特性,通過計算位移向量光流場來初始化基于輪廓的跟蹤算法,從而有效地提取和跟蹤運動目標。該方法的優(yōu)點是在攝像機運動的情況下也能檢測出獨立的運動目標。
目標分類的目的是從檢測到的運動區(qū)域中將特定類型物體的運動區(qū)域提取出來。根據利用的信息的不同,目標分類可以分為基于運動特性的分類和基于形狀信息的分類兩種方法?;谶\動特性的識別利用目標運動的周期性進行識別,受顏色、光照的影響較小?;谛螤钚畔⒌淖R別利用檢測出的運動區(qū)域的形狀特征與模板或者統(tǒng)計量進行匹配。
目標跟蹤是在連續(xù)的圖像幀間創(chuàng)建基于位置、速度、形狀、紋理、色彩等有關特征的對應匹配。依據不同的跟蹤方法可分為基于模型的跟蹤、基于區(qū)域的跟蹤、基于活動輪廓的跟蹤、基于特征的跟蹤等。
聯合目標跟蹤與分類(JTC)技術是信息融合領域新興的一個研究方向。其基本思想是,通過在目標跟蹤器和目標分類器之間進行雙向信息交互,來同時有效地提高目標的跟蹤精度和分類性能。
在特定情況下需要對跟蹤目標從類型細化到個體。這需要對目標的行為進行分析和理解。行為理解的關鍵問題是如何從學習樣本中獲取參考行為序列,并且學習和匹配的行為序列必須能夠處理在相似的運動模式類別中空間和時間尺度上輕微的特征變化。
3. 智能視頻監(jiān)控系統(tǒng)實施的難點和Blackfin的優(yōu)勢
盡管已經取得了巨大進展,智能視頻分析領域仍然沒有公認的最優(yōu)方法。其自身研究內容的復雜性,使得研究方法和工具多樣,算法復雜度高,適用范圍有限,沒有魯棒性、準確度、速度都符合需求的普遍方法。同時,視頻監(jiān)控系統(tǒng)的網絡化和分布式處理的要求,以及大規(guī)模工程安裝對成本、體積和功耗的限制,使得運算能力和帶寬都在不斷提高的嵌入式處理器成為視頻監(jiān)控系統(tǒng)的主流選擇。而非標準化的智能視頻分析,正是DSP的用武之地。
Blackfin處理器是ADI與INTEL聯合研制的會聚式處理器,它的MSA(Micro Signal Architecture)架構兼具MCU的控制能力和DSP的高速運算能力。MCU和DSP融入同一個內核,只需要同一套開發(fā)工具和同一套指令集。與DSP加ARM的芯片架構相比,具有軟硬件實現簡單的優(yōu)勢。Blackfin支持ThreadX,Nucleus,uCOS-II,uCLinux等十多種嵌入式操作系統(tǒng),為客戶提供熟悉的軟件架構基礎。Blackfin為高強度,高數據率的數字和媒體處理做了專門優(yōu)化,是理想的視頻處理器,而且具有極高的性價比。它的低功耗特性非常適合外殼體積小的IP攝像頭產品。
Blackfin的幾十個DMA通道和可靈活配置的Cache很好地滿足了視頻監(jiān)控系統(tǒng)對大運算量,高數據吞吐率的要求。十級流水線使得Blackfin有很強的指令并行執(zhí)行能力。零開銷循環(huán)控制指令讓系統(tǒng)中的大量循環(huán)跳轉不再消耗任何處理器的時鐘周期。利用這些優(yōu)勢,real解碼器的idct4×4算法在Blackfin上速度提高了7倍。
頻數據有其自身的特性。在不同顏色空間,表示象素的每個分量通常都是8位寬度。Blackfin的4個視頻算術運算單元和視頻象素指令集大大加速了視頻運算速度。一條視頻象素操作指令可以在一周期之內完成4對視頻數據分量的加法運算,減法運算,加減混合運算,取平均值,或者相減并求絕對值等11種視頻象素運算。這些運算在編解碼算法中的運動估計、loop filter和智能視頻分析的各種算法中大量應用。在智能視頻分析的一些基礎算子中,例如直方圖統(tǒng)計,中值運算,Sobel運算,形態(tài)學中的膨脹運算等都可以利用Blackfin的MIN, MAX指令來消除條件跳轉,節(jié)省處理器周期。不僅如此,Blackfin還支持13種非視頻數據的向量運算。適當設計數據結構,在前背景分離,閾值計算和更新等多個環(huán)節(jié)都可以運用Blackfin的特色指令讓智能視頻分析算法更迅捷。這些本身就很有效的指令中,大部分指令都能夠并行執(zhí)行,使得Blackfin的處理能力再加倍。
4.智能視頻監(jiān)控系統(tǒng)的實例
清華大學自動控制系在視覺分析領域有長期的研究和積累。結合ADI的優(yōu)勢,雙方在Blackfin BF561雙核處理器上實現了智能視頻監(jiān)控系統(tǒng)。ADI提供高質量高性能的H.264編碼算法,清華大學自動控制系則在BF561上實現了自動跟蹤算法。系統(tǒng)框圖如圖1所示。
圖1:基于BF561的智能監(jiān)控終端框圖
H.264編碼算法模塊是ADI為Blackfin客戶提供的免費軟件模塊之一,目前已經有基于BF53x和BF561兩個系列的芯片的實現。它支持完全動態(tài)的參數配置,用戶可在系統(tǒng)運行時根據場景和網絡帶寬的變化改變編碼的碼率、幀率、關鍵幀間隔、量化值等等。從80KBb的CDMA網絡到3Mb的DVR系統(tǒng)都能使用同一套函數庫達到理想的編碼質量。具有很強的適應性和靈活性。
清華大學自動控制系的智能跟蹤算法采用單高斯背景建模的背景減除方法進行運動檢測,在目標分類階段,結合了基于運動特性的分類和基于形狀信息的分類兩種方法,利用人體、車輛的長寬比例、梯度直方圖和運動周期性等對運動物體進行分類。在對同類目標跟蹤時,采用基于區(qū)域的算法,判斷連續(xù)的各幀之間運動物體的質心位移方向和距離。基于上述三個階段的算法,系統(tǒng)還能實現人群跟蹤,入侵檢測,人、車數量統(tǒng)計,遺留物體檢測,攝像頭非法遮擋和移位報警等功能。
系統(tǒng)中,BF561的Core A用于實現H.264編碼算法,Core B用于智能視頻分析。Core A上同時運行uCos II操作系統(tǒng)以及RTP和TCP/IP協(xié)議棧。YUV4:2:2視頻幀通過PPI(并行外設接口)以DMA的方式傳送到SDRAM緩沖區(qū)。Core A和Core B共享幀緩沖區(qū)。Core B首先啟動memory DMA把視頻幀的Y(亮度)分量傳送到Core B的片內存儲區(qū)L1 SRAM的行緩沖區(qū)內。Core B對行緩沖區(qū)內的Y分量進行背景建模和后繼的運動檢測及目標跟蹤。如果可視區(qū)域內出現指定類型的物體,Core B向Core A發(fā)送一個中斷信號,Core A可以通過UART接口向本地控制臺發(fā)送告警信息,或者通過網絡接口向遠程控制臺發(fā)送告警信息;Core B還可以修改幀緩沖區(qū),給目標加矩形邊框以標識目標。Core A也通過一個memory DMA接收來自幀緩沖區(qū)的視頻亮度和色度數據。編碼器對Core B處理后的幀緩沖區(qū)進行編碼。同時系統(tǒng)也可以通過另外一個PPI接口輸出經Core B修改后的幀緩沖區(qū),實時顯示跟蹤結果。目標跟蹤算法是實時的,因此不會造成編碼的延時。在未檢測到運動物體時,編碼器可以工作在低碼率或低幀率狀態(tài)下,甚至不編碼。一旦檢測到指定類型的運動物體,編碼器即恢復正常工作,把壓縮碼流和對應時間通過以太網接口上傳到管理系統(tǒng)。這樣既能節(jié)約存儲空間,又能方便事后對視頻錄像的檢索。
該系統(tǒng)還可以通過UART或者以太網接口設定監(jiān)控區(qū)域邊界,用以標識入侵檢測的監(jiān)視范圍。當有運動物體越過邊界時,系統(tǒng)立即向控制臺報警。控制臺還可以向該智能監(jiān)控終端發(fā)送指令改變它所執(zhí)行的功能,從智能跟蹤,到入侵檢測,再到遺留物體檢測或者清點人數等等,自由切換。沒有Blackfin強大的處理能力和靈活性,在一個嵌入式處理器里實現如此復雜而眾多的功能幾乎是不可想象的。
5.智能視頻監(jiān)控的發(fā)展趨勢
盡管智能視頻分析在視頻監(jiān)控中已經得到一定的應用,但它還有很長的發(fā)展歷程。一個比較理想的智能視頻監(jiān)控系統(tǒng)應該是這樣的:
如果有一天,城市的一角突然發(fā)生槍擊事件。犯罪嫌疑人立即逃向不遠處的轎車,試圖駕車逃跑。然而,他的一舉一動已經落入了公共安全監(jiān)控網之中,難以遁形。首先,帶有聲音識別和聲源定位功能的視頻監(jiān)控系統(tǒng)檢測到槍聲之后立即調整攝像頭角度和方向,對準槍聲來向,同時啟動第一次報警,報告槍擊發(fā)生的大致位置。該攝像頭采集視頻,檢測運動人體,分析人物的行為特征,并立即定位、跟蹤嫌疑人。定位后,通知系統(tǒng)內處于合適位置的多個攝像頭提取嫌疑人面部特征,試圖駕駛的車輛的車牌等,并上傳到管理系統(tǒng),建立數據庫表項,分發(fā)到公安局,車站,機場,銀行,海關等重點單位。監(jiān)控系統(tǒng)轉而跟蹤該車輛。警方在嫌疑人運動的路上設置警力攔截和追捕。即使嫌疑人僥幸逃脫現場追捕,當他出現在全國任何一個攝像頭前的時候,仍然無法逃脫被捕的命運。
這個系統(tǒng)中融合了多種先進監(jiān)控技術。音視頻結合,視覺成像和非視覺成像結合,目標跟蹤和行為分析、特征識別相結合的全連通的智能視頻監(jiān)控系統(tǒng)將是未來安防系統(tǒng)的趨勢。其中的各項技術都已經分別得到了相當的發(fā)展。Blackfin在紅外攝像頭,相控陣麥克風等方面已有許多應用。而更準確,更快速,更魯棒的智能視覺分析算法仍然是一個難點。ADI將會繼續(xù)在智能視頻監(jiān)控領域與全球科研機構和企業(yè)合作,為我們創(chuàng)造更安全更美好的生活。