發布日期:2022-07-14 點擊率:36
因此,出現了研發能夠大大增加監控安全和視頻監控的有效性的驅動力。視頻內容分析,即眾所周知的視頻分析,指的是在一系列視頻幀中識別大量的內容,并使能夠在特定事件發生時發布告警,從而加速實時快速響應。此外,VCA自動搜索特定的內容,從而將人們從繁重的觀看圖像中解放出來。這還將減少視頻監控所需的人員的數量,進而降低了成本。目前,VCA是一項新興的技術,在未來幾年,該技術將會持續發展,快速普及將是切實可行的。
一個確定性的事情是,要在巨量的視頻像素數據中識別出感興趣的目標,VCA需要大量的處理工作。此外,為了滿足各種不同的應用,VCA系統應該能夠可編程,可以接受不同的內容,并能夠適應不斷演進的算法。最新的視頻處理器可以為壓縮,VCA以及數字視頻系統的其他需求提供優異的性能和編程靈活性。而對處理器形成補充的軟件平臺和工具也幫助設計時簡化了安全監控產品的開發。隨著VCA技術的發展,可以很容易地實現,因為所需的技術目前都已經出現了。
VCA工作流程
迄今為止,關于VCA還沒有相關的國際標準,不過普通的工作流程可以被描述為:
1. 一個較長的序列被分割成可供分析的單獨場景或短片。因為不同的場景具有不同的直方圖,或不同的色彩頻率分布,其直方圖相對于前面有突變的幀時可以被視為場景改變;
2. 改變場景內的前景目標被檢測為與背景分離;
3. 單獨的前景目標被提取或者被分割,然后逐幀跟蹤。跟蹤包括檢測目標的位置和速度,它可能不斷變化或臨時靜止;
4. 當需要識別時,該目標的特征被提取,以進行分類;
5. 如果該事件某種程度上像關注的目標,則向管理軟件和/或管理人員發布告警。
前景/背景檢測
期望VCA能夠檢測出變化或者可疑的活動,相對于通常為靜止或者不關注的背景,這些活動正在前景中變化。過去,對前景/背景檢測的運算有限。而如今,高性能的數字信號處理器和視頻處理器使得更復雜的檢測算法的實現成為可能。通常,有兩種方法可實現前景/背景檢測:
1. 非自適應方法:僅利用少量的幀且不保持背景模型;
2. 自適應方法:保持隨時間不斷變化的背景模型。在自適應VCA算法中,利用來自上述流程的2-4步的反饋被送出,用來更新和維持背景模型,然后又被用作為第1步的輸入。
非自適應監測
在最簡單的非自適應方案中,從之前幀的各像素值中減去當前幀對應像素的數值,目的是確定絕對差值。然后將該像素絕對值與預定的門限進行比較,該門限來自圖像生成器,代表對現場中的噪聲進行補償后的0電平。如果該絕對值超過了門限,則相應的像素屬于前景。反之,則屬于背景。如果多個前景像素連成整體則顯示兩個前后幀中的前景發生了改變。
圖中1蓋掉了背景,留下的僅是在當前幀中顯示出運動車輛的前景像素,以及之前幀中的“重影”。
圖1:基于三個圖像幀的前景/背景檢測。
上述重影的存在意味著僅有兩幀可用于簡單運動檢測,而不需要目標跟蹤和識別。除了重影圖像外,在前景中可能會誤識別其他像素噪聲。可以稍微增加一些運算量,即在算法中引入一個額外的幀來改進前景的圖像質量。利用三個幀,確定當前幀和前一幀之間每個像素間的絕對差(圖1A),然后再確定當前幀與下一幀的逐個像素的絕對差,于是,重影目標就會出現在不同的位置上(圖1B)。如果兩個絕對差都超過了門限,則相應的像素就屬于前景。反之屬于背景。1A和1B中的重影消失后,僅留下1C中的圖像,即為前景。
利用三個圖像幀,實現控制環境中的短期視頻目標的跟蹤和識別是可能的。即便如此,非自適應的解決方案也僅僅適用于高度監管的、場景中沒有大變化的短期跟蹤應用。當場景或背景變化時,需要用手動的方式重新初始化。否則,錯誤將隨時間累積,導致不可信的結果。
自適應檢測
由于非自適應解決方案的限制,在VCA應用中,目前正在實現自適應的前景/背景檢測。自適應檢測維持背景模型,通過對每兩個視頻幀中的數據進行混合使得該模型連續更新。自適應方案需要的處理量比非自適應方案要多,背景模型中的復雜度也變高。在基本的自適應方案中,算法從當前視頻幀中按逐個像素減去背景模型,以便確定前景(這與非自適應算法中的減去后續幀的做法相反)。得到的結果被反饋到模型中,使之自適應即將發生的背景變化,而無需復位。該方案在目標在不斷運動或者背景噪聲長時間存在的許多視頻監控場景中都很有效。
更復雜的前景/背景檢測基于統計背景模型,在該模型中,指定幀中的每一個背景像素被建模成一個遵從高斯分布的隨機變量。每個像素的均值和標準方差隨時間變化,具體取決于每幀中的視頻數據。例如,如果在場景中包括河岸和一條河,落到水面上的光線將會使河面像素產生比相對沒有什么變化的河岸像素大得多的方差。通過與從背景模型中的相關像素的標準方差導出的門限比較來確定當前幀中的像素是前景還是背景。換句話說,若要指定某個像素為前景,如果隨后有大的變化(河流),則該像素應該呈現一個與背景像素很大的差別,而如果背景像素的變化很小(河岸),則該差別會很小。
當場景中的不同區域的光條件或噪聲電平不同時,該解決方案最有效,因為如果設置一個僅考慮高噪聲電平的統一門限,當目標進入到低噪聲區域(河岸)時就會消失。
目標跟蹤/識別
在前景/背景檢測之后,生成一個掩膜圖(圖1C)。由于存在環境噪聲,單個目標的所有部分將不會關聯在一起,故在將所有部分關聯成整體之前,需要進行形態的擴展計算增強過程。擴展包括在掩膜圖上加一個網格,計算網格中每個區域中的前景像素數量,然后計算每個區域中像素的剩余部分,該區域中的數量顯示哪些分離的目標應該被關聯到一起。
在擴展和分量關聯后,為每個目標提供一個包圍框,這是一個包括整個目標(因為它將出現在不同的幀中)的小矩形方塊,從而產生了圖2所示的分割。
圖2:目標分割效果示意圖。
跟蹤
跟蹤分割后的前景目標包括三步:即預測在當前幀中每個目標應該位于的地方,確定哪一個目標與描述最匹配并矯正目標運動軌跡,以用于下一幀的預測。第一步和第三步由遞歸式卡爾曼濾波器來實現。因為在一個幀中只能觀察目標的位置,還需要利用矩陣運算來快速計算其速度和下一個位置。開始時,濾波器被初始化到相對于背景模型的前景目標的位置上。對于目標被跟蹤的每一幀,濾波器預測下一幀中前景目標的相對位置。當場景進入到下一幀時,該濾波器定位目標并矯正其軌跡。
跟蹤中的第二步包括數據相關,根據目標特征的相似性來確定目標的相關性。目標的大小,形狀和位置可以根據從一幀到下一幀中的包圍框和他們的交疊來確定。速度由卡爾曼濾波器來預測,利用直方圖以不同顏色來關聯不同的物體。不過,這些特征中的某個或者全部都會改變。
例如,考慮一輛駕駛室為紅色的白色卡車靠近街道旁邊的攝像機,進入車道后,突然掉頭向相反方向開去。一系列場景中,該目標的所有特征都發生了改變,包括大小,形狀,速度和顏色。軟件必須能夠快速調整來適應這些突變,以便精確地識別出該車輛。另外,在跟蹤多個目標時,軟件必須能區分出它們之間彼此不同的特征。
圖3:利用解析方法的目標檢測。
分類
跟蹤的復雜度導致了目標分類方面的問題。例如,相對于人來說,系統發現某物體穿越攝像機前的警戒線時要容易得多。目標的大小和速度可以為大致分類提供參考,但對于精細分類還需要提供更多的信息。一個大目標具有更多的像素信息,但這對快速分類又太多了。這種情況下,為了實時響應,需要采用一種尺寸減小技術,即使在后續的調查中將利用存儲的各幀中的所有像素信息。
有效的VCA實現還必須克服目標分類以外的大量挑戰。其中包括由于黃昏、水面、云、風中的樹木擺動、雨、雪以及大霧所引起的各種變化;跟蹤穿越的目標的軌跡,會引起每個前景像素的暫時合并,隨后又分離;還有在包括多個攝像機系統中逐幅地跟蹤目標等。如何解決這些問題都還是VCA發展過程中的挑戰。
VCA系統設計
實現VCA和視頻編碼需要一個高性能的處理器和不同的部署。新解析技術的出現要求編程靈活性,這可以利用集成最高性能的處理器來解決,其中包括可編程DSP和RISC微處理器內核以及視頻硬件協處理器。合適的處理器還需要集成高性能的通信外設和視頻信號鏈路來減少系統元器件和成本,例如德州儀器的基于DaVinci技術的TMS320DM644x處理器。
兩個DaVinci處理器可以提供處理高端VCA以及對每秒30幀(720p30 HD),分辨率為720x1080的高清視頻(HD)源進行編碼的性能。
進行略微改進,設計可以更改成一個卡和一個處理器的形式。能夠提供與兩個處理器相同的功能,不過只能處理中級的VCA和HD編碼。
采用這種將VCA集成到攝像機中的方案,可以提供魯棒的高效率網絡實現。VCA軟件也可以集成到用作為多個攝像機的中央單元的PC中。除了VCA自身的步驟外,在前景/背景檢測和其他解析步驟之前,還需要處理去交織的一些預處理步驟。為了識別目標或其他目的,應用軟件還會增加一些進一步處理。上述的單處理器和雙處理器設計方案都能為這些額外的軟件功能提供預留空間。
圖4:IP網絡攝像機處理模型。
VCA的升級
將前景目標從背景中分離出來的自適應方法,隨后的跟蹤目標,如果需要,對可疑的活動進行分類等構成了VCA的全部,這需要一個高級的實時處理運算和自適應能力。基于DSP的視頻處理器提供了VCA和視頻編碼所需的性能,加上能夠適應應用需求和技術中的可編程靈活性,將視頻安全監控提升到了一個新層次。
作者:Cheng Peng
DSP視頻應用工程師
TI公司