劉子豪,賈小軍,張素蘭,徐志玲,張俊
(1. 嘉興學(xué)院數(shù)理與信息工程學(xué)院,浙江 嘉興 314033;2. 中國(guó)計(jì)量大學(xué)質(zhì)量與安全工程學(xué)院,浙江 杭州 310018;3. 浙江大學(xué)生物系統(tǒng)工程與食品科學(xué)學(xué)院,浙江 杭州 310058)
近年,動(dòng)態(tài)目標(biāo)的背景分割一直是視頻處理領(lǐng)域的研究熱點(diǎn),因其面向應(yīng)用場(chǎng)景的廣泛性和多樣性,吸引了大量研究者。傳統(tǒng)動(dòng)態(tài)目標(biāo)的背景分割方法有背景差分法[1]、光流法[2]、分水嶺算法[3]、幀差法[4]、水平集法[5]、背景更新恢復(fù)法[6]等,這些方法可以濾掉視頻中的各種干擾背景,但也存在諸如分割目標(biāo)殘留、噪聲分割錯(cuò)誤以及拖影無法有效判別等問題。為了解決這些問題,有學(xué)者提出采用基于Vibe背景分割[6]方法實(shí)現(xiàn)動(dòng)態(tài)目標(biāo)的精準(zhǔn)分割。
Vibe背景分割算法最早由Barnich在2011年提出[7],主要思想是通過不斷收集更新背景空間圖樣構(gòu)建背景分割模型,該算法在空間背景圖樣的隨機(jī)選擇和模型更新中提出了一種空間傳播機(jī)制,可將背景像素值插入鄰域像素點(diǎn)的模型樣本庫中,具有較大的靈活性,但是也存在諸如抖動(dòng)參數(shù)優(yōu)化、背景噪聲抑制不佳、填充面積不完善等問題,因此在隨后的一段時(shí)間,較多相關(guān)研究者基于以上問題對(duì)傳統(tǒng)Vibe算法進(jìn)行了改進(jìn),例如2013年,Gulesir等[8]在原始Vibe方法中加入了背景像素與前景像素的函數(shù)篩選規(guī)則,探索如何最大限度地保留前景運(yùn)動(dòng)目標(biāo)和剔除背景噪聲目標(biāo);2017年,Zhou等[9]通過深度融合目標(biāo)像素線索和可視化背景樣本圖樣,提出了Vibe+算法,在一定程度上對(duì)原始Vibe算法中存在的問題進(jìn)行了修正和優(yōu)化。然而,Vibe+算法在以下兩個(gè)應(yīng)用中存在問題。
(1)當(dāng)監(jiān)控視頻中出現(xiàn)運(yùn)動(dòng)的行人、機(jī)動(dòng)車輛、非機(jī)動(dòng)車輛時(shí),采用Vibe+算法進(jìn)行前景提取很容易因?yàn)闃淙~隨風(fēng)擺動(dòng)或者河流流動(dòng)的運(yùn)動(dòng)梯度模式與目標(biāo)運(yùn)動(dòng)模式一致而導(dǎo)致前景目標(biāo)提取失敗。
(2)在自然場(chǎng)景下,天氣有晴天、陰天、雨天、雪天等,不同的天氣條件會(huì)導(dǎo)致分割異常,例如,當(dāng)太陽光直射在目標(biāo)表面產(chǎn)生高光區(qū)時(shí),常常會(huì)因?yàn)楦吖鈪^(qū)域的圖像信息失真,目標(biāo)提取不完全,從而導(dǎo)致分割失敗,而且陽光下運(yùn)動(dòng)目標(biāo)的拖影較明顯,拖影會(huì)隨著目標(biāo)運(yùn)動(dòng)而運(yùn)動(dòng),Vibe+算法會(huì)使得拖影部分附著在前景目標(biāo)中一起被分割出來,從而導(dǎo)致對(duì)運(yùn)動(dòng)目標(biāo)的分割失敗。
針對(duì)以上問題,本文在Vibe+方法的基礎(chǔ)上引入卷積神經(jīng)網(wǎng)絡(luò)(CNN)和改進(jìn)MeanShift聚類算法,實(shí)現(xiàn)運(yùn)動(dòng)目標(biāo)的精準(zhǔn)分割。首先,采用傳統(tǒng)的Vibe+算法獲取視頻幀二值圖像,利用區(qū)域生長(zhǎng)算法對(duì)輕微擾動(dòng)噪聲刪除;然后,基于CNN對(duì)運(yùn)動(dòng)目標(biāo)拖影區(qū)域進(jìn)行檢測(cè)和識(shí)別,聯(lián)合改進(jìn)的MeanShift聚類分析對(duì)圖像中不同目標(biāo)進(jìn)行分類,獲取關(guān)于拖影特征的分類結(jié)果,進(jìn)行拖影的消除處理;最后,整合以上兩個(gè)步驟,完成前景運(yùn)動(dòng)目標(biāo)提取。
在采用Vibe+算法處理后的視頻中,輕微抖動(dòng)的目標(biāo)例如樹葉、微波擾動(dòng)的湖面、被風(fēng)吹動(dòng)的條幅等均會(huì)在背景分割的二值化視頻幀中存在相對(duì)應(yīng)的噪聲干擾點(diǎn),這些干擾點(diǎn)具有斷斷續(xù)續(xù)且相互聯(lián)接不緊密的特點(diǎn),而且噪聲大小和強(qiáng)弱隨機(jī),即無法對(duì)噪聲進(jìn)行建模定位和規(guī)則化處理,需要針對(duì)目標(biāo)視頻中每一幀圖像由非目標(biāo)引起的干擾點(diǎn)進(jìn)行處理,因此,本節(jié)采用基于區(qū)域生長(zhǎng)算法對(duì)分割圖像中所有的連通區(qū)域進(jìn)行標(biāo)記。
2.1.1 區(qū)域生長(zhǎng)算法
對(duì)Vibe+算法處理后的二值圖像中各個(gè)連通區(qū)域采用基于區(qū)域生長(zhǎng)算法[10]進(jìn)行標(biāo)記,其主要思想為:對(duì)其中每個(gè)像素點(diǎn)遍歷其周圍八鄰域內(nèi)的像素點(diǎn),當(dāng)檢測(cè)到存在相鄰像素點(diǎn)與當(dāng)前像素點(diǎn)連通時(shí),將當(dāng)前像素點(diǎn)周圍八鄰域內(nèi)的面積子區(qū)域與各個(gè)相鄰像素點(diǎn)周圍八鄰域內(nèi)的面積子區(qū)域共同確定為連通區(qū)域,因此可實(shí)現(xiàn)目標(biāo)塊區(qū)域的自動(dòng)標(biāo)記。
2.1.2 區(qū)域填充與閾值分割
為了避免算法過多標(biāo)記出多個(gè)較小的連通域而使得連通域標(biāo)記法算法執(zhí)行緩慢,本節(jié)在標(biāo)記連通區(qū)域后采用區(qū)域填充算法[11]對(duì)各個(gè)二值圖像中的封閉區(qū)域進(jìn)行像素值為1的像素點(diǎn)填充,從而加快算法程序執(zhí)行速度,獲取完整大塊的連通區(qū)域。在獲取連通區(qū)域個(gè)數(shù)及其面積數(shù)值之后,依次對(duì)連通區(qū)域的面積數(shù)值進(jìn)行由大至小排序,并對(duì)相鄰兩個(gè)面積數(shù)值的面積差值進(jìn)行統(tǒng)計(jì),確定面積差值最大值對(duì)應(yīng)的兩個(gè)面積數(shù)值,將兩個(gè)面積數(shù)值的平均值確定為面積篩選閾值,由于同一個(gè)視角拍攝的視頻中運(yùn)動(dòng)目標(biāo)尺寸相差較小,通過Vibe+算法處理后生成的二值圖像中除了有大塊運(yùn)動(dòng)目標(biāo),還存在微小的點(diǎn),這些較小的點(diǎn)可認(rèn)為是噪聲所引起的干擾因素,因此把所有小于面積篩選閾值所對(duì)應(yīng)的連通區(qū)域全部刪除,即可通過去噪點(diǎn)獲取處理結(jié)果。
在陽光充足的晴天開放式場(chǎng)景下,運(yùn)動(dòng)目標(biāo)拖影是監(jiān)控視頻中最常見的另一類背景分割干擾項(xiàng),為了消除由拖影帶來的過分割問題,本節(jié)首先對(duì)傳統(tǒng)的MeanShift聚類算法[12]進(jìn)行改進(jìn),然后讓其與卷積神經(jīng)網(wǎng)絡(luò)[13]進(jìn)行融合,最后消除拖影。圖1給出了這兩種算法融合的流程圖。
2.2.1 改進(jìn)MeanShift聚類算法
圖1 融合算法的執(zhí)行步驟與流程示意圖
MeanShift算法最早由Fukunage在1975年提出[14],其最初表示偏移均值向量,隨著理論的發(fā)展,MeanShift的含義已經(jīng)發(fā)生了諸多變化。之后,1995年,Cheng[15]定義了一族核函數(shù),使得隨著樣本與被偏移點(diǎn)的遠(yuǎn)近距離不同,其偏移量對(duì)均值偏移向量的貢獻(xiàn)也不同,作者首次提出采用單體核函數(shù)對(duì)像素點(diǎn)的漂移向量進(jìn)行計(jì)算,獲取了較好的結(jié)果,但是該方法由于把像素點(diǎn)由低維空間映射到高維空間中,在計(jì)算漂移向量不同空間維度的轉(zhuǎn)換位置迭代時(shí),會(huì)不斷地有偏移量錯(cuò)誤累積,存在較大計(jì)算誤差,因此引入了5種核函數(shù)[16]的均值組合模式,從感興趣區(qū)域中心點(diǎn)出發(fā)尋找最佳目標(biāo)像素點(diǎn),最小化累積誤差,同時(shí)達(dá)到最小化向量投影到高維空間中誤差的目標(biāo)。與傳統(tǒng)基于單一數(shù)據(jù)密度變化不同,本節(jié)對(duì)不同維度空間漂移向量的映射加入以數(shù)據(jù)密度為基礎(chǔ)計(jì)算漂移向量的綜合均值核函數(shù),將每個(gè)圖像像素點(diǎn)移動(dòng)到密度函數(shù)的局部極大值點(diǎn)處(密度梯度為0),收斂到概率密度最稠密處,獲取最優(yōu)的收斂結(jié)果,可降低圖像像素點(diǎn)的漂移向量計(jì)算誤差。改進(jìn)MeanShift聚類算法的核心思想在于:引入線性核函數(shù)、多項(xiàng)式核函數(shù)、高斯核函數(shù)、多元二次核函數(shù)和Sigmoid核函數(shù)的均值組合模式,共同對(duì)視頻圖像進(jìn)行聚類計(jì)算,得到視頻圖像中對(duì)應(yīng)的各個(gè)區(qū)域塊圖像,然后依據(jù)最小化漂移向量計(jì)算誤差為原則,得到最優(yōu)的核函數(shù)。改進(jìn)MeanShift所采用的5種核函數(shù)如下所示:
其中,線性核函數(shù)的表達(dá)式為式(1),多項(xiàng)式核函數(shù)的表達(dá)式為式(2),高斯核函數(shù)的表達(dá)式為式(3),多元二次核函數(shù)的表達(dá)式為式(4),Sigmoid核函數(shù)的表達(dá)式為式(5)。在上述表達(dá)式中,變量x表示視頻幀提取特征,y表示該特征被映射后的結(jié)果向量,a、c表示常數(shù)項(xiàng),而σ表示函數(shù)的懲罰系數(shù),該系數(shù)越大意味著核函數(shù)的值越小,反之就越大。
對(duì)5種核函數(shù)所采用的均值綜合計(jì)算方法在于獲取5種核函數(shù)在不同空間轉(zhuǎn)換過程中漂移向量的誤差累積值,在每次迭代中對(duì)誤差較大的核函數(shù)乘以較大的懲罰因子,而對(duì)誤差較小的核函數(shù)乘以較小的懲罰因子,而且加入常數(shù)項(xiàng)以彌補(bǔ)漂移向量空間轉(zhuǎn)換的參數(shù)缺失帶來的不良效果,核函數(shù)均值綜合計(jì)算式如(6)所示。
其中,K(x,y)表示核函數(shù)的均值綜合項(xiàng),i和j分別表示懲罰因子和不同核函數(shù)的下標(biāo)表示,iσ表示不同核函數(shù)的懲罰因子項(xiàng),k j(x,y)表示不同核函數(shù)公式,N表示所采用核函數(shù)的數(shù)量。
通過以上理論分析,本文對(duì)傳統(tǒng)MeanShift聚類分析算法改進(jìn)的步驟如下。
步驟1對(duì)于原始圖像,對(duì)其中未被標(biāo)記的圖像像素點(diǎn)隨機(jī)選擇一個(gè)點(diǎn)作為起始中心點(diǎn)Center。
步驟2將以Center為中心點(diǎn)、半徑為Radius的區(qū)域范圍內(nèi)出現(xiàn)的所有像素點(diǎn)類別確定為類別C,同時(shí)在該聚類中記錄數(shù)據(jù)點(diǎn)出現(xiàn)的次數(shù)自增1。
步驟3以Center為中心點(diǎn),計(jì)算從Center開始到集合M中每個(gè)元素的向量,分別計(jì)算向量利用不同核函數(shù)從低維空間到高維空間的映射結(jié)果,取5種核函數(shù)計(jì)算結(jié)果的誤差最小項(xiàng)作為高維空間漂移向量Shift取值。
步驟4Center = Center + Shift,即Center沿著Shift的方向移動(dòng),移動(dòng)距離采用歐氏距離計(jì)算公式:移動(dòng)方向采用Center的移動(dòng)方向即可。
步驟5重復(fù)執(zhí)行步驟2~步驟4,重復(fù)迭代直到Shift收斂,取該算法迭代到收斂時(shí)的Center作為最后的執(zhí)行結(jié)果,此迭代過程中遇到的點(diǎn)都?xì)w類到當(dāng)前簇C中。
步驟6如果收斂,當(dāng)前簇C的Center與其他已經(jīng)存在的簇C2中心的距離小于閾值,那么把簇C2和簇C合并,數(shù)據(jù)點(diǎn)出現(xiàn)次數(shù)也對(duì)應(yīng)合并,否則,把簇C作為新的聚類。
步驟7重復(fù)執(zhí)行步驟1~步驟5,直到二值圖像中所有像素點(diǎn)都被標(biāo)記為已訪問。
步驟8對(duì)每個(gè)像素點(diǎn)進(jìn)行分類,根據(jù)每個(gè)類對(duì)每個(gè)像素點(diǎn)的訪問頻率,取訪問頻率最大的那個(gè)類作為當(dāng)前點(diǎn)集的所屬類。
改進(jìn)MeanShift聚類算法的核心步驟如圖2所示。
在一幅視頻獲取的圖像中,存在3種需要檢測(cè)的拖影區(qū)域:拖影、非拖影、拖影邊緣,其中拖影邊緣包含了拖影的輪廓信息,而拖影區(qū)域即該輪廓所包含的內(nèi)部陰影區(qū)域,因此拖影邊緣的檢測(cè)是關(guān)鍵,接下來在基于改進(jìn)MeanShift聚類的結(jié)果基礎(chǔ)上,采用卷積神經(jīng)網(wǎng)絡(luò)對(duì)拖影邊緣區(qū)域進(jìn)行檢測(cè)和識(shí)別。
2.2.2 卷積神經(jīng)網(wǎng)絡(luò)算法
圖2 改進(jìn)MeanShift聚類算法的核心步驟
本節(jié)所采用的拖影特征區(qū)域提取方法選用3種類型的訓(xùn)練圖像類型:拖影區(qū)、非拖影區(qū)、拖影邊緣區(qū),訓(xùn)練數(shù)從RGB 圖像和陰影先驗(yàn)分布圖融合結(jié)果中獲取,所采用的CNN包括6個(gè)卷積層、兩個(gè)池化層和兩個(gè)全連接類別輸出層,其輸入數(shù)據(jù)為224×224圖像塊,輸出數(shù)據(jù)為對(duì)應(yīng)區(qū)域的拖影概率預(yù)測(cè)值,該網(wǎng)絡(luò)特別在最后的全連接層FC1后加入基于組合分類器判別模式的新全連接層FC2,分別進(jìn)行3種分類器的綜合分類,然后再基于IMAJ分類器融合規(guī)則[17]獲取最優(yōu)的拖影分類結(jié)果,這樣做的目的在于使得輸出的概率更加接近于實(shí)際的類別標(biāo)簽,呈現(xiàn)一定的相似像素索引性。卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意圖如圖3所示。
在構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)后,以各個(gè)訓(xùn)練樣本圖像所對(duì)應(yīng)原始RGB圖像和陰影先驗(yàn)分布圖作為訓(xùn)練數(shù)據(jù)獲取源,采用拖影區(qū)域、非拖影區(qū)域、拖影邊緣區(qū)域作為3種訓(xùn)練圖像類型,對(duì)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,得到模型用于測(cè)試視頻幀獲取最佳的預(yù)測(cè)結(jié)果。
2.2.3 融合算法
通過以上改進(jìn)MeanShift聚類算法執(zhí)行后,可形成如圖1(b)所示的聚類結(jié)果,以每個(gè)區(qū)域塊圖像為基礎(chǔ)在Lab顏色空間[18]提取顏色直方圖,再提取每一視頻幀的紋理特征Texton 直方圖[19],訓(xùn)練支持向量機(jī)(SVM)分類器[20],生成陰影先驗(yàn)分布圖,該圖構(gòu)建過程遵循圖1(b)→圖1(c)→圖1(d)順序。接下來,考慮基于CNN獲取精確的拖影識(shí)別結(jié)果。然而,由于訓(xùn)練CNN的準(zhǔn)確率極大地依賴于大批量的帶拖影標(biāo)注的圖像或視頻數(shù)據(jù)樣本,現(xiàn)今公開的數(shù)據(jù)集中并沒有大量拖影標(biāo)注圖像,因此考慮采用陰影先驗(yàn)分布圖獲取批量訓(xùn)練圖像,再使用卷積神經(jīng)網(wǎng)絡(luò)作為訓(xùn)練圖像模型,在測(cè)試階段獲取輸入圖像的拖影預(yù)測(cè)概率值。基于以上算法描述,將改進(jìn)的MeanShift算法與卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行有效融合,具體步驟如下。
步驟1對(duì)于目標(biāo)監(jiān)控視頻中的每幀圖像,根據(jù)改進(jìn)MeanShift聚類算法與第一次卷積神經(jīng)網(wǎng)絡(luò)的融合算法,識(shí)別出該幀圖像中的拖影區(qū)域,并獲取各個(gè)拖影區(qū)域在視頻圖像所對(duì)應(yīng)去噪點(diǎn)分割處理后二值圖像的拖影位置坐標(biāo),將二值圖像中各個(gè)拖影位置坐標(biāo)所對(duì)應(yīng)像素點(diǎn)的像素值置為0,得到第一次拖影分割后的二值圖像;根據(jù)第一次卷積神經(jīng)網(wǎng)絡(luò)計(jì)算得到的各個(gè)區(qū)域塊圖像為拖影的概率預(yù)測(cè)值,計(jì)算得到視頻圖像中的各個(gè)拖影邊緣區(qū)域,該區(qū)域由自然場(chǎng)景下的目標(biāo)與拖影共同組成,散落在如圖1(g)所示的圖像空間中,將拖影概率預(yù)測(cè)值大于或等于第一預(yù)設(shè)概率預(yù)測(cè)值,且小于或等于預(yù)設(shè)概率預(yù)測(cè)值的區(qū)域塊圖像確定為拖影邊緣區(qū)域,然后將確定出的各個(gè)拖影邊緣區(qū)域再一次導(dǎo)入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行計(jì)算,采用超參數(shù)自適應(yīng)調(diào)整策略中的超參數(shù),例如學(xué)習(xí)率、樣本批次、卷積核尺寸、卷積核數(shù)量和卷積步長(zhǎng),然后選擇最優(yōu)的參數(shù),輸入卷積神經(jīng)網(wǎng)絡(luò),并向卷積神經(jīng)網(wǎng)絡(luò)輸入大批量無標(biāo)簽的拖影邊緣區(qū)域進(jìn)行無監(jiān)督學(xué)習(xí),由卷積神經(jīng)網(wǎng)絡(luò)輸出對(duì)不同拖影邊緣區(qū)域的拖影預(yù)測(cè)值。
圖3 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意圖
步驟2采用線性判別分析法對(duì)不同拖影邊緣區(qū)域的拖影預(yù)測(cè)值進(jìn)行統(tǒng)計(jì)分析,將拖影預(yù)測(cè)值相同的各個(gè)拖影邊緣區(qū)域聚合為一類,即最小化同類拖影邊緣區(qū)域之間的距離,最大化不同類拖影邊緣區(qū)域之間的距離,以此為基礎(chǔ)從中尋找最大化的拖影邊緣區(qū)域分類邊界,求出明顯的邊緣分界曲線。
步驟3采用融合約束函數(shù)R(S)對(duì)同類拖影邊緣區(qū)域的圖像進(jìn)行邊緣融合,融合約束函數(shù)的表達(dá)式為:
其中,m為分割區(qū)域的數(shù)量,α為固定常數(shù)項(xiàng),表示所包含的區(qū)域之間的邊界像素集合。
通過上述步驟可以獲取關(guān)于視頻幀中所有運(yùn)動(dòng)目標(biāo)的拖影區(qū)域坐標(biāo)向量,記錄并保存這些向量。本文通過Vibe+運(yùn)動(dòng)目標(biāo)分割算法可以提取完整的運(yùn)動(dòng)目標(biāo)前景圖像,其中可能包含有噪點(diǎn)和拖影,經(jīng)過第2.1節(jié)的處理,可以剔除其中的噪點(diǎn)部分,記此步產(chǎn)生的二值圖像為M1;然后,通過第2.2節(jié)的處理,可檢測(cè)出原始圖像中是否包含拖影部分,檢測(cè)后生成的拖影二值圖像記為M2;最后,提取M2中所有像素值為“1”的像素點(diǎn)坐標(biāo)向量,把所有出現(xiàn)在M1中的坐標(biāo)點(diǎn)所對(duì)應(yīng)的像素值全部置0,即可獲取最終的分割結(jié)果。
步驟4對(duì)于去拖影后的圖像,計(jì)算該圖像上下左右4個(gè)極值點(diǎn)坐標(biāo),在所對(duì)應(yīng)視頻圖像中根據(jù)4個(gè)極值點(diǎn)坐標(biāo)確定運(yùn)動(dòng)目標(biāo)圖像,實(shí)現(xiàn)對(duì)目標(biāo)監(jiān)控視頻中運(yùn)動(dòng)目標(biāo)背景的分割。
本文所提Vibe++算法的總體流程如圖4所示。
本文主要采用公開的視頻數(shù)據(jù)集[6]驗(yàn)證所提方法的有效性,數(shù)據(jù)集中包含31個(gè)視頻序列,其中可分為6種類型:基準(zhǔn)類(baseline)、動(dòng)態(tài)背景類(dynamic background)、攝像機(jī)抖動(dòng)類(camera jitter)、間斷運(yùn)動(dòng)目標(biāo)類(intermittent object motion)、拖影類(shadow)、熱圖類(thermal)。每個(gè)類別中的視頻來源非常廣泛,涵蓋了自然場(chǎng)景、交通類、室內(nèi)商場(chǎng)、運(yùn)動(dòng)員比賽、行人步行、湖面、運(yùn)動(dòng)場(chǎng)面等視頻[21],對(duì)所提算法的對(duì)比與驗(yàn)證具有較好的測(cè)試性,該數(shù)據(jù)集包含的部分視頻圖像如圖5所示。
圖4 本文算法總體流程
圖5 公開數(shù)據(jù)集中的部分視頻畫面
基于5個(gè)場(chǎng)景類別,所提算法與傳統(tǒng)背景分割算法的對(duì)比結(jié)果如圖6所示,其中Previous best表示以往較優(yōu)的運(yùn)動(dòng)背景分割算法,Baseline表示基準(zhǔn)對(duì)比圖。
從圖6可以看出,所提算法在拖影類、抖動(dòng)類和動(dòng)態(tài)背景類3類數(shù)據(jù)中可發(fā)揮較大優(yōu)勢(shì),可一定程度上消除拖影和噪點(diǎn),而且使得熱圖類和連續(xù)運(yùn)動(dòng)類得出的結(jié)果與基準(zhǔn)圖像保持一致,具有一定的適應(yīng)性和魯棒性。為了進(jìn)一步驗(yàn)證本文所提算法有效性,且相比于其他傳統(tǒng)經(jīng)典背景分割算法的優(yōu)勢(shì),本文選擇了8種算法進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果見表1。其中視頻幀分割時(shí)長(zhǎng)表示分割每一幀圖像所花費(fèi)的時(shí)間,總體分割準(zhǔn)確率(overall accuracy)可以用式(8)來表示:
圖6 所提算法與傳統(tǒng)背景分割算法的對(duì)比結(jié)果
其中,TP(true positive)表示真陽性,即相比于基準(zhǔn)圖像,把本來正確的像素點(diǎn)分割正確的像素點(diǎn)數(shù)量;FP(false positive)表示假陽性,即相比于基準(zhǔn)圖像,把本來錯(cuò)誤的像素點(diǎn)誤識(shí)別為正確像素點(diǎn)的數(shù)量。其中較優(yōu)的結(jié)果用加粗字體表示。
表1 所提Vibe++算法性能評(píng)價(jià)
從表1中可以看出,相比于其他經(jīng)典的視頻背景分割算法,本文所提Vibe++在分割準(zhǔn)確率方面是最優(yōu)的,這表明Vibe++算法對(duì)經(jīng)典算法中的分割錯(cuò)誤問題,比如抖動(dòng)噪聲無法實(shí)時(shí)剔除、拖影分割不完全以及背景模型更新失敗等方面的問題進(jìn)行了修正,在原始的Vibe+基礎(chǔ)上引入了區(qū)域生長(zhǎng)算法和深度學(xué)習(xí)加聚類的融合算法,消除和避免了此類問題帶來的消極影響,給監(jiān)控視頻中運(yùn)動(dòng)目標(biāo)的分割帶來了性能提升。然而,從每一幀視頻分割的時(shí)間和算法復(fù)雜度方面來看,本算法消耗的時(shí)間最多且復(fù)雜度較高,分割一張2 MB圖像需要132.7 ms,相比于幀差法的12.4 ms,足足多了120.3 ms,但是在高性能的現(xiàn)代計(jì)算機(jī)的中央處理器高速發(fā)展的今天,這樣的分割時(shí)間是可以接受的,尤其以后隨著高效率的圖像矩陣處理芯片GPU不斷推出,圖像處理速度會(huì)不斷提升,圖像分割時(shí)間的可容忍范圍也在不斷擴(kuò)大。
為了詳細(xì)地在公開的視頻數(shù)據(jù)集中給出每一類別的分割準(zhǔn)確率,本文采用了3種方法進(jìn)行對(duì)比研究——傳統(tǒng)較優(yōu)分割算法、Vibe+以及本文所提出的Vibe++。表2給出了采用本文所提方法結(jié)合公開的視頻數(shù)據(jù)集中的5個(gè)類別圖像分割的實(shí)驗(yàn)結(jié)果,其中較優(yōu)的結(jié)果用加粗字體表示。
表2 本文所提方法與先前提出的方法對(duì)比
對(duì)于每一個(gè)單獨(dú)的視頻數(shù)據(jù)集來說,本文所提的算法分別對(duì)3個(gè)數(shù)據(jù)集(動(dòng)態(tài)背景類、抖動(dòng)類和拖影類)中出現(xiàn)的錯(cuò)誤分類像素進(jìn)行了修正和改進(jìn),取得了一定效果,所有類的分割準(zhǔn)確率達(dá)到了98.58%,比之前最好的97.36%提高了1.22%,其中主要的提升點(diǎn)主要在動(dòng)態(tài)背景類、抖動(dòng)類和拖影類3個(gè)類別的錯(cuò)誤像素的修正方面;從單獨(dú)數(shù)據(jù)集來看,對(duì)于抖動(dòng)類視頻數(shù)據(jù),由于本文加入了區(qū)域生長(zhǎng)算法對(duì)噪聲點(diǎn)和抖動(dòng)像素點(diǎn)進(jìn)行了識(shí)別和剔除,并采用面積閾值特征抑制了噪聲點(diǎn)的形成規(guī)模,與Vibe+可以取得80.64%的分割準(zhǔn)確率相比,Vibe++的分割準(zhǔn)確率可以達(dá)到98.05%,提升了17.41%;而對(duì)于拖影類視頻數(shù)據(jù),由于在原始的Vibe+算法的像素背景自動(dòng)更新模塊中加入了改進(jìn)的MeanShift聚類分析和卷積神經(jīng)網(wǎng)絡(luò),新提出的方法除了兼顧Vibe+算法的優(yōu)點(diǎn),還具有拖影邊緣的識(shí)別和檢測(cè)功能,與原始的Vibe+可取得的83.02%的識(shí)別精度相比,Vibe++算法可以取得97.68%,提升了14.66%,所提升的分割精度部分即原始Vibe+算法對(duì)陰影區(qū)域無法識(shí)別的錯(cuò)誤率,因此所提算法具有更好的適應(yīng)性和魯棒性。
從以上的實(shí)驗(yàn)結(jié)果中可以看出,所提算法取得了較高的分割準(zhǔn)確率,為了驗(yàn)證所提算法中所加入的卷積神經(jīng)網(wǎng)絡(luò)的不同結(jié)構(gòu)中,哪些因素對(duì)最終的分割準(zhǔn)確率的提升產(chǎn)生正向貢獻(xiàn),這里展開消融實(shí)驗(yàn)在改進(jìn)算法中尋優(yōu)出最佳的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu),以期在保證較高分割準(zhǔn)確率的前提下,降低算法復(fù)雜度,縮短算法運(yùn)行時(shí)間。表3展示了改變CNN不同結(jié)構(gòu)下所獲取的分割準(zhǔn)確率以及分割一幅圖像的執(zhí)行時(shí)間。
從表3可知,當(dāng)刪除全連接層FC1或FC2后,兩者產(chǎn)生的效果截然不同,刪除FC1之后,模型的分割準(zhǔn)確率只下降了0.7%,只是驗(yàn)證精度略有下降;而當(dāng)刪除全連接層FC2之后,模型的分割準(zhǔn)確率下降了20.26%,即圖像背景分割錯(cuò)誤率會(huì)提升20.26%,這是因?yàn)樵贔C2中構(gòu)建了一種包含有3種分類器的組合分類器,其中包含網(wǎng)絡(luò)的大部分參數(shù),這些參數(shù)確實(shí)會(huì)對(duì)最終拖影目標(biāo)的識(shí)別產(chǎn)生消極影響;同時(shí)刪除兩個(gè)池化層(Pooling1和Pooling2)或刪除其中一個(gè)池化層對(duì)錯(cuò)誤率的影響也相對(duì)較小。但是,如果只保留第一個(gè)卷積層(Conv1)或只保留第二個(gè)卷積層(Conv2),那么模型的性能就會(huì)很差,這表明模型的整體深度對(duì)于獲得良好性能很重要。然后,對(duì)模型的卷積核數(shù)量進(jìn)行了調(diào)整,在前兩個(gè)卷積層中改變了卷積濾波器的數(shù)量,模型所表現(xiàn)出來的分割精度不同,但彼此之間相差不大,這表明增加卷積層的卷積核數(shù)量多少只能在性能和模型訓(xùn)練時(shí)間上得到提高,但是同時(shí)也存在諸如全連接層過擬合風(fēng)險(xiǎn)。通過以上分析,在改進(jìn)算法中所加入的CNN中,刪除FC1、刪除Pooling1或Pooling2以及適當(dāng)調(diào)整卷積層的濾波器數(shù)量對(duì)本文所提算法的分割準(zhǔn)確率和分割時(shí)間產(chǎn)生的影響均較小。
表3 CNN在不同結(jié)構(gòu)下獲取的分割準(zhǔn)確率以及分割時(shí)間
然而,在某幾個(gè)類別中,所提出的Vibe++算法并沒有達(dá)到預(yù)期的效果,例如基準(zhǔn)類、間斷運(yùn)動(dòng)目標(biāo)類和熱圖類,這是因?yàn)楸疚乃岬姆椒ㄖ饕槍?duì)Vibe+算法在分割不完全或者背景抖動(dòng)導(dǎo)致的噪點(diǎn)和運(yùn)動(dòng)目標(biāo)存在拖影方面進(jìn)行改進(jìn)。此外,為了進(jìn)一步驗(yàn)證所提算法的魯棒性,本文還把所提算法應(yīng)用于帶有強(qiáng)烈抖動(dòng)和具有大面積拖影區(qū)域特征的車載監(jiān)控視頻數(shù)據(jù)和街邊監(jiān)控視頻數(shù)據(jù),并對(duì)比了Vibe算法、Vibe+算法以及本文所提的Vibe++算法對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行背景分割的方法,實(shí)驗(yàn)結(jié)果如圖7和圖8所示。
圖7 車載監(jiān)控視頻下的算法對(duì)比結(jié)果
圖8 監(jiān)控視頻下的算法對(duì)比結(jié)果
可以看出,經(jīng)過Vibe算法處理后,圖7(b)和圖8(b)依然存在較多的噪點(diǎn),且分割出的前景目標(biāo)中包括高光區(qū)影響的背景目標(biāo);而經(jīng)過Vibe+算法處理后得到的圖7(c)和圖8(c)雖然噪點(diǎn)現(xiàn)象略微減輕,但噪點(diǎn)現(xiàn)象和前景目標(biāo)的錯(cuò)誤分割現(xiàn)象依然嚴(yán)重,并且在微風(fēng)吹動(dòng)的條幅分割結(jié)果來看,存在噪聲擾動(dòng),而經(jīng)本文提供的Vibe++算法的運(yùn)動(dòng)目標(biāo)背景分割方法處理分割后得到的圖7(d)則能夠準(zhǔn)確清晰地提取到前景運(yùn)動(dòng)目標(biāo)圖像,并可以剔除多余的噪聲干擾,填充了目標(biāo)運(yùn)動(dòng)圖像;在強(qiáng)烈太陽光影響下,運(yùn)動(dòng)目標(biāo)(行人和摩托車)的拖影也可以通過本文所提出的融合改進(jìn)MeanShift聚類算法和卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行拖影的檢測(cè)和識(shí)別,起到至關(guān)重要的作用。
因此,本文提出的基于改進(jìn)Vibe+算法的運(yùn)動(dòng)目標(biāo)背景分割方法與現(xiàn)有Vibe算法、Vibe+算法以及當(dāng)今現(xiàn)存的運(yùn)動(dòng)目標(biāo)分割算法相比具有較大的優(yōu)勢(shì),其對(duì)前景運(yùn)動(dòng)目標(biāo)的分割準(zhǔn)確率較高,且受視頻圖像內(nèi)容干擾的程度小,因而具備較強(qiáng)的適用性。Vibe++算法除了在開放式場(chǎng)景下可以使用,還可以應(yīng)用在特定場(chǎng)景下的運(yùn)動(dòng)目標(biāo)識(shí)別,例如在工業(yè)領(lǐng)域中[25],生產(chǎn)線上運(yùn)動(dòng)的工業(yè)零部件,可以采用Vibe++實(shí)時(shí)跟蹤目標(biāo),剔除由于機(jī)械裝置抖動(dòng)或電壓不穩(wěn)定帶來的分割二值圖存在較多噪點(diǎn)干擾的情況;而且還可以檢測(cè)出因?yàn)椴杉曨l或圖像系統(tǒng)中的光源設(shè)計(jì)不合理導(dǎo)致的獲取圖像具有較多陰影,對(duì)陰影的檢測(cè)和剔除同樣可以采用Vibe++算法進(jìn)行處理;在農(nóng)業(yè)領(lǐng)域[26],使用無人機(jī)進(jìn)行水稻、小麥等農(nóng)作物進(jìn)行產(chǎn)量評(píng)估時(shí),往往需要通過無人機(jī)機(jī)載相機(jī)獲取視頻,然而在白天陽光的強(qiáng)烈照射下會(huì)出現(xiàn)作物的大面積陰影和由微風(fēng)所帶來的抖動(dòng),可采用本文方法進(jìn)行拖影和噪點(diǎn)的消除;在水產(chǎn)領(lǐng)域[27],在養(yǎng)殖魚或蝦的池塘水面上獲取圖像時(shí),獲取的圖像中往往會(huì)由于反光問題存在高光區(qū),這些區(qū)域的存在會(huì)使得圖像部分信息丟失,而且運(yùn)動(dòng)目標(biāo)在光線下的不斷移動(dòng)也會(huì)存在輕微陰影的情況,也可采用本文提出的Vibe++予以解決。因此,本文所提算法具有在多個(gè)研究領(lǐng)域的應(yīng)用前景和應(yīng)用潛力。
本文針對(duì)傳統(tǒng)Vibe+算法存在的抖動(dòng)運(yùn)動(dòng)目標(biāo)和拖影區(qū)域無法準(zhǔn)確分割的問題,對(duì)Vibe+運(yùn)動(dòng)目標(biāo)分割算法進(jìn)行了兩點(diǎn)改進(jìn):一是采用基于區(qū)域生長(zhǎng)算法對(duì)分割圖像中各連通區(qū)域進(jìn)行標(biāo)記,依據(jù)邊界面積塊差異特征設(shè)定面積篩選閾值,將不滿足條件的像素點(diǎn)進(jìn)行刪除;二是對(duì)MeanShift聚類算法改進(jìn),并與卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行有效融合,對(duì)結(jié)果圖像中拖影區(qū)域、非拖影區(qū)域和拖影邊緣區(qū)域分類識(shí)別,計(jì)算拖影區(qū)域在圖像中位置坐標(biāo),對(duì)其中各個(gè)拖影區(qū)域進(jìn)行快速刪除。本文所提算法在公開的視頻數(shù)據(jù)集中包含的多個(gè)子類別中與之前的最優(yōu)算法相比取得較好的分割準(zhǔn)確率,并且通過車載視頻和監(jiān)控視頻相關(guān)數(shù)據(jù)進(jìn)一步論證了所提算法的有效性。在未來的無人駕駛汽車和視頻監(jiān)控研究領(lǐng)域中,本研究具有廣闊的應(yīng)用背景和較高的實(shí)用價(jià)值。