李 明, 楊 凱, 王 軍, 杜文凱
(中國礦業(yè)大學(xué) 信息與控制工程學(xué)院, 江蘇 徐州 221000)
視頻監(jiān)控系統(tǒng)廣泛應(yīng)用于公共場所的監(jiān)控、安防等領(lǐng)域,現(xiàn)代實驗室也普遍采用視頻監(jiān)控系統(tǒng)為實驗室的教學(xué)、管理提供安全保障;但是傳統(tǒng)的視頻監(jiān)控系統(tǒng)在工作的時候僅具有視頻錄制的功能,對異常行為的檢測需要依賴事后回放,或者人工不間斷地監(jiān)視、監(jiān)控畫面,這兩種方法都存在效率低下、浪費人力的問題。因此異常行為檢測已經(jīng)成為視頻圖像處理與模式識別領(lǐng)域的研究重點[1-2]。人的異常行為復(fù)雜多樣,發(fā)生的時間與地點幾乎沒有規(guī)律可言。因此異常行為檢測的難度很大。早期的異常檢測主要對運動目標(biāo)的運動序列進行分析,該方法需要對每一種正常行為建模,當(dāng)正常行為的數(shù)量很大時,檢測效果就會有所下降。有一些算法通過對目標(biāo)區(qū)域的輪廓與幾何圖形擬合的方式對異常行為進行分析,該方法可以判斷出多種異常行為,但是對于多種異常行為可以用同一種幾何圖形擬合的情況做不到精確區(qū)分[3-4]。
本文提出了一種基于梯度方向直方圖(HOG)特征的異常行為檢測方法,首先通過幀間平滑濾波的方法建立背景圖片,將背景圖像與任意時刻采集到的圖像進行差分運算,并采用多種圖像處理方法獲取目標(biāo)區(qū)域輪廓,然后從區(qū)域輪廓中提取出 HOG特征,送到 SVM(支持向量機)分類器,區(qū)分出不同的異常行為。
從視頻圖像中發(fā)現(xiàn)異常行為稱為異常檢測,目前常用的異常檢測方法有背景差分法、幀間差法、光流法等[5]。本文采用背景差分法檢測異常行為。首先建立背景模型,然后將實時采集到的視頻圖像與背景模型作對比,判斷圖像中是否存在異常行為。
對于背景差分法來說,背景模型的建立對于異常目標(biāo)的檢測是至關(guān)重要的一個環(huán)節(jié),直接決定了檢測質(zhì)量[6]。適時更新背景模型,可以提高異常檢測系統(tǒng)面對環(huán)境變化的自適用能力。 背景模型的建立過程如圖1所示。
圖1 背景模型建立過程
為了提高背景模型的質(zhì)量,本文嘗試了一種新的建模方法。連續(xù)采集幾幀圖像,經(jīng)過預(yù)處理后,對這幾幀圖像的同一位置的像素進行平滑濾波,該方法稱為幀間平滑濾波法[7]。連續(xù)5幀的幀間濾波算法為
(x,y),f2(x,y),f3(x,y),
f4(x,y),f5(x,y))
(1)
其中,G為具體的濾波算法,f1(x,y)、f2(x,y)、f3(x,y)、f4(x,y)、f5(x,y)為每一幀圖像同一像素點的值。利用該算法建立的背景模型如圖2所示。
在完成了背景建模之后,就可以對異常目標(biāo)進行檢測。具體步驟:對圖像進行差分、對差分圖像進行二值化、對二值化后的圖像進行形態(tài)學(xué)處理[8-9],對目標(biāo)輪廓進行提取和判定。檢測過程如圖3所示。
圖2 最終建立的背景模型
圖3 目標(biāo)檢測過程
將任意時刻的視頻圖像與背景圖像做差分運算,得到一張新的圖像;然后選定合適的閾值對其進行二值化,得到初步的目標(biāo)輪廓;再通過開運算進行形態(tài)學(xué)處理,通過鏈碼表[10-11]提取出目標(biāo)的輪廓;然后對提取的輪廓進行遍歷排序,排除細(xì)小輪廓引起的噪聲。異常目標(biāo)檢測的最終效果如圖4所示。
圖4 異常目標(biāo)輪廓檢測結(jié)果
從圖4可以看出,使用本文的方法進行異常檢測能夠檢測出單個或多個目標(biāo),并能夠獲取比較完整的輪廓。
檢測出視頻中存在異常行為之后,還需要對這些行為做進一步分析以確定具體是哪一種異常行為。行為分析的目的是判斷是由人引起的異常,還是環(huán)境變化引起的異常,并對由人引起的異常做進一步分析,辨別出具體的異常行為。我們使用HOG特征和SVM分類器來[12]進行目標(biāo)行為分類。
HOG在圖像特征描述方面有著很好的表現(xiàn)。首先進行圖像歸一化,對輸入的圖像進行裁剪、只保留感興趣區(qū)域(ROI),然后計算梯度。本文選用一階對稱模板[-1,0,1]和[-1,0,1]T分別計算水平方向和垂直方向的梯度:
Gx(x,y)=I(x+1,y)-I(x-1,y)
(2)
Gy(x,y)=I(x,y+1)-I(x,y-1)
(3)
(4)
(5)
式中,I表示像素值,Gx(x,y)和Gy(x,y)分別為水平方向和垂直方向的梯度,G(x,y)和α(x,y)分別為梯度幅值和梯度方向。
為了提高計算效率并保持計算精度,選擇像素的數(shù)目為9。將每個梯度方向的梯度幅值進行統(tǒng)計得到梯度方向直方圖。HOG特征計算提取過程如圖5所示。
圖5 HOG特征提取過程
使用SVM(支持向量機)分類器進行分類,決策函數(shù)的選擇非常關(guān)鍵,所選的決策函數(shù)應(yīng)滿足將樣本完好地分開。SVM中的核函數(shù)屬于一種非線性分類方法,能夠完好地區(qū)分2個不同的類[13]。其做法是將原來的空間變?yōu)橐粋€維度更高的空間,具體的變換函數(shù)為
(6)
將之前的對偶表達式加以改造,然后映射到一個更高維空間。改造方法有很多種,改造完成后的目標(biāo)函數(shù)為
(7)
其分類函數(shù)為
·xi)+b
(8)
其中,K(xi·xj)被稱為核函數(shù),常見的核函數(shù)有線性核函數(shù)、多項式核函數(shù)、高斯(RBF)核函數(shù);b為常數(shù)。
考慮到本文的數(shù)據(jù)特點,選擇高斯核函數(shù)為
(9)
式中σ為標(biāo)準(zhǔn)差。
與之對應(yīng)的目標(biāo)函數(shù)為
(10)
SVM在解決線性不可分問題時,其實是把維數(shù)較低的樣本空間映射到高維空間,將線性不可分問題轉(zhuǎn)換成線性可分問題,然后得到最佳的分類[14]。
針對人的快速移動、彎腰行走、跌倒、跳躍、長時間停留等幾種異常行為進行實驗測試,并統(tǒng)計行為分類的正確率。行為檢測的效果如圖6所示。
從實驗結(jié)果可以看出,本文提出的方法可以將人的正常行為與異常行為區(qū)分出來。但在實驗中發(fā)現(xiàn),對異常行為檢測的正確率不是很理想,相比較而言,將正常行為判斷為異常行為的情況比將異常行為判斷為正常行為的情況要多。根據(jù)表1統(tǒng)計的結(jié)果,在行為分析方面存在較高的錯誤率,主要原因是分類器的設(shè)計中某些參數(shù)的設(shè)置不夠精確以及樣本的數(shù)量少。
本文針對實驗室監(jiān)控系統(tǒng)的現(xiàn)實需求,利用視頻圖像處理的相關(guān)理論知識,設(shè)計了一種異常行為檢測的方法。包括視頻圖像獲取、建立背景模型、異常目標(biāo)檢測與異常行為分析等步驟。實驗結(jié)果表明,在環(huán)境穩(wěn)定的條件下,該方法可以有效檢測出人的快速移動、彎腰行走、跌倒、跳躍、長時間停留等多種異常行為,可以應(yīng)用于實驗室日常教學(xué)與管理的監(jiān)控,為實驗室的安全運行提供保障。
圖6 行為分析測試
場景檢測次數(shù)行為識別錯誤次數(shù)錯誤率/%12015.025359.43961313.5
實驗中采用的是固定的背景圖像,對于環(huán)境隨時間變化較小的情況,可以取得良好的檢測效果,但是對于環(huán)境隨時間變化較大的實驗室,檢測效果就會有所下降。在實際應(yīng)用中,可以根據(jù)時間或者圖像的一些參數(shù)特征,實時更新背景圖像,以提高檢測的準(zhǔn)確率[15-16]。