多層遞階式的場景視覺監(jiān)控系統(tǒng)
視覺監(jiān)控的架構設計
系統(tǒng)架構
基于眾多視頻安防監(jiān)控工程解決方案,我們總結出這樣一條經(jīng)驗:一個實際的分布式智能視覺監(jiān)控系統(tǒng)不僅應具備強大的視頻分析功能,且還應具有“多層遞階”信息處理結構。如圖1所示結構圖,系統(tǒng)主要包括如下組件:
.多個節(jié)點工作站;
.一個數(shù)據(jù)中心平臺站;
.一個監(jiān)控管理站。
在圖1所示拓撲圖中,節(jié)點工作站實現(xiàn)形式位于視頻監(jiān)控現(xiàn)場的攝像機(IP攝像機或SDI攝像機)和智能終端(嵌入式硬盤錄像機NVR或支持高清的SDI硬盤錄像機),NVR或SDI硬盤錄像機同時管理著多臺攝像機。在IP視頻監(jiān)控解決方案中,高清IP攝像機將壓縮后的視頻流以略帶延遲的方式傳入NVR,NVR可有選擇地分析收集到的各路視頻的圖像內容,并把分析結果和壓縮視頻流通過IP網(wǎng)絡上傳到監(jiān)控數(shù)據(jù)中心平臺站。在智能交通業(yè)務中,NVR除收集從一體化攝像機中傳來的視頻流外還包括該路視頻中的智能視覺分析結果。在SDI-CCTV解決方案中,高清視頻流通過同軸電纜以無壓縮的方式高速地傳入SDI硬盤錄像機。SDI硬盤錄像機上的智能分析軟件直接對原始高清視頻流進行視覺內容分析,并經(jīng)由視頻線向監(jiān)控數(shù)據(jù)中心平臺站上傳分析結果和非壓縮視頻流。每個節(jié)點工作站上的操作系統(tǒng)通常為Linux且運行智能視頻分析軟件。
數(shù)據(jù)的分層傳輸方法
我們還提出了一種基于TCP/IP協(xié)議集的“數(shù)據(jù)的分層傳輸方法”——無論網(wǎng)絡上有無“路由解析”或是“防火墻”(通常會對多媒體通信會話的建立造成干擾)設置,智能分析的結果數(shù)據(jù)和實時的音視頻流數(shù)據(jù)都可以直接在開放的網(wǎng)際間傳輸。其具體技術方案以下兩個:
1、底層通信協(xié)議采用XMPP即可擴展消息和呈現(xiàn)協(xié)議,這是專門為建立即時消息系統(tǒng)設計的。其虛擬的非限制性擴展功能使它被廣泛應用在通用型服務器和分布式系統(tǒng)中。XMPP協(xié)議使用為保證安全消息完整性層(基于TLS標準)、認證、尋址策略提供了一種增值能力。XMPP協(xié)議還提供了一種基于XML消息的容器來存儲自描述的結構化信息。本方案中,我們在此協(xié)議層實現(xiàn)智能分析結果數(shù)據(jù)(元數(shù)據(jù))的路由傳輸。
2、XMPP協(xié)議的擴展部分用于建立視頻監(jiān)控中的多媒體通信會話。在本方案中,我們采用加密后的RTP協(xié)議來實現(xiàn)網(wǎng)絡上的各種音頻數(shù)據(jù)流和海量視頻數(shù)據(jù)流的傳輸功能。當網(wǎng)絡上設置有路由轉發(fā)設備或在路由器上有防火墻時,為了保證高效的數(shù)據(jù)流傳輸,我們在系統(tǒng)中實現(xiàn)了代理服務功能。
移動目標的檢測和跟蹤
移動目標的檢測
移動目標檢測是視頻分析處理鏈條的第一個環(huán)節(jié),檢測結果可為后續(xù)處理和分析使用。很多視頻目標分割的算法通常使用空間和時間模型來產(chǎn)生目標的二值掩膜(對于精細的目標分割而言,而這也是圖像分割的終極理想),而實際上得到的是對這個掩膜逼近的像素塊Blob。在我們的系統(tǒng)框架中,我們采用基于時空復合模型的背景減除方法來檢測前景目標。這種方法對很多應用場景都很適用,因它可有效地處理光照條件變化帶來的干擾,很好地自適應背景變化帶來的背景模型的更新方式,如:靜止不動的目標逐漸融入到背景中,背景中的目標突然啟動而容易使原來的背景模型難以適應更新的速度而產(chǎn)生“鬼影”(檢測效果如圖2所示)。
目標分割之外,還有一個輔助算法用于消除目標在光照作用下投射的陰影。首先是陰影的檢測,然后是陰影的消除。通常,投射的陰影會成為檢出的前景的一部分,陰影檢測算法只要依據(jù)這部分在背景減除時誤判的區(qū)域在連續(xù)若干幀之間的色度分量基本保持不變,且亮度分量很低(低于某一個閾值)的特性。每一個被檢測為前景的像素都要經(jīng)過上述的這種基于規(guī)則的判斷,從而得到真實的前景。為了保證算法的實時性,我們在背景建模時擯棄了多維模型,從而避免了在線EM算法復雜的迭代和多分布模型排隊的過程。另一種方法是采用灰度紋理相似度匹配的方式。
目標的跟蹤
目標從連續(xù)幀中被檢測到之后,我們需要知道目標在幀序列中的運動規(guī)律,以便在這個動態(tài)時間序列中確定每個移動目標各自唯一的身份,這就是目標跟蹤模塊任務。圖3所示為多目標視覺跟蹤的場景。對多個目標進行視覺跟蹤可借助動態(tài)地維護一個相互關聯(lián)的鏈表系統(tǒng)來實現(xiàn),包括:檢測鏈表、中間跟蹤鏈表和輸出跟蹤鏈表。當場景內多個目標在空間上相對獨立時,目標跟蹤處于常態(tài),鏈表系統(tǒng)的維護僅是完成節(jié)點匹配和節(jié)點搬移的工作。當檢測鏈表和另外兩個跟蹤鏈表內的節(jié)點發(fā)生目標失配時,目標跟蹤進入非常態(tài),跟蹤系統(tǒng)須馬上進入失配處理程序,且鏈表系統(tǒng)需要對失配的節(jié)點進行保持連續(xù)的多幀,以決定是否從跟蹤鏈表中刪除節(jié)點或是恢復節(jié)點,以及建立新的節(jié)點。非常態(tài)跟蹤的任務就是處理目標在場景中被局部遮擋(暫時消失)或是徹底消失,以及新目標進入場景的情況。
多目標跟蹤系統(tǒng)還要判斷和處理的另外兩種情形:目標合并(含目標之間相互的局部遮擋)和目標分離。在檢測鏈表和跟蹤鏈表僅是基于獨立數(shù)據(jù)關聯(lián)時,這種目標分合情況的判別條件相對比較復雜。具體來說,在基于像素集合(Blobs)進行跟蹤的系統(tǒng)中,當多個目標相互靠得很近或發(fā)生局部遮擋時,一個大尺度單目標將覆蓋多個原來的小尺度目標,這時可在跟蹤鏈表中觸發(fā)相關目標合并的標志。由于此時各個小尺度目標已失去觀測值,因此它們需要單獨保持原先的預測跟蹤狀態(tài)(基于預測器),輸入各自預測器的觀測向量值由如下表其中p表示在本幀內**剛輸出的先驗預測值,由此帶入**得到本幀內后驗輸出值。該過程稱為“盲跟蹤”階段。在每一幀跟蹤中,都要檢測目標是否被覆蓋,若覆蓋始終存在,則跟蹤鏈表中相關目標合并標志不能解除。
人臉檢測、跟蹤和識別
在圖4所示智能視頻分析功能所采用的多層遞階結構內,人臉目標的檢測、跟蹤和識別都是針對實時視頻場景而言的。在實際應用中,人臉目標具有如下一些特點:
a、有些非高清場景視頻中,圖像質量不高;即便是高清視頻,對于某些應用場合(如智能交通的卡口業(yè)務),獲取的人臉目標尺度(20×20像素)相比基于靜止圖片的人臉識別應用(如公安機關的靜態(tài)人臉比對系統(tǒng))的人臉圖片尺寸(128×128像素)小很多;這直接影響到定位人臉區(qū)域內的特征點精度,從而降低了識別算法的準確度。
b、在場景監(jiān)控內的人臉目標通常容易受到光照條件、局部遮擋、人臉姿態(tài)和表情等因素的干擾,從而使得身份聚類的類內距離大于類間距離,導致誤識率顯著增加。
在多層遞階式場景視覺監(jiān)控系統(tǒng)中,人臉識別通常建立在人臉目標檢測和跟蹤之上,為某種具體應用業(yè)務服務,其中跟蹤功能和識別業(yè)務相對獨立。這就決定著視頻中人臉識別方式是一種“視頻——圖像(多幅圖像)”模式的人臉識別,后臺利用靜止圖像人臉數(shù)據(jù)庫進行識別或驗證。我們的做法是:對輸入視頻中的人臉進行跟蹤, 尋找滿足一定規(guī)則(如大小、姿態(tài)、清晰度等)的人臉圖像, 然后再利用基于靜止圖像的人臉識別方法(如圖5所示)。在圖5中,多個人臉目標首先被檢測和在視頻的各幀之間連續(xù)可靠地跟蹤到,然后依次與人臉數(shù)據(jù)庫中的特征模型進行匹配,最終找到與之最相似的身份信息作為該人臉的視覺標簽。
考慮到實用性效果,人臉檢測的特征通常選取Haar特征或擴展后的Haar特征,可采用瀑布式級聯(lián)分類器,通過Boosting學習算法得到分類器模型參數(shù)。多人臉跟蹤原理和大致方法同前面章節(jié)所述,多人臉在場景內動態(tài)變化由一個鏈表系統(tǒng)來管理,特定人臉在場景中運動模型由Kalman預測器來描述。當人臉在場景中丟失觀測時,可采用Harris角點信息作為提供可能的人臉特征點所在場景中位置的校驗方案。
車牌檢測和牌號識別
多層遞階式的視覺監(jiān)控系統(tǒng)中還有一種觸發(fā)事件檢測的功能模塊(子系統(tǒng))就是針對車輛牌號的識別系統(tǒng)。它在智能交通系統(tǒng)和停車場安全監(jiān)控中具有廣泛的應用。
車牌識別的正確率除了字符識別(OCR)的性能外,還極大地依賴于車牌分割定位的準確性。傳統(tǒng)車牌定位算
法主要根據(jù)車牌幾何特征及圖像紋理特征進行定位,而在相當多的復雜背景條件下,車牌外觀表象經(jīng)常不符合標準的特征,這使得車牌定位算法的可靠性受到嚴重的挑戰(zhàn):
.攝像機的安裝位置和拍攝角度不規(guī)范;
.白天環(huán)境光較強及背景陰影的干擾下,邊緣檢測的準確性會降低;
.夜晚光照不足,夜間車燈干擾會發(fā)生誤判;
.采集的圖像質量導致車牌區(qū)域字符分辨率降低;
.車牌泥點遮擋或其它文字干擾了正常的車牌字符識別區(qū)。
要把車牌檢測納入機器學習框架內,垂直邊緣信息和角點信息特征提取通?;诮y(tǒng)計量方式。我們可基于一個48×16像素大小的掃描窗口對圖像進行車牌模式信號檢測。如可定義統(tǒng)計量區(qū)域密度為DG和區(qū)域密度方差VG,
其中,G(i,j)表示位于(i,j)位置上的梯度幅值,N是掃描窗口區(qū)域內的像素數(shù)量。 其中,n表示掃描窗口內被平均分成的子塊數(shù)量,gi表示第i個子塊內梯度幅值的平均值,g表示整個掃描窗口內梯度幅值的平均值。這清楚地刻畫出車牌區(qū)域與非車牌區(qū)域的明顯差異。
車牌識別的環(huán)節(jié)基于字符識別(OCR)核心算法的軟件模塊,這與通用的OCR軟件相比比較簡單,我們可以加入一些啟發(fā)式的約束條件以提高識別的正確率:
.通過現(xiàn)場攝像機定標的方式,得到以像素為單位的具體字符的尺寸規(guī)則;
.字符濾波器:漢字僅在省市簡稱的字符集內,字母在A~Z之間,數(shù)字在0~9之間;
.字符串的規(guī)則:車牌字符串的漢字之后,不能以數(shù)字開始,所有字母都是大寫。
車牌識別的OCR環(huán)節(jié)是在車輛出現(xiàn)在業(yè)務場景中的每幀進行的,可以把每次識別的結果存入一個緩沖區(qū),當緩沖區(qū)填滿后采用一種投票仲裁的方式,把識別結果相同率最高的那個字符串作為最終的識別結果。對于實際的工程(如重大的智能交通工程),為了使車牌識別的準確度達到最高的水平,最好能構造一個符合具體應用場景的字符數(shù)據(jù)庫,以供OCR軟件能事先學習得到最好的識別性能。
事件檢測
事件檢測是多層遞階式視覺監(jiān)控系統(tǒng)的最后一層,這層有承上啟下的作用,它把來自視頻現(xiàn)場的經(jīng)過前置智能分析層析出的視覺元素數(shù)據(jù)(如檢測出的前景目標,被跟蹤的場景中有唯一ID的目標跟蹤軌跡,目標運動時序,場景中目標身份)統(tǒng)籌起來,檢查是否有定義的規(guī)則及受到的觸發(fā),然后向語義層輸出視覺監(jiān)控最終結果,最終以兩種方式提交:一種是以視覺告警、事件記錄或快球聚焦的方式給現(xiàn)場操作員,另一種是把這個事件機器翻譯成用語義表達的接近自然語言的格式,且保存在數(shù)據(jù)庫中供用戶層調用,追求的目標就是構造一個完整的W6(What、Where、When、Who、Why、How)系統(tǒng)。其中事件檢測就是回答How的問題。
具備規(guī)則屬性的事件檢測
規(guī)則解釋系統(tǒng)的操作對象是從底層視覺分析模塊中輸出的視覺元素數(shù)據(jù),這些數(shù)據(jù)包括場景中目標的位置,它們當前的狀態(tài)、類別及特定目標身份信息。事件檢測器還識別目標之間的交互行為兩個和場景的侵入。另外事件檢測器還利用事件的歷史記錄,因此事件檢測是支持閉環(huán)邏輯分析的。
在公共場所(如機場和火車站)的安全業(yè)務中,遺留包裹或行李包長時間無人看管是值得關注的,因出于安全考慮這有可能預示著恐怖爆炸案的發(fā)生。作為演示事件觸發(fā)報警的例子,在這里用圖6來說明。
這是一個聯(lián)合使用底層事件檢測器和高層事件檢測器的例子。第一個條件是一個人離開行李箱:這個行為被檢測到,當一個被識別為人(或拉行李箱的人)的目標分裂為兩個目標:即這個人的目標(現(xiàn)在沒行李箱了,但原來的**仍然鎖定他),和行李箱目標(處于靜止狀態(tài)且被分配了新跟蹤id)。第二個規(guī)則檢查行李箱是否在被監(jiān)控區(qū)域內保持靜止長達相應時間,第三個規(guī)則檢查剛才離開行李箱的人是否與行李箱離開了相應的距離。第四個規(guī)則檢查人與離開的行李箱是否達到了相應的時間。最后,高層事件檢測器檢查在最近分析的若干幀內,是否上面四個規(guī)則定義的事件都被底層事件檢測器探測到了。如果是,則高層事件檢測器輸出一個類似的事件描述:“一個人在監(jiān)控區(qū)域A內離開了行李箱,并不在那里看管箱子了”。那么這個警告信息將直接發(fā)送到操作員的人機界面上。
上述基于規(guī)則的推理算法可以采用如圖7所示的“IF-THEN結構”自然語言機制來現(xiàn)。當然還可采用模糊集方法實現(xiàn)更加準確的判斷結果。
結語
本文提出的系統(tǒng)方案具備柔性的算法功能結構,為適應各種工程應用領域對目標識別和場景事件檢測的需求,可選擇不同功能模塊來構建智能節(jié)點上視頻分析組件,進而實現(xiàn)一個工程化分布式智能視覺監(jiān)控系統(tǒng)。隨著視覺物聯(lián)網(wǎng)時代到來,基于大數(shù)據(jù)環(huán)境下的云存儲和智能視頻分析云計算架構,分布式智能視頻監(jiān)控系統(tǒng)可向云端視頻監(jiān)控管理中心提供結構化的海量視頻數(shù)據(jù)和元數(shù)據(jù)。
評論