張應(yīng)輝,劉養(yǎng)碩
(東北大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,遼寧 沈陽(yáng) 110000)
基于幀差法和背景差法的運(yùn)動(dòng)目標(biāo)檢測(cè)
張應(yīng)輝,劉養(yǎng)碩
(東北大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,遼寧 沈陽(yáng) 110000)
隨著視頻監(jiān)控的發(fā)展,智能監(jiān)控算法也得到逐步的改進(jìn)。智能監(jiān)控中主要用到的是運(yùn)動(dòng)目標(biāo)檢測(cè)算法。在運(yùn)動(dòng)目標(biāo)檢測(cè)算法中,傳統(tǒng)算法存在檢測(cè)結(jié)果不準(zhǔn)確、抗干擾性能低等缺點(diǎn)。為提高運(yùn)動(dòng)目標(biāo)檢測(cè)的準(zhǔn)確性和高效性,基于三幀差法和背景差法,提出了一種二者相結(jié)合的運(yùn)動(dòng)目標(biāo)檢測(cè)算法。該算法利用三幀差法和背景差法分別獲得前景目標(biāo)圖像,再通過(guò)或運(yùn)算將這兩幅前景圖像合并成最終的前景圖像。實(shí)驗(yàn)采用交通錄像為實(shí)驗(yàn)樣本,對(duì)視頻中移動(dòng)的車輛進(jìn)行移動(dòng)偵測(cè)。實(shí)驗(yàn)結(jié)果表明,該算法相較于其他算法更能檢測(cè)出完整的車輛輪廓。從數(shù)值上分析也可以看出,該算法能夠有效減少目標(biāo)圖像中的噪聲,精確而快速地檢測(cè)出運(yùn)動(dòng)目標(biāo),具有良好的魯棒性。
視頻監(jiān)控;三幀差法;背景差法;運(yùn)動(dòng)目標(biāo)檢測(cè)
運(yùn)動(dòng)目標(biāo)檢測(cè)在視頻監(jiān)控領(lǐng)域扮演著越來(lái)越重要的角色。運(yùn)動(dòng)目標(biāo)檢測(cè)是對(duì)視頻圖像中發(fā)生變化部分的分離,是基于幾何和統(tǒng)計(jì)特征的圖像分割。目標(biāo)檢測(cè)算法在現(xiàn)實(shí)生活中的應(yīng)用十分廣泛,在節(jié)省人力,提高工作效率方面有著重要的意義。新的目標(biāo)檢測(cè)算法的不斷涌現(xiàn)推動(dòng)了智能監(jiān)控的發(fā)展。同時(shí),智能監(jiān)控的發(fā)展也使得運(yùn)動(dòng)目標(biāo)檢測(cè)算法不斷改進(jìn)。
主要的目標(biāo)檢測(cè)算法包括背景差法、幀差法[1-2]、光流法等[3-7]。這些方法各有其優(yōu)缺點(diǎn),不過(guò)幀差法和背景差法較光流法來(lái)說(shuō)比較簡(jiǎn)單易于實(shí)現(xiàn),并且硬件要求不高。雖然幀差法和背景差法應(yīng)用廣泛,對(duì)運(yùn)動(dòng)目標(biāo)較為靈敏,而且不易受自然環(huán)境的干擾,但對(duì)運(yùn)動(dòng)較慢或靜止的物體容易產(chǎn)生漏檢。而背景差法能夠準(zhǔn)確地提取運(yùn)動(dòng)目標(biāo),但容易受外界環(huán)境的影響。對(duì)此提出了一些改進(jìn)算法,有基于幀差法改進(jìn)的也有從背景模型[8]方面進(jìn)行改進(jìn)的。但是有的效果并不明顯,或者能夠精確檢測(cè)但失去了效率。
在該算法中,幀差法在檢測(cè)前景目標(biāo)圖像的同時(shí)也為背景差法檢測(cè)是否準(zhǔn)確提供依據(jù),起到校驗(yàn)的作用。這就為算法檢測(cè)的準(zhǔn)確性提供了保障,達(dá)到系統(tǒng)自檢自修復(fù)的目的。該算法充分利用了三幀差法和背景差法的優(yōu)點(diǎn)使得目標(biāo)檢測(cè)更加準(zhǔn)確,同時(shí)也很好地克服了對(duì)方的缺點(diǎn),減少了外界條件在檢測(cè)過(guò)程中帶來(lái)的不良影響。
1.1 幀差法
利用人眼的視覺延遲,將圖片進(jìn)行快速播放就形成所看到的視頻。幀差法就是將圖像從視頻中提取出來(lái)進(jìn)行對(duì)比從而獲得運(yùn)動(dòng)目標(biāo)的一種方法。而對(duì)于相鄰幀圖像來(lái)說(shuō),當(dāng)沒有運(yùn)動(dòng)物體進(jìn)入圖像時(shí),這些圖像中對(duì)應(yīng)像素點(diǎn)是基本相同的,當(dāng)有運(yùn)動(dòng)物體出現(xiàn)在視頻中,即使運(yùn)動(dòng)物體運(yùn)動(dòng)緩慢,但對(duì)于像素點(diǎn)來(lái)說(shuō)就是很大的改變(假設(shè)運(yùn)動(dòng)物體和背景區(qū)分明顯,且在絕大多數(shù)情況下是成立的)。相鄰幀圖像之間的對(duì)比,其實(shí)就是圖像上對(duì)應(yīng)像素點(diǎn)的對(duì)比,這就很容易發(fā)現(xiàn)變化的像素點(diǎn),通過(guò)圖像表現(xiàn)出來(lái)就是運(yùn)動(dòng)區(qū)域。公式如下:
(1)
其中,Dk(x,y)為第k幀圖像Ik(x,y)和第k-1幀圖像Ik-1(x,y)的差分圖像。
然后,對(duì)差分圖像進(jìn)行閾值分割,得到二值化的前景圖像:
(2)
其中,Tk(x,y)為二值化前景圖像;T為分割閾值。
在監(jiān)控視頻中,監(jiān)控環(huán)境隨著時(shí)間是不斷變化的(如光照的改變),這樣會(huì)造成前后幀圖像的像素值差別發(fā)生變化。通過(guò)設(shè)定閾值可以在環(huán)境改變的情況下將目標(biāo)圖像提取出來(lái)。
1.2 背景差法
背景差分法(背景差法)同幀差法基本類似,只是幀圖像的對(duì)比對(duì)象有所不同。背景差法是通過(guò)將實(shí)時(shí)幀和建立好的背景模型進(jìn)行對(duì)比來(lái)檢測(cè)運(yùn)動(dòng)區(qū)域。
背景差法的好壞其關(guān)鍵在于背景模型的建立。目前背景建模的方法主要有均值背景建模法、中值背景建模法、單高斯分布模型[9-10]以及混合高斯分布模型[11-13]等。在視頻監(jiān)控過(guò)程中,由于外界條件的變化需要不斷更新背景模型。將背景模型與視頻幀圖像進(jìn)行差分運(yùn)算,得到差分圖像。下面的Bk-1(x,y)是建立的背景模型,它決定了檢測(cè)目標(biāo)區(qū)域的準(zhǔn)確性。公式為:
(3)
(4)
從公式中可以很容易看出背景差法和幀差法的相同之處。對(duì)于不同點(diǎn)可知,利用幀差法得到運(yùn)動(dòng)目標(biāo)圖像是相鄰兩幀圖像的相對(duì)運(yùn)動(dòng)區(qū)域并不是目標(biāo)檢測(cè)區(qū)域,而背景差分法得到的Dk(x,y)是真正的運(yùn)動(dòng)目標(biāo)區(qū)域。
2.1 算法思路
該運(yùn)動(dòng)目標(biāo)檢測(cè)算法可以概括為三步:
(1)通過(guò)三幀差法和背景差法分別獲取一幅前景目標(biāo)圖像。
(2)將獲得的兩幅前景目標(biāo)圖像進(jìn)行對(duì)比,判斷前景目標(biāo)圖像檢測(cè)是否準(zhǔn)確。
(3)如果對(duì)比通過(guò),則將兩幅圖像進(jìn)行或運(yùn)算得出前景目標(biāo)圖像;如果不通過(guò),則更新背景模型然后再回到第二步繼續(xù)執(zhí)行。
算法流程如圖1所示。
圖1 運(yùn)動(dòng)目標(biāo)檢測(cè)算法流程圖
2.2 幀差法和形態(tài)學(xué)濾波
幀差法得到的前景圖像可以看作運(yùn)動(dòng)物體的邊緣檢測(cè)。利用形態(tài)學(xué)濾波可以很好地降低與真實(shí)物體邊緣的差別,為后面與背景差法得到的目標(biāo)圖像相結(jié)合做準(zhǔn)備。
利用三幀差法得到差分圖像,在差分圖像的基礎(chǔ)上再進(jìn)行一次像素相乘處理,利用噪聲在時(shí)間域內(nèi)難重復(fù)的特點(diǎn),進(jìn)行相乘處理就濾除了噪聲產(chǎn)生的孤立噪點(diǎn)。三幀差法的運(yùn)算公式為:
(5)
(6)
(7)
由于三幀差法也繼承了幀差法的缺點(diǎn),使得獲取的前景目標(biāo)圖像存在“空洞”現(xiàn)象。利用形態(tài)學(xué)中腐蝕膨脹[14-15]的方法可有效改善目標(biāo)圖像。對(duì)后續(xù)的兩幅前景圖像的比較可有效降低檢測(cè)誤差。對(duì)圖像進(jìn)行腐蝕處理可以減少圖像中的噪點(diǎn)與毛刺,再對(duì)圖像進(jìn)行膨脹處理可以填充目標(biāo)圖像和將斷開的目標(biāo)圖像連接起來(lái),使圖像更加完整,不那么“空洞”。腐蝕和膨脹的效果取決于模板的選取,公式如下:
A°B=(A?B)⊕B
(8)
A?B=(A⊕B)?B
(9)
其中,A表示圖像;B表示結(jié)構(gòu)元素;A°B表示開運(yùn)算;A?B表示閉運(yùn)算。
2.3 背景差分法
背景差分法開始要獲取背景圖像,利用模型法對(duì)背景建模,這里采用混合高斯模型的方法?;旌细咚狗植寄P投xK(K一般取3~5)個(gè)高斯分布分量的加權(quán)和,給出密度函數(shù):
(10)
(11)
2.4 閾值檢測(cè)及或運(yùn)算
通過(guò)形態(tài)學(xué)處理和背景差法分別獲得兩幅前景目標(biāo)圖像,并對(duì)這兩幅前景圖像進(jìn)行差分運(yùn)算,通過(guò)對(duì)比閾值可以判斷兩幅圖像的差別是否明顯。其中閾值是根據(jù)實(shí)驗(yàn)得出的,這里閾值取為0.5。如果差別明顯說(shuō)明獲取的目標(biāo)圖像不準(zhǔn)確,由于三幀差法是對(duì)比臨近圖像可能產(chǎn)生噪點(diǎn),但不至于和真實(shí)運(yùn)動(dòng)目標(biāo)差別太大。根據(jù)算法的這一特點(diǎn)判斷可能是由于背景差法的背景模型出現(xiàn)問(wèn)題,需要重新建立背景模型,然后進(jìn)行背景差法得到新的前景目標(biāo)圖像。如果差別相對(duì)閾值不明顯,就對(duì)這兩幅前景目標(biāo)圖像進(jìn)行或運(yùn)算得到最終的前景目標(biāo)圖像。
2.5 偽代碼描述
Begin
Input…Ik-1,Ik,Ik+1…
Beginframe_Dif
SubFD1=abc(Ik-Ik-1),F(xiàn)D2=abc(Ik+1-Ik)
If(FD1>T1&FD2>T1)Then
T'=1
Else
T'=0
Morphology(T')
Endframe_Dif
BgSub:
BeginBg_Sub
UpdatebackgroundimageB
SubBD=abc(Ik-Bk)
IfBD>T2Then
T''=1
Else
T''=0
EndBg_Sub
Ifabc(T'-T'')>T3Then
gotoBgSub
or_OperationT=T'|T''
finalforegroundimageT
End
實(shí)驗(yàn)采用普通PC機(jī)(AMD四核64位1.50GHzCPU,4.00GB內(nèi)存,Win10操作系統(tǒng))為實(shí)驗(yàn)平臺(tái),使用Qt和OpenCV編程實(shí)現(xiàn)算法的檢驗(yàn)。
為了驗(yàn)證文中算法是否優(yōu)于傳統(tǒng)算法,選取了交通視頻錄像作為實(shí)驗(yàn)數(shù)據(jù)來(lái)源,為表述方便將視頻簡(jiǎn)稱為V。
圖2是從視頻中提取的原始圖像。圖3是通過(guò)三幀差法獲取的目標(biāo)圖像,很清楚地可以看到圖像提取不完整,產(chǎn)生了明顯的“空洞”現(xiàn)象。圖4是通過(guò)背景差法得到的目標(biāo)圖像,由于背景差法是將實(shí)時(shí)幀圖像和背景模型進(jìn)行差分運(yùn)算,得到的圖像比較完整。圖5是通過(guò)文中提到的改進(jìn)算法得到的前景目標(biāo)圖像,可以看出該算法得到的圖像明顯優(yōu)于另外兩種算法得到的圖像。
圖2 原視頻幀圖像V
圖3 三幀差法
圖4 背景差法
圖5 MFB算法
三種算法的檢測(cè)性能見表1。
表1 三種算法的檢測(cè)性能
從表1中可以看出,該算法相較于以往算法,明顯提高了檢出率,每次都能達(dá)到90%以上,且顯著降低了誤檢率。由上面的數(shù)據(jù)分析可以看出該算法的優(yōu)勢(shì)較為明顯。
為提高目標(biāo)檢測(cè)算法的準(zhǔn)確率、降低誤檢率,在三幀差法和背景差法基礎(chǔ)上提出一種改進(jìn)算法。
實(shí)驗(yàn)結(jié)果表明,該算法在正常情況下能夠較好地提取出運(yùn)動(dòng)目標(biāo)區(qū)域,在發(fā)生光照突變的狀況時(shí)也能通過(guò)及時(shí)更新背景模型提取出完整的運(yùn)動(dòng)目標(biāo)。對(duì)于幀差法存在的噪聲和背景差法不能地很好應(yīng)對(duì)光照等外界情況,該算法具有很強(qiáng)的適應(yīng)性和準(zhǔn)確性。
[1] 盧章平,孔德飛,李小蕾,等.背景差分與三幀差分結(jié)合的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].計(jì)算機(jī)測(cè)量與控制,2013,21(12):3315-3318.
[2] 楊 陽(yáng),唐惠明.基于視頻的行人車輛檢測(cè)與分類[J].計(jì)算機(jī)工程,2014,40(11):135-138.
[3]TsaiYM,TsaiCC,HuangKY,etal.Anintelligentvision-basedvehicledetectionandtrackingsystemforautomotiveapplications[C]//Proceedingsof2011IEEEinternationalconferenceonconsumerelectronics.Seoul,Korea:IEEE,2011:113-114.
[4] 楊葉梅.基于改進(jìn)光流法的運(yùn)動(dòng)目標(biāo)檢測(cè)[J].計(jì)算機(jī)與數(shù)字工程,2011,39(9):108-110.
[5] 潘光遠(yuǎn).光流場(chǎng)算法及其在視頻目標(biāo)檢測(cè)中的應(yīng)用研究[D].上海:上海交通大學(xué),2008.
[6]SunS,HaynorDR,KimY.Motionestimationbasedonopticalflowwithadaptivegradients[C]//IEEEinternationalconferenceonimageprocessing.[s.l.]:IEEE,2000:852-855.
[7] 胡 彪,龔曉峰.基于改進(jìn)背景差法的運(yùn)動(dòng)目標(biāo)檢測(cè)[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(17):3841-3844.
[8] 劉 亞,艾海舟,徐光佑.一種基于背景模型的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤算法[J].信息與控制,2002,31(4):315-319.
[9]ChalidabhongseTH,KimK,HarwoodD,etal.Aperturbationmethodforevaluatingbackgroundsubtractionalgorithms[C]//ProceedingofthejointIEEEinternationalworkshoponvisualsurveillanceandperformanceevaluationoftrackingandsurveillance.[s.l.]:IEEE,2003:11-12.
[10] 陳 銀,任 侃,顧國(guó)華,等.基于改進(jìn)的單高斯背景模型運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].中國(guó)激光,2014(11):239-247.
[11]StaufferC,GrimsonW.Adaptivebackgroundmixturemodelsforreal-timetracking[C]//Proceedingof1999IEEEinternationalconferenceoncomputervisionandpatternrecognition.Colorado,USA:IEEE,1999:246-252.
[12] 吳 桐,王 玲.基于幀差分塊的混合高斯背景模型[J].計(jì)算機(jī)工程與應(yīng)用,2014,50(23):176-180.
[13] 華媛蕾,劉萬(wàn)軍.改進(jìn)混合高斯模型的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].計(jì)算機(jī)應(yīng)用,2014,34(2):580-584.
[14] 萬(wàn)衛(wèi)兵,霍 宏,趙玉明.智能視頻監(jiān)控中目標(biāo)檢測(cè)與識(shí)別[M].上海:上海交通大學(xué)出版社,2009.
[15] 王慧峰,戰(zhàn)桂禮,羅曉明.基于數(shù)學(xué)形態(tài)學(xué)的邊緣檢測(cè)算法研究及應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(9):223-226.
Moving Object Detection Based on Method of Frame Difference and Background Subtraction
ZHANG Ying-hui,LIU Yang-shuo
(School of Computer Science and Engineering,Northeastern University,Shenyang 110000,China)
With the development of video surveillance,intelligent monitoring algorithm has been gradually improved.The moving target algorithm is mainly used in intelligent monitoring.In the moving target detection algorithm,the traditional algorithm is not accurate and low in the anti jamming performance.In order to improve the accuracy and efficiency of moving target detection,a moving target detection algorithm is put forward based on combination of three frame difference method and background subtraction method.It uses three frame difference method and background subtraction method to obtain the foreground target image which are merged into the final foreground image then.The experiment is carried out using the traffic video as the experimental samples,and the moving vehicles in the video are detected.According to the experimental results,the algorithm can detect the more complete vehicle contour compared with others.From the numerical analysis,it can be seen that the algorithm can effectively reduce the noise in the target image,and detect the moving target accurately and quickly,with good robustness.
video monitoring;three frames subtraction;background subtraction;moving objects detection
2016-06-03
2016-09-07
時(shí)間:2017-01-10
教育部在線教育中心項(xiàng)目(2016YB158)
張應(yīng)輝(1972-),男,副教授,碩士生導(dǎo)師,研究方向?yàn)橛?jì)算機(jī)圖像處理、機(jī)器學(xué)習(xí)。
http://www.cnki.net/kcms/detail/61.1450.TP.20170110.1028.076.html
TP31
A
1673-629X(2017)02-0025-04
10.3969/j.issn.1673-629X.2017.02.006