發(fā)布日期:2022-07-14 點擊率:66
因此,業(yè)界迫切需要開發(fā)能夠提高安全和監(jiān)控視頻監(jiān)視效率的方法。視頻內(nèi)容分析(VCA)可以用電子的方法識別一串幀中重要的特征,在發(fā)生特定類型事件時能讓系統(tǒng)產(chǎn)生告警,從而加快實時安全系統(tǒng)的響應(yīng)速度。VCA可以在捕獲的視頻中自動搜索特定內(nèi)容,將人從長時間的瀏覽工作中解放出來,并減少需要人工篩選攝像機視頻的工作量。
VCA技術(shù)正在不斷發(fā)展,在不久的將來將會得到廣泛的應(yīng)用。有一點可以肯定的是,VCA要求大量的處理能力以便在龐大的視頻像素數(shù)據(jù)流中識別出感興趣的目標。另外,VCA系統(tǒng)必須是可編程的,這樣才能滿足應(yīng)用的各種變化,識別出不同的內(nèi)容,并適應(yīng)不斷演進的算法。最新的視頻處理器具有特別強大的性能和編程靈活性,完全可以滿足壓縮、VCA和其它數(shù)字視頻要求。用以輔助處理器的軟件平臺和工具則可以簡化安全和監(jiān)控產(chǎn)品的開發(fā),隨著VCA技術(shù)的發(fā)展,它們將成為關(guān)鍵的技術(shù)。
VCA流程
目前還沒有VCA的國際標準,但以下是VCA的常規(guī)流程:
1. 將一個很長的序列分割成幾個單獨的場景或圖像,以進行分析。由于不同的場景具有不同的直方圖或色譜分布,因此如果某個幀的直方圖與前一幀有很大的變化,那么可以認為發(fā)生了場景變換。
2. 由于前景(foreground)與靜態(tài)背景是分開的,因此場景中的前景對象變化可以被檢測出來。
3. 個別前景對象被提取或分割,然后逐幀地跟蹤。跟蹤過程涉及檢測對象的位置和速度。
4. 如果有必要進行識別,可以提取對象的特征,并進行對象分類。
5. 如果當前事件是感興趣的事件,就向管理軟件和/或相關(guān)人員發(fā)送告警。
圖1:采用兩個DaVinci處理器處理高端VCA,能以每秒30幀的速度編碼720x1080高清晰度的視頻源。
前景/背景檢測
VCA可以檢測相對于通常靜態(tài)和不感興趣的背景下前景變化所代表的活動。過去,前景/背景檢測在運算量上是受限的。如今,更高性能的數(shù)字信號處理器和視頻處理器可以用來執(zhí)行更復(fù)雜的檢測算法。
一般來說有兩種前景/背景檢測方法:一種是非自適應(yīng)方法,它只使用一些視頻幀,并不維護背景模型;另一種是自適應(yīng)方法,它始終維護著一個隨時間不斷演變的背景模型。在自適應(yīng)VCA算法中,VCA流程中第2步到第4步的反饋可以用來更新和維護背景模型,這個模型再用作第1步的輸入。
非自適應(yīng)檢測
在最簡單的非自適應(yīng)情況下,當前幀中的每個像素減去前一幀中的對應(yīng)像素就能確定絕對差值,像素的絕對差值再與預(yù)先確定的門限值進行比較。這個門限值代表的是對場景中和來自成像器的噪聲補償過后的“零”電平。如果絕對差值超過了這個門限,相應(yīng)的像素就屬于前景。否則,像素就屬于背景。
在受控環(huán)境中對視頻對象的短期跟蹤和識別可以只使用三個幀實現(xiàn)。即使這樣,非自適應(yīng)方法也只適用于高度受控、視頻場景不會有顯著變化的短期跟蹤應(yīng)用場合。當發(fā)生場景或背景變化時,需要人工進行初始化。如果不進行初始化,隨著時間積累的誤差會使檢測結(jié)果很不可靠。
自適應(yīng)檢測
由于非自適應(yīng)方法的局限,自適應(yīng)前景和背景檢測開始在VCA應(yīng)用中得到使用。自適應(yīng)檢測方法維護一個背景模型,該模型通過混合每個新視頻幀的數(shù)據(jù)進行不斷更新。與非自適應(yīng)方法相比,自適應(yīng)方法要求更高的處理能力,而且背景模型的復(fù)雜度會改變。在基本的自適應(yīng)方法中,算法會通過在當前幀中逐個像素地減去背景模型來確定前景(而非自適應(yīng)算法采用的減去后面的幀)。結(jié)果也反饋到模型中,從而使模型不需要復(fù)位就能適應(yīng)不斷變化的背景。這種方法非常適合目標不斷移動或相當長時間內(nèi)存在背景噪聲的許多視頻監(jiān)控場合使用。
更復(fù)雜的前景/背景檢測則采用統(tǒng)計背景模型,其中指定幀中的每個背景像素被建模為一個符合高斯分布的隨機變量。根據(jù)每一幀的視頻數(shù)據(jù),每個單獨像素的平均和標準偏差會隨時間改變。
對象跟蹤/識別與分類
在前景/背景檢測后,將創(chuàng)建出一個模板(mask)。因為存在環(huán)境噪聲,單個目標對象的所有組成部分可能沒有連起來,因此在將所有組成部分連為一個整體對象之前需要實現(xiàn)一個高強度運算的形態(tài)學(xué)膨脹(morphological dilation)處理。膨脹涉及在模板上強加一個柵格,計算出柵格的每個區(qū)域的前景像素,并點亮每個區(qū)域的其余像素,計數(shù)指示應(yīng)該連接的獨立對象。在膨脹和組成部分連接后就可以得到每個對象的一個有邊界的框。這個框代表了包括完整對象的最小矩形,它可能出現(xiàn)在不同的幀中,從而實現(xiàn)分割。
跟蹤分割后的前景對象共有三步:預(yù)測當前幀中每個對象的位置;確定哪個對象能最好地匹配其描述;并校正對象軌跡以預(yù)測下一幀。第一和第三步是通過Kalman遞歸濾波器完成的。由于在單個幀中只能觀察到對象的位置,因此有必要使用矩陣運算方法即時計算出它的速度和下一個位置。
在整個過程的開始,濾波器被初始化到相對于背景模型的前景對象位置。針對每個內(nèi)部對象被跟蹤的幀,濾波器會在后續(xù)幀中預(yù)測前景對象的相對位置。當場景轉(zhuǎn)到后續(xù)幀時,濾波器就能定位對象并校正其軌跡。
跟蹤的第二步涉及到數(shù)據(jù)關(guān)聯(lián),它根據(jù)特征的相似性確定幀之間的對象相關(guān)性。對象尺寸、形狀和位置能夠能夠以框和幀到幀的重疊為依據(jù)。速度是Kalman濾波器要預(yù)測的一個參數(shù),直方圖將不同的對象與它們的顏色關(guān)聯(lián)起來。然而,任何或所有這些特征都可能改變。
考慮這樣的情況:一個有著紅色駕駛室的白色卡車非常靠近沿街的攝像機,這時它駛?cè)胲嚨?掉頭并向相反方向駛?cè)ァο蟮乃刑卣髟谡麄€場景中在不斷發(fā)生變化:大小、形狀、速度和顏色。軟件必須能夠適應(yīng)這種變化,以便準確識別卡車。另外,當跟蹤多個對象時,軟件必須能夠區(qū)別出它們之間的特征來。
跟蹤的復(fù)雜性將導(dǎo)致與對象分類相關(guān)的問題。例如,一個物體通過攝像機前面的一條線比一個人通過那條線更容易使系統(tǒng)發(fā)出警告。物體的尺寸和速度可以提供用于粗略分類的向量,但更精細的分類需要更多的信息。較大的物體可以提供更多的像素信息,但對快速分類來說可能顯得太多。在這種情況下,需要采用尺寸減小技術(shù)來實現(xiàn)實時響應(yīng),即使后面的調(diào)查仍可能使用所存儲的幀中具有的全像素信息。
除了對象分類外,高效的VCA實現(xiàn)還必須克服許多挑戰(zhàn),這些挑戰(zhàn)包括:黃昏、水面、云層、刮風(fēng)下雨、雪和霧等導(dǎo)致的光線變化;跟蹤的多個對象路徑是交叉的,導(dǎo)致每個前景像素暫時合并,然后又分開;在多攝像機系統(tǒng)中跟蹤不同視窗的對象。解決這些問題仍然需要VCA做大量的工作。
VCA系統(tǒng)設(shè)計
實現(xiàn)VCA和視頻編碼要求高性能處理器和各種配置。新分析技術(shù)的出現(xiàn)要求編程的靈活性,這可以使用集成了最高性能以及可編程DSP與RISC微處理器內(nèi)核的處理器和視頻硬件協(xié)處理器來滿足。合適的處理器還需要集成高速通信外設(shè)和視頻信號鏈來減少系統(tǒng)元件的數(shù)量和成本。
使用該類解決方案將VCA集成進攝像機提供了極具魯棒性和高效的網(wǎng)絡(luò)實現(xiàn)形式。VCA軟件也能被集成進電腦中,使電腦成為多個攝像機的集中處理設(shè)備。除了VCA流程本身外,可能還需要預(yù)處理步驟,用于在前景/背景檢測和其它分析步驟之前處理去交織(de-interleaving)。
應(yīng)用軟件可能要增加用于對象識別或其它目的的處理步驟,單處理器和雙處理器設(shè)計版本都能為新增的軟件功能提供足夠的處理能力。
將前景對象從背景中分離出來、然后跟蹤對象,必要時分類可疑活動的自適應(yīng)方法步驟是VCA的全部內(nèi)容,它要求高度的實時處理運算和自適應(yīng)能力。基于DSP的視頻處理器提供了VCA和視頻編碼所需的性能,并具有高度的編程靈活性,可適應(yīng)應(yīng)用要求和技術(shù)的不斷變化。
作者:Cheng Peng
DSP視頻應(yīng)用工程師
德州儀器公司