黃應(yīng)清, 趙 哲, 閆興鵬, 趙 鍇, 裴 闖
(1. 裝甲兵工程學(xué)院控制工程系,北京 100072; 2. 裝甲兵工程學(xué)院信息工程系,北京 100072)
自動(dòng)目標(biāo)檢測(cè)與跟蹤作為機(jī)器視覺的一個(gè)重要研究方向,在戰(zhàn)場(chǎng)偵察和銀行、機(jī)場(chǎng)等重要地域的監(jiān)測(cè)中有著廣泛的應(yīng)用。其中動(dòng)態(tài)目標(biāo)檢測(cè)作為計(jì)算機(jī)視覺的一種主要應(yīng)用技術(shù),在近十年來獲得了極大的發(fā)展,并與工程應(yīng)用緊密聯(lián)系在一起[1-3]。
動(dòng)態(tài)目標(biāo)檢測(cè)的任務(wù)就是在紛繁復(fù)雜的背景中,把感興趣的運(yùn)動(dòng)目標(biāo)盡可能完整地提取出來。檢測(cè)算法主要有光流分析法、幀間差分法和背景差分法3種[4-7]。背景差分法是目前應(yīng)用最廣泛、實(shí)時(shí)性良好的一種方法,其效果直接由背景模型決定。背景模型根據(jù)其生成方式,可分為參數(shù)型和非參數(shù)型,二者相比較,采用參數(shù)建模更能適應(yīng)變化的場(chǎng)景,運(yùn)算效率高且資源消耗少。就目標(biāo)檢測(cè)所處理的圖像而言,其直方圖大多以雙峰形式存在,適于采用Otsu算法進(jìn)行分割[8]。但傳統(tǒng)Otsu算法計(jì)算量大,實(shí)時(shí)效果不佳,需加以改進(jìn)。為此,本文基于混合高斯模型和改進(jìn)的Otsu分割算法,提出了一種動(dòng)態(tài)目標(biāo)檢測(cè)算法,對(duì)復(fù)雜背景干擾的動(dòng)態(tài)目標(biāo)檢測(cè)問題進(jìn)行研究。
近年來,在復(fù)雜背景建模中,混合高斯模型[2,9-10]的應(yīng)用越來越廣泛。與只適用于室內(nèi)場(chǎng)景、背景相對(duì)穩(wěn)定的單高斯模型不同,混合高斯模型考慮了背景運(yùn)動(dòng)的多模性,可以更好地應(yīng)用在部分區(qū)域震蕩變化,如背景擾動(dòng)(樹葉)、閃爍(水面)等檢測(cè)易出錯(cuò)的動(dòng)態(tài)背景環(huán)境。
高斯背景模型是將每一個(gè)像素點(diǎn)都看成是一個(gè)高斯分布,混合高斯模型則對(duì)每個(gè)像素都維護(hù)K個(gè)背景模型,模型個(gè)數(shù)越多,處理波動(dòng)能力就越強(qiáng),所需處理時(shí)間也會(huì)越長(zhǎng)。若每個(gè)像素點(diǎn)取值用變量Xt表示,其概率密度函數(shù)f(Xt)為
(1)
將每一個(gè)新獲得的像素與當(dāng)前背景模型的K個(gè)分布進(jìn)行匹配,匹配值為
(2)
式中:λ為匹配閾值參數(shù),經(jīng)典混合高斯模型取λ=2.5。采用λ=2.5以內(nèi)的樣本來估計(jì)各高斯分布的標(biāo)準(zhǔn)差,將使分布尾部被截?cái)?,?biāo)準(zhǔn)差的估計(jì)值會(huì)偏小,導(dǎo)致檢測(cè)結(jié)果出現(xiàn)偏差。
圖1 準(zhǔn)確度與參數(shù)λ和真實(shí)標(biāo)準(zhǔn)差σ的關(guān)系
λ=2.5是傳統(tǒng)高斯模型的閾值,由圖1可見其準(zhǔn)確度在99.5%上下浮動(dòng),但實(shí)際數(shù)據(jù)不可能完全匹配高斯分布,實(shí)際準(zhǔn)確度會(huì)更低。從背景更新準(zhǔn)確度來說,λ取值越大越好,但是過大閾值會(huì)導(dǎo)致目標(biāo)像素漏檢率增高,因此,λ的選取需在目標(biāo)準(zhǔn)確度和漏檢率之間做權(quán)衡。筆者提出在算法中采用雙閾值,即在背景更新中采用λb=3.0,在目標(biāo)檢測(cè)中采用λo=2.5。雙閾值的選取不僅更能保證參數(shù)估計(jì)具有較高的準(zhǔn)確度和較低的漏檢率,而且能舍棄不確定像素的灰度信息,降低目標(biāo)虛警率。
獲取匹配值Mi,t的目的是將可能性大的分布置于序列前列。如果該像素被頻繁擊中,則它會(huì)成為背景的一部分,可能性小的分布逐漸會(huì)被可能性更大的分布代替。高斯分布參數(shù)更新公式如下:
wi,t+1=(1-α)wi,t+αMi,t,
(3)
(4)
式(3)為權(quán)重的更新公式,式(4)為歸一化權(quán)重系數(shù),其中α是模型學(xué)習(xí)率,按經(jīng)驗(yàn)可取0.02。常規(guī)混合高斯模型對(duì)大面積背景擾動(dòng)和運(yùn)動(dòng)目標(biāo)的停留及再次移動(dòng)的檢測(cè)效果不佳,為提高算法對(duì)此類問題的適應(yīng)性,需改進(jìn)模型參數(shù)權(quán)值更新:
(5)
式中:γu為模型更新參數(shù);γr為模型替代參數(shù)。在目標(biāo)檢測(cè)過程中,γu、γr分別表示當(dāng)前幀目標(biāo)像素、背景像素成為背景的速度控制參數(shù)。結(jié)合式(3)可知:改進(jìn)后的模型參數(shù)權(quán)值上升速度將減緩,下降速度將加快,即客觀上延長(zhǎng)了像素點(diǎn)被判為目標(biāo)像素的時(shí)間,有利于對(duì)背景干擾和運(yùn)動(dòng)目標(biāo)停留問題的檢測(cè)。
均值和方差的更新公式如下:
μi,t+1=(1-ρ)μi,t+ρXt,
(6)
(7)
常規(guī)高斯模型將排除在高斯分布之外的像素點(diǎn)灰度值直接確定為前景點(diǎn),并二值化前景背景點(diǎn),這樣的結(jié)果無疑增加了對(duì)目標(biāo)像素的錯(cuò)檢率。為此,本文采用改進(jìn)的混合高斯模型獲取背景點(diǎn)分布,生成背景模型,并與當(dāng)前幀進(jìn)行差分運(yùn)算,采用Otsu分割算法生成二值化圖。
Otsu算法又稱最大類間方差法,是在灰度直方圖基礎(chǔ)上采用最小二乘法原理推導(dǎo)出的,以最佳閾值將圖像的灰度值分割成方差最大的2部分,即具有最大的分離性[11]。其原理如下。
(8)
式中:t的取值為0~l-1,使δ2(t)最大時(shí)對(duì)應(yīng)的t值為最佳分割閾值。
現(xiàn)對(duì)該算法改進(jìn)如下。令μ0≤μ≤μ1,則
|μ-μ0|-|μ-μ1|=μ-μ0+μ-μ1=
(9)
當(dāng)圖像對(duì)比度較低時(shí),灰度差異在直方圖上顯示不明顯,但在局部區(qū)域內(nèi),目標(biāo)灰度值仍然有別于背景灰度值,如圖2所示。通過Top-hat變換,可使圖像的背景亮度變得均勻,采用統(tǒng)一閾值分割圖像,無用信息也會(huì)降低。圖像的形態(tài)學(xué)Top-hat變換為
圖2 原始差分結(jié)果局部直方圖
(10)
對(duì)不均勻的灰度行閾值處理很困難,與圖像背景底色相近的前景目標(biāo)很難被檢測(cè)出來。如果對(duì)圖像進(jìn)行開運(yùn)算,就可產(chǎn)生對(duì)整個(gè)圖像背景的合理估計(jì),只需保證結(jié)構(gòu)元素大到不能完全匹配目標(biāo)即可。經(jīng)開運(yùn)算處理的差分結(jié)果局部直方圖如圖3所示,可見:Top-hat變換使差分圖的灰度級(jí)l相應(yīng)地降低,Otsu算法搜索范圍進(jìn)一步縮小,提升了運(yùn)算速度。由原圖減去經(jīng)開運(yùn)算后的圖像,即可產(chǎn)生一幅具有合適且均勻背景的圖像。
圖3 改進(jìn)的差分結(jié)果局部直方圖
根據(jù)以上結(jié)論,本文提出了一種改進(jìn)的目標(biāo)檢測(cè)算法,其流程如圖4所示。
采用的背景更新模塊建模主要分為3個(gè)步驟:1)利用讀取連續(xù)幀圖像信息,生成高斯分布模型;2)檢測(cè)新像素點(diǎn)屬于該模型的概率,選取λb=2.5作為判決背景點(diǎn)閾值,選取λo=3.0作為判決目標(biāo)點(diǎn)閾值;3)利用式(5)更新模型參數(shù)各分布權(quán)值。
改進(jìn)的Otsu分割算法步驟如下:1)系統(tǒng)從模型獲取背景圖,對(duì)新獲取圖像進(jìn)行背景差分運(yùn)算;2)對(duì)差分結(jié)果進(jìn)行Top-hat變換;3)為減少搜索次數(shù),第1幀差分結(jié)果選取總方差灰度值μ,進(jìn)行分割二值化;4)第2幀及以后的差分結(jié)果選取[μ,l-1]區(qū)間作為Otsu法的搜索閾值范圍。由于去除了大量的背景干擾信息,此時(shí)背景C0與目標(biāo)C1所占比例相當(dāng),可以更有效地分割出目標(biāo)信息。
對(duì)于改進(jìn)的Ostu算法分割結(jié)果,需進(jìn)行形態(tài)學(xué)處理,腐蝕以刪除小面積,膨脹以填充部分目標(biāo)內(nèi)部空洞,尋找連通區(qū)域以標(biāo)志目標(biāo)。
圖4 改進(jìn)目標(biāo)檢測(cè)算法流程
試驗(yàn)利用Matlab軟件進(jìn)行數(shù)據(jù)測(cè)試分析,并結(jié)合Visual Studio2010實(shí)驗(yàn)平臺(tái),采用OpenCV2圖像函數(shù)庫(kù)進(jìn)行設(shè)計(jì)實(shí)現(xiàn),并且對(duì)常規(guī)中值背景模型[12]和本文所提出的方法進(jìn)行比較。圖像幀整體尺寸為1 280×720像素,截取主要局部圖為489×720像素,如圖5所示。
由圖5可見:圖5(b)中值背景陰影較重,效果不好,這與中值模型采用的數(shù)據(jù)幀數(shù)量有關(guān),而且只能選擇中間灰度值,如果目標(biāo)較長(zhǎng)時(shí)間出現(xiàn)在檢測(cè)區(qū)域,會(huì)使生成背景混雜有目標(biāo)信息;圖5(c)上方樹葉長(zhǎng)時(shí)間細(xì)微的抖動(dòng)影響了背景的生成;采用本文方法生成的背景(圖5(d))相對(duì)純凈,這是因?yàn)殡p閾值的選取降低了背景擾動(dòng),改進(jìn)的權(quán)值更新方法延長(zhǎng)了判別背景時(shí)間。
2種建模方法生成的背景灰度直方圖對(duì)比如圖6所示。經(jīng)計(jì)算,采用常規(guī)中值背景模型生成的背景圖對(duì)比度為8.824 8,而采用本文方法生成的背景圖對(duì)比度為11.577 1。
由圖6及對(duì)比度計(jì)算結(jié)果可知:由于常規(guī)中值背景模型混雜了部分目標(biāo)信息,因此在灰度值較低區(qū)域,像素個(gè)數(shù)更多,這些灰度值覆蓋了原本在200~250區(qū)間內(nèi)的背景像素灰度值;而采用本文方法得到的背景圖對(duì)比度較大,效果較好。這是由于背景差分運(yùn)算結(jié)果會(huì)保留更多的目標(biāo)信息,以免漏檢目標(biāo)。
圖5 背景模型生成對(duì)比
圖6 2種建模方法生成的背景灰度直方圖對(duì)比
分別采用迭代閾值二值化方法、Otsu算法和改進(jìn)的Otsu算法,對(duì)當(dāng)前幀與背景的差分圖進(jìn)行閾值分割,結(jié)果對(duì)比如圖7-10所示。可以看出:采用改進(jìn)的Otsu分割算法,圖像上存在的大量無用信息(樹葉擾動(dòng))被排除,運(yùn)動(dòng)目標(biāo)更加顯著,更易于進(jìn)行后期的圖像形態(tài)學(xué)處理,以標(biāo)定目標(biāo)。
圖7 不同閾值分割算法效果圖對(duì)比
圖8 不同閾值分割算法灰度直方圖對(duì)比
圖9 不同閾值分割算法處理速度對(duì)比
圖10 不同閾值分割算法某點(diǎn)像素的灰度值變化
采用本文方法生成的背景差分圖需進(jìn)行形態(tài)學(xué)處理,先進(jìn)行腐蝕處理,再進(jìn)行膨脹處理,繼而標(biāo)定目標(biāo)圖,檢測(cè)目標(biāo)結(jié)果如圖11所示。
由于Matlab的處理速度有限,因而采用高效且可移植的基于OpenCV2圖像庫(kù)的C++語(yǔ)言編寫程序,運(yùn)行結(jié)果如圖12所示。每幀處理時(shí)間統(tǒng)計(jì)如圖13所示,可見:視頻處理的前期是多建模過程,耗時(shí)不穩(wěn)定,待模型實(shí)時(shí)更新后,平均速率為48 ms/幀,處理速度穩(wěn)定,基本滿足對(duì)實(shí)時(shí)目標(biāo)檢測(cè)的要求。
圖11 檢測(cè)目標(biāo)結(jié)果
圖12 基于OpenCV2庫(kù)的C++程序運(yùn)行結(jié)果
圖13 每幀處理時(shí)間統(tǒng)計(jì)
本文針對(duì)運(yùn)動(dòng)目標(biāo)檢測(cè)中的實(shí)時(shí)性及目標(biāo)虛警問題,提出了一種基于變參數(shù)混合高斯模型的動(dòng)態(tài)目標(biāo)檢測(cè)算法。該算法能夠較好地抑制突變環(huán)境,并降低背景中小的抖動(dòng)對(duì)檢測(cè)結(jié)果的干擾, 有效地解決了重影、目標(biāo)虛警等問題。下一步,要研究更高效的混合模型與分割算法相結(jié)合的策略,綜合利用已獲得信息自動(dòng)變更參數(shù),以達(dá)到自適應(yīng)的結(jié)果。
參考文獻(xiàn):
[1] Haritaoglu I,Harwood D,Davis L S. W4:Real-time Surveillance of People and Their Activities [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(8):809-830.
[2] Stauffer C, Grimson W E L. Adaptive Background Mixture Models for Real- time Tracking[C]∥Proceedings of IEEE Computer Socitety Conference on Computer Vision and Pattern Recognition.Fort Collins,CO:IEEE,1999:2241-2246.
[3] 呂復(fù)強(qiáng),王慧,劉泓,等.基于改進(jìn)混合高斯模型的交通流背景檢測(cè)算法[J].上海交通大學(xué)學(xué)報(bào),2012,46(12):1920-1925.
[4] Horn B K, Schunch B G. Determining Optical Flow [J] . Artificial Intelligent,1981,17: 185-203.
[5] Chalidabhongse T H, Kim K, Harwood D, et al. A Perturbation Method for Evaluating Background Subtraction Algorithms [C]∥Proceedings of Joint IEEE International Workshop on Visual Surveillance and Performance Evaluation of Tracking and Surveillance (VS-PETS).Nice,France:IEEE, 2003,10:11-12.
[6] 朱明旱,羅大庸,曹倩霞. 幀間差分與背景差分相融合的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J]. 計(jì)算機(jī)測(cè)量與控制,2005,25(2): 2-3.
[7] 代科學(xué),李國(guó)輝,涂丹,等. 監(jiān)控視頻運(yùn)動(dòng)目標(biāo)檢測(cè)減背景技術(shù)的研究現(xiàn)狀和展望[J].中國(guó)圖像圖形學(xué)報(bào),2006,11(7) : 921-927.
[8] Otsu N. A Threshold Selection Method from Gray-level Histogram [J].IEEE Transactions on Systems, Man and Cybernetics,1979,9(1):62-66.
[9] Gao X,Boult T E,Coetzee F, et al.Error Analysis of Background Adaption [EB/OL].(2011-09-02)[2014-01-01].http://wenku.baidu.com/view/1c83a8ec5ef7baod4a733b16.html
[10] Stauffer C, Grimson W E L.Learning Patterns of Activity Using Real-time Tracking[J].IEEE Trans PAMI,2000,20(8):747-757.
[11] 何志勇,孫立寧,黃偉國(guó),等. 基于Otsu準(zhǔn)則和直線截距直方圖的閾值分割[J]. 光學(xué)精密工程,2012,20(10):2315-2323.
[12] Gupte S, Masound O, Martin R F K, et al.Detection and Classification for Vehicles[J]. IEEE Transactions on Intelligent Transportation Systems, 2002,3(1): 37- 47.