于 闖, 楊 姝, 寇海蓮
(1. 沈陽師范大學(xué) 計(jì)算機(jī)與數(shù)學(xué)基礎(chǔ)教學(xué)部, 沈陽 110034;2. 沈陽師范大學(xué) 教育技術(shù)學(xué)院, 沈陽 110034)
目前,以定點(diǎn)視頻監(jiān)控為主要模式的視頻監(jiān)控系統(tǒng),在我國社會(huì)生產(chǎn)和人們?nèi)粘I钪?已經(jīng)得到廣泛的應(yīng)用[1-2]。對(duì)視頻監(jiān)控系統(tǒng)中監(jiān)控到的各種對(duì)象,尤其是對(duì)運(yùn)動(dòng)行人進(jìn)行自動(dòng)檢測(cè)與識(shí)別,有著非常重要的意義[3]。許多研究人員對(duì)運(yùn)動(dòng)行人檢測(cè)和識(shí)別算法進(jìn)行了大量的研究。但由于監(jiān)控視頻中,遠(yuǎn)景區(qū)域運(yùn)動(dòng)行人的目標(biāo)過小,對(duì)監(jiān)控視頻遠(yuǎn)景區(qū)域中的運(yùn)動(dòng)行人的檢測(cè)存在較明顯的漏檢和誤檢的問題。針對(duì)這個(gè)問題,本文提出了一種對(duì)監(jiān)控視頻中遠(yuǎn)景區(qū)域增設(shè)輔助變焦攝像頭的方法,來解決遠(yuǎn)景區(qū)域中運(yùn)動(dòng)行人漏檢和誤檢的問題。具體的方法如下:首先,增設(shè)輔助變焦攝像頭對(duì)系統(tǒng)中的遠(yuǎn)景區(qū)域進(jìn)行監(jiān)控,使得位于遠(yuǎn)景區(qū)域中的視頻圖像分辨率提高至原來的2倍;其次,對(duì)監(jiān)控系統(tǒng)中遠(yuǎn)景區(qū)域和增加的輔助攝像頭獲得的視頻圖像分別進(jìn)行運(yùn)動(dòng)目標(biāo)的檢測(cè)、去噪和提取,得到運(yùn)動(dòng)目標(biāo)的圖像;然后,通過人工方法,對(duì)圖像中的運(yùn)動(dòng)目標(biāo)進(jìn)行類別標(biāo)識(shí),獲得訓(xùn)練樣本和檢驗(yàn)樣本,其中,遠(yuǎn)景區(qū)域獲得2組視頻圖像檢驗(yàn)樣本;最后,利用訓(xùn)練樣本訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò),進(jìn)行運(yùn)動(dòng)行人的識(shí)別[4]。實(shí)驗(yàn)結(jié)果表明,使用本文提出的方法,可以有效提高遠(yuǎn)景區(qū)域中運(yùn)動(dòng)行人的識(shí)別準(zhǔn)確率,卷積神經(jīng)網(wǎng)絡(luò)準(zhǔn)確率達(dá)到92.61%,行人目標(biāo)的相對(duì)檢出率提高了95.29%,行人分類準(zhǔn)確率提高了15.14%,可以滿足識(shí)別精度的要求。
監(jiān)控視頻中運(yùn)動(dòng)目標(biāo)的檢測(cè)和提取包括對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè)、對(duì)檢測(cè)出的運(yùn)動(dòng)目標(biāo)進(jìn)行去噪處理和對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行提取3個(gè)步驟。
1.1.1 對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè)
在視頻圖像處理領(lǐng)域中,基于運(yùn)動(dòng)特征的目標(biāo)檢測(cè)算法中比較常見的有幀間差分法[5]、光流法[6]和高斯背景建模法等[7]。幀間差分法適合應(yīng)用于背景固定的場(chǎng)景,但這種方法在運(yùn)動(dòng)檢測(cè)時(shí)容易出現(xiàn)空洞、幻影等問題,這嚴(yán)重影響到運(yùn)動(dòng)目標(biāo)的檢測(cè)準(zhǔn)確率[8]。光流法在使用時(shí),需要滿足圖像亮度基本不變、物體的運(yùn)行微小和空間一致性的3個(gè)條件。根據(jù)光流法對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè)的原理,其適合應(yīng)用在實(shí)時(shí)性要求不高的場(chǎng)景[9]。混合高斯模型是單高斯模型的推廣,它克服了單高斯模型只能對(duì)背景建立單一模式的不足[10]。當(dāng)背景中出現(xiàn)如樹枝晃動(dòng)、水紋波動(dòng)等多模態(tài)時(shí),使用混合高斯模型對(duì)背景進(jìn)行建模具有一定的魯棒性。
通過對(duì)3種不同算法的比對(duì)與分析,可以看出本文監(jiān)控視頻的場(chǎng)景不適宜采用幀間差分法和光流法,如背景中樹枝晃動(dòng)造成背景多模態(tài)的情況以及行人快速通過監(jiān)控視頻的范圍而要求算法要有一定的實(shí)時(shí)性。而混合高斯模型恰恰符合本文的場(chǎng)景。
混合高斯模型原理為,當(dāng)視頻圖像背景為單一模式時(shí),背景像素分布符合高斯密度分布函數(shù),可以用高斯密度分布函數(shù)建模;當(dāng)視頻圖像背景為多模態(tài)時(shí),背景像素分布符合混合高斯密度分布,可以用混合高斯密度函數(shù)建模[11]。對(duì)于二維圖像,高斯密度和混合高斯密度的分布函數(shù)分別由公式(1)和(2)表示。
高斯密度分布函數(shù)為:
(1)
其中:X=(x,y)為二維隨機(jī)變量,u1,u2,σ1,σ2分別為變量x,y的均值和方差,ρ為變量x,y的協(xié)方差。
混合高斯密度分布函數(shù)為:
(2)
對(duì)于二維視頻中運(yùn)動(dòng)目標(biāo)檢測(cè)的高斯模型由式(3)表示。
(3)
其中Xt為時(shí)刻t的像素值,μt和Σt表示像素點(diǎn)在t時(shí)刻的均方差。模型中的均值和方差的更新如下:
其中:ρ為學(xué)習(xí)率。
在混合高斯背景函數(shù)建立之后,背景進(jìn)行實(shí)時(shí)更新計(jì)算,算法中結(jié)合權(quán)值、權(quán)值均值和實(shí)時(shí)計(jì)算出的背景圖像來判斷目標(biāo)像素點(diǎn)是屬于前景還是背景。
1.1.2 對(duì)檢測(cè)出的運(yùn)動(dòng)目標(biāo)進(jìn)行去噪處理
使用高斯建模檢測(cè)出的運(yùn)動(dòng)目標(biāo),還存在噪聲、目標(biāo)前景有空洞以及影子影響等問題,本文采取如下方法進(jìn)行處理。
由于視頻畫面中的噪聲是由監(jiān)控?cái)z像頭本身以及視頻壓縮存儲(chǔ)處理產(chǎn)生的,所以采用處理這些噪聲效果較好的中值濾波算法濾除噪聲的干擾[12]。
直接使用高斯背景建模法分離出的運(yùn)動(dòng)目標(biāo),容易產(chǎn)生空洞、邊緣缺失以及影子干擾等問題,需要使用不同方法對(duì)這些存在的問題進(jìn)行處理。
對(duì)產(chǎn)生的空洞現(xiàn)象及邊緣缺失等問題,使用圖像膨脹算法來處理。對(duì)于影子的存在對(duì)運(yùn)動(dòng)目標(biāo)檢測(cè)造成目標(biāo)區(qū)域劃定位置不準(zhǔn)確的問題,在高斯背景建模算法中,對(duì)隸屬于影子的像素點(diǎn)進(jìn)行標(biāo)記,可以對(duì)影子的不良影響有一定的抑制作用。關(guān)于目標(biāo)頭部、足部缺失的問題,使用“目標(biāo)范圍預(yù)伸縮方法”來解決,即將位于預(yù)先設(shè)定好的伸縮范圍內(nèi)并且不隸屬于任一運(yùn)動(dòng)目標(biāo)的較小連通域劃定到原檢測(cè)目標(biāo)范圍內(nèi),并重新計(jì)算目標(biāo)坐標(biāo)與范圍。
1.1.3 對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行提取
首先使用1.1.1中介紹的混合高斯模型對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè),得到初步的前景目標(biāo)集合,再經(jīng)1.1.2中介紹的去噪等處理,可得到各目標(biāo)聯(lián)通區(qū)域,對(duì)其分別取得最大外接矩形,便得到運(yùn)動(dòng)目標(biāo)的坐標(biāo)、寬度和高度。然后對(duì)目標(biāo)圖片進(jìn)行截取與保存,將各目標(biāo)圖像及相關(guān)原始圖像等數(shù)據(jù)保存起來,供實(shí)驗(yàn)分析及后續(xù)數(shù)據(jù)處理過程使用。
對(duì)相同間隔時(shí)段內(nèi)由主、輔攝像頭錄制出的2組監(jiān)控視頻分別執(zhí)行運(yùn)動(dòng)目標(biāo)提取算法,來獲得訓(xùn)練樣本和檢驗(yàn)樣本。由于采用逐幀檢測(cè)的方式會(huì)產(chǎn)生同一目標(biāo)反復(fù)出現(xiàn)在樣本中的問題,使得樣本不具備普遍性,因而設(shè)計(jì)并采用固定間隔時(shí)間檢測(cè)的方法。監(jiān)控視頻文件的幀率預(yù)設(shè)為25幀/s,設(shè)定檢測(cè)間隔15 s。
對(duì)結(jié)果進(jìn)行人工篩查,在主攝像頭所錄制的視頻中選定的遠(yuǎn)景區(qū)域中檢測(cè)到的完整單個(gè)行人目標(biāo)的數(shù)量為743個(gè)。在輔助攝像頭所錄制的視頻中檢測(cè)到的完整單個(gè)行人目標(biāo)的數(shù)量為1 451個(gè)。采用輔助變焦攝像頭進(jìn)行檢測(cè),在運(yùn)動(dòng)目標(biāo)檢測(cè)算法中,行人目標(biāo)的相對(duì)檢出率提高了95.29%。同時(shí),檢測(cè)到的運(yùn)動(dòng)目標(biāo)的分辨率普遍得到提高,分辨率的提高將有利于特征的提取和分類,鑒于此,輔助監(jiān)控視頻中檢測(cè)到的目標(biāo)將作為訓(xùn)練樣本。
另選取一組監(jiān)控視頻,運(yùn)行目標(biāo)提取程序,分別取得數(shù)量各為300的2組行人目標(biāo)用作檢驗(yàn)樣本,用于對(duì)卷積神經(jīng)網(wǎng)絡(luò)的準(zhǔn)確率進(jìn)行檢驗(yàn)。
采用輔助攝像頭對(duì)遠(yuǎn)景區(qū)域進(jìn)行行人的輔助檢測(cè)后,行人檢測(cè)整體算法發(fā)生以下變化。未采用輔助攝像頭對(duì)遠(yuǎn)景區(qū)域進(jìn)行行人的輔助檢測(cè)時(shí),直接對(duì)視頻進(jìn)行運(yùn)動(dòng)檢測(cè),得到訓(xùn)練樣本。使用樣本訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò),得到訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型用于行人分類;采用輔助攝像頭對(duì)遠(yuǎn)景區(qū)域進(jìn)行行人的輔助檢測(cè)時(shí),將監(jiān)控畫面平均分割為4個(gè)區(qū)域,上面2個(gè)區(qū)域?qū)?yīng)于遠(yuǎn)景區(qū)域,下面2個(gè)區(qū)域?qū)?yīng)于近景區(qū)域。遠(yuǎn)景區(qū)域采用輔助攝像頭進(jìn)行行人的輔助檢測(cè),非遠(yuǎn)景區(qū)域直接進(jìn)行行人檢測(cè)。本文的研究區(qū)域確定為遠(yuǎn)景區(qū)域中的右半部分,對(duì)區(qū)域中行人檢測(cè)結(jié)果進(jìn)行比對(duì)研究。先對(duì)輔助攝像頭錄制出的視頻進(jìn)行運(yùn)動(dòng)檢測(cè),得到分辨率較高的運(yùn)動(dòng)目標(biāo)用作訓(xùn)練樣本,再訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò),得到訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型用于主、輔攝像頭分別錄制出的視頻的行人分類。
卷積神經(jīng)網(wǎng)絡(luò)屬于深度學(xué)習(xí)領(lǐng)域中的網(wǎng)絡(luò)模型,它在圖像目標(biāo)識(shí)別、分類等領(lǐng)域應(yīng)用廣泛,并涌現(xiàn)出很多基于卷積神經(jīng)網(wǎng)絡(luò)的深度神經(jīng)網(wǎng)絡(luò)模型[13-14]。使用卷積神經(jīng)網(wǎng)絡(luò)對(duì)目標(biāo)進(jìn)行識(shí)別,不需要事先對(duì)圖像進(jìn)行預(yù)處理,不需要預(yù)先設(shè)計(jì)特征提取算法。在卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中,把原始圖像直接輸入到網(wǎng)絡(luò)模型中,網(wǎng)絡(luò)能夠自動(dòng)學(xué)習(xí)到各層參數(shù),從而實(shí)現(xiàn)在應(yīng)用環(huán)境中完成對(duì)目標(biāo)的識(shí)別和分類。
卷積神經(jīng)網(wǎng)絡(luò)由卷積層和池化層所構(gòu)成,卷積層內(nèi)要進(jìn)行非線性激活、批正則化等計(jì)算。卷積神經(jīng)網(wǎng)絡(luò)通常的處理單元可以描述為“卷積-激活-池化”,能夠?qū)崿F(xiàn)局部感知、權(quán)值共享和降維的目的,并能夠自動(dòng)提取到高維特征[15]。其中,AlexNet卷積神經(jīng)網(wǎng)絡(luò)由于具有網(wǎng)絡(luò)層次清晰、識(shí)別精度高、系統(tǒng)硬件資源消耗較低等優(yōu)點(diǎn),在圖像識(shí)別領(lǐng)域里得到廣泛應(yīng)用[16-17]。
AlexNet卷積神經(jīng)網(wǎng)絡(luò)共有13層結(jié)構(gòu)。第1層網(wǎng)絡(luò)數(shù)據(jù)輸入層Data;第2層卷積層conv1,卷積核設(shè)定為3×3,步長為4;第3層池化層pool1,池化核設(shè)定為3×3,步長為2;第4層卷積層conv2,卷積核設(shè)定為5×5,步長為1;第5層池化層pool2,池化核設(shè)定為3×3,步長為2;第6層卷積層conv3,卷積核設(shè)定為3×3,步長為1;第7層卷積層conv4,卷積核設(shè)定為3×3,步長為1;第8層卷積層conv5,卷積核設(shè)定為3×3,步長為1;第9層池化層pool5,池化核設(shè)定為3×3,步長為2;第10層全連接層fc6;第11層全連接層fc7;第12層全連接層fc8;第13層輸出層[15]。
本文以AlexNet結(jié)構(gòu)為基礎(chǔ),使用對(duì)監(jiān)控視頻處理后得到的行人數(shù)據(jù)集對(duì)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,然后對(duì)檢驗(yàn)樣本進(jìn)行分類與數(shù)據(jù)統(tǒng)計(jì)分析。
在實(shí)驗(yàn)中,我們?cè)诒O(jiān)控系統(tǒng)中錄制時(shí)長約7.5 h的視頻,每隔15 s保存1次目標(biāo)檢測(cè)結(jié)果,經(jīng)人工篩選,共獲得輸入圖像正樣本1 451幅,輸入圖像負(fù)樣本1 085幅。為解決因遠(yuǎn)景行人目標(biāo)過小等因素造成行人漏檢和誤檢等問題,增設(shè)了輔助攝像頭,輔助攝像頭錄制和截取幀的時(shí)間長度與監(jiān)控系統(tǒng)中主攝像頭相同。輔助變焦監(jiān)控頭的視頻監(jiān)控區(qū)域?yàn)橹饕曨l監(jiān)控遠(yuǎn)景區(qū)域的范圍,即右上部分,如圖1(a)所示,其中,整幅畫面為主攝像頭視頻監(jiān)控區(qū)域,圖中黑色矩形框內(nèi)為對(duì)應(yīng)于輔助變焦攝像頭視頻監(jiān)控區(qū)域。通過設(shè)置輔助變焦攝像頭,使得主視頻監(jiān)控區(qū)域中遠(yuǎn)景區(qū)域監(jiān)控范圍視頻圖像的分辨率放大了2倍,如圖1(b) 所示。
(a)—主攝像頭中的遠(yuǎn)景區(qū)域; (b)—輔助攝像頭放大的遠(yuǎn)景區(qū)域。
使用高斯背景建模法、圖像降噪和目標(biāo)提取算法,分別對(duì)主監(jiān)控視頻圖像和輔助攝像頭錄制的視頻圖像進(jìn)行檢測(cè)和提取,一幀的處理結(jié)果分別如圖2(a)、圖2(b)、圖2(c)、圖2(d)所示。在時(shí)長為7.5 h的同一時(shí)間段視頻圖像中,主監(jiān)控視頻在遠(yuǎn)景區(qū)域檢測(cè)到的完整單個(gè)運(yùn)動(dòng)行人的個(gè)數(shù)為743個(gè),而輔助攝像頭錄制的監(jiān)控視頻中檢測(cè)出完整的單個(gè)行人個(gè)數(shù)為1 451個(gè),是主監(jiān)控視頻遠(yuǎn)景區(qū)域檢測(cè)出的1.98倍,行人目標(biāo)的相對(duì)檢出率提高了95.29%。這種方法有效地克服了因遠(yuǎn)景區(qū)域行人過小而漏檢的問題。
(a)—高斯模型檢測(cè)運(yùn)動(dòng)目標(biāo)的結(jié)果; (b)—運(yùn)動(dòng)目標(biāo)去噪處理的結(jié)果;(c)—主攝像頭遠(yuǎn)景區(qū)域檢測(cè)結(jié)果; (d)—輔助攝像頭檢測(cè)結(jié)果。
其次,在運(yùn)動(dòng)目標(biāo)檢測(cè)的基礎(chǔ)上,將人工標(biāo)識(shí)出的運(yùn)動(dòng)行人圖像1 451幅和負(fù)樣本1 085幅作為訓(xùn)練樣本,另取一段視頻,人工標(biāo)識(shí)運(yùn)動(dòng)行人圖像各為300幅的2組行人目標(biāo)作為檢測(cè)樣本。
最后,將2 536個(gè)訓(xùn)練樣本輸入到1.3節(jié)構(gòu)造的卷積神經(jīng)網(wǎng)絡(luò),進(jìn)行網(wǎng)絡(luò)訓(xùn)練。根據(jù)卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練常規(guī)方法,網(wǎng)絡(luò)訓(xùn)練初期的學(xué)習(xí)率應(yīng)選用較大值,這樣可以避免出現(xiàn)收斂于局部最小值的問題。隨著訓(xùn)練的逐步進(jìn)行,分階段調(diào)小學(xué)習(xí)率。網(wǎng)絡(luò)開始訓(xùn)練時(shí),設(shè)定學(xué)習(xí)率為0.01,然后分階段調(diào)小學(xué)習(xí)率使網(wǎng)絡(luò)訓(xùn)練得到的參數(shù)優(yōu)化,如圖3所示。卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練準(zhǔn)確率如圖4所示,訓(xùn)練準(zhǔn)確率達(dá)到95.16%,效果較好[15]。
圖3 學(xué)習(xí)率設(shè)置Fig.3 Learning rate setting
使用訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)數(shù)量各為300的2組行人檢驗(yàn)樣本進(jìn)行分類測(cè)試,主監(jiān)控視頻遠(yuǎn)景區(qū)域中行人分類準(zhǔn)確率為80.43%。采用輔助變焦攝像頭進(jìn)行輔助檢測(cè)的方法,行人分類準(zhǔn)確率為92.61%。行人分類準(zhǔn)確率提高了15.14%,取得了較好的檢測(cè)效果。
通過上述實(shí)驗(yàn)結(jié)果可以得出,采用輔助變焦攝像頭對(duì)遠(yuǎn)景區(qū)域內(nèi)行人檢測(cè),可以有效提高檢測(cè)目標(biāo)的分辨率,從而有助于提高行人分類的準(zhǔn)確率。
圖4 網(wǎng)絡(luò)訓(xùn)練結(jié)果Fig.4 Network training results
對(duì)于視頻監(jiān)控系統(tǒng)來說,位于主監(jiān)控?cái)z像頭遠(yuǎn)景區(qū)域中的運(yùn)動(dòng)目標(biāo)分辨率較低,清晰度較差,因此容易造成誤檢和漏檢等問題。借助輔助攝像頭錄制出的監(jiān)控視頻,從中檢測(cè)到的運(yùn)動(dòng)目標(biāo)分辨率得到提高,可以降低遠(yuǎn)景區(qū)域中行人的檢測(cè)誤差,從而提高行人分類的準(zhǔn)確率。對(duì)視頻監(jiān)控中遠(yuǎn)景區(qū)域增設(shè)輔助變焦攝像頭的方法,是一種行之有效的方法。