陳媛,蔡曉燕
(武漢科技大學(xué)城市學(xué)院機(jī)電工程學(xué)部,武漢 430083)
隨著當(dāng)今社會的快速發(fā)展,越來越多的高新技術(shù)應(yīng)運(yùn)而生,其中計(jì)算機(jī)視覺技術(shù)逐步受到人們的普遍關(guān)注,在國防科技、網(wǎng)絡(luò)安全、視頻監(jiān)控等領(lǐng)域應(yīng)用廣泛,其相關(guān)應(yīng)用領(lǐng)域的智能化程度也越來越高,節(jié)省了大量的人力和物力。智能視頻監(jiān)控系統(tǒng)是計(jì)算機(jī)視覺技術(shù)的一個重要研究熱點(diǎn),在安全防范、處理突發(fā)事件以及智能信息處理等方面具有舉足輕重的作用。而運(yùn)動目標(biāo)檢測技術(shù)是智能視頻監(jiān)控系統(tǒng)的核心技術(shù),是實(shí)現(xiàn)視頻監(jiān)控智能化的關(guān)鍵,也是計(jì)算機(jī)視覺領(lǐng)域的重要基礎(chǔ)研究之一,它為后續(xù)目標(biāo)跟蹤和行為分析等研究提供必要的基礎(chǔ),具有廣闊的應(yīng)用前景[1]。
運(yùn)動目標(biāo)檢測可看成是前景目標(biāo)和背景的劃分問題,即從一系列視頻圖像序列中將運(yùn)動目標(biāo)從背景中檢測出來。目前應(yīng)用于運(yùn)動目標(biāo)檢測的方法有很多,傳統(tǒng)的運(yùn)動目標(biāo)檢測方法有光流法、背景差法和幀間差法。光流法是依據(jù)圖像各像素點(diǎn)的速度矢量特征來檢測運(yùn)動目標(biāo)的方法[2],它對圖像場景的先驗(yàn)信息沒有要求,可適用于攝像機(jī)運(yùn)動的情況下的目標(biāo)檢測。由于要對圖像中每個像素點(diǎn)的速度矢量進(jìn)行分析,所以光流法的計(jì)算量很大,實(shí)時性不理想。
背景差法需要建立背景模型,通過待測幀圖像與背景圖像之間做差分計(jì)算來提取運(yùn)動目標(biāo)。該方法操作簡單,計(jì)算量小,但受外界光照條件、場景環(huán)境條件等因素的影響[3],需要不斷更新背景模型,否則會降低檢測的準(zhǔn)確度。幀間差法與背景差法相似,是選取相連視頻幀圖像進(jìn)行差分運(yùn)算來檢測運(yùn)動目標(biāo),相連幀的選取可以是兩幀、三幀或是多幀。該算法原理簡單,計(jì)算量也不大,實(shí)時性好,但是容易出現(xiàn)檢測出的目標(biāo)物輪廓不完整,內(nèi)部有“空洞”的現(xiàn)象[4]。
本文針對小區(qū)視頻監(jiān)控,在攝像機(jī)靜止情況下,對監(jiān)控畫面進(jìn)出小區(qū)的車輛進(jìn)行檢測研究,提出了一種基于最大模糊熵閾值化的三幀差分運(yùn)動目標(biāo)檢測方法,在目標(biāo)和背景區(qū)分的閾值選取上實(shí)現(xiàn)自適應(yīng)選取,有效提高了算法的檢測性能。
基本幀間差分算法的原理是采用連續(xù)兩幀圖像做差得到差分圖像,然后通過選取合適的閾值來提取運(yùn)動目標(biāo)。基本幀間差分算法用公式表示如下:
式(1)中Ii(x,y)、Ii-1(x,y)為連續(xù)的兩幀圖像,Di(x,y)為幀間差分圖像。選取合適的閾值T,對差分圖像Di(x,y)進(jìn)行二值化,如式(2)所示,Ri(x,y)為二值化后的結(jié)果。當(dāng)差分圖像的像素值大于或等于某閾值T,二值化結(jié)果為1,該像素位置判定為運(yùn)動目標(biāo)區(qū)域;差分圖像的像素值小于某閾值T,二值化結(jié)果為0,則該像素位置判定為背景。由于基本幀間差分算法選取的是連續(xù)兩幀圖像作差,可能會出現(xiàn)在保留兩幀圖像相對變化區(qū)域的同時而忽略掉部分重疊的區(qū)域,使得目標(biāo)輪廓不能精準(zhǔn)檢測出來,且目標(biāo)內(nèi)部會出現(xiàn)“空洞”;另外該算法檢測出的運(yùn)動目標(biāo)會比實(shí)際目標(biāo)大,會出現(xiàn)重影現(xiàn)象[5]。
三幀差分算法是根據(jù)基本的幀間差分法所做的改進(jìn),選取連續(xù)的三幀圖像進(jìn)行比較,其算法原理如下[6]。
選取視頻圖像序列中相連的三幀圖像Ii-1(x,y),Ii(x,y),Ii+1(x,y),進(jìn)行兩兩差值計(jì)算:
選擇合適的閾值T對上述差分計(jì)算后得到的差分圖像進(jìn)行二值化處理:
再將上述二值化后的差分圖像邏輯“與”:
算法流程如圖1所示。
采用三幀差分法可以在一定程度上克服兩幀差分法檢測運(yùn)動目標(biāo)出現(xiàn)的重影問題,但是仍舊無法避免檢測出的運(yùn)動目標(biāo)輪廓不完整,內(nèi)部有“空洞”問題。從算法原理可以看出,不管三幀差分法還是兩幀差分法,在對差分圖像進(jìn)行二值化處理時,所選取的閾值是固定的,并不能靈活適應(yīng)環(huán)境的變化。閾值的選取也是決定目標(biāo)檢測準(zhǔn)確性的影響因素之一,自適應(yīng)選取閾值可以進(jìn)一步的提高目標(biāo)檢測的準(zhǔn)確性。本文在閾值選取方面引入模糊集理論,通過建立差分圖像的隸屬函數(shù),依據(jù)最大模糊熵準(zhǔn)則,確定最佳分割閾值,提升運(yùn)動目標(biāo)的檢測精度。
圖1 三幀差分算法的流程圖
根據(jù)模糊集合理論,對于論域X上的模糊集合A,可以由隸屬函數(shù)μA(x)來表示,0≤μA(x)≤1,μA(x)的值反映了X中的元素x對于A的隸屬程度,即當(dāng)μA(x)=1時,x完全屬于 A;當(dāng)μA(x)=0時,x完全不屬于 A。μA(x)=1越接近于1,x屬于于A的程度就越大。
本文對視頻序列圖像采用三幀差分法得到的差分圖像進(jìn)行模糊集定義。設(shè)差分圖像X的灰度級數(shù)為L,大小為M×N,令xmn表示坐標(biāo)(m,n)處像素點(diǎn)的灰度值。將差分圖像劃分成目標(biāo)(target)模糊集和背景(backdrop)模糊集。這兩個模糊集的隸屬函數(shù)分別定義如下:
式中,[a,b]為模糊區(qū)間,[0,a]和[b,L-1]為非模糊區(qū)間。μtarget(xmn)表示(m,n)像素點(diǎn)屬于目標(biāo)的程度,μbackdrop(xmn)表示(m,n)像素點(diǎn)屬于背景的程度,且
μtarget(xmn)+μbackdrop(xmn)=1。當(dāng)xmn=(a+b)/2時,該灰度級的像素屬于目標(biāo)和背景的隸屬度均為0.5,則可選xmn=(a+b)/2為分割閾值?;叶燃壭∮?a+b)/2的像素屬于背景區(qū)域,灰度級大于(a+b)/2的像素屬于目標(biāo)區(qū)域。
根據(jù)概率統(tǒng)計(jì)的知識,目標(biāo)(target)模糊集發(fā)生的概率P(target)為:
背景(backdrop)模糊集發(fā)生的概率P(backdrop)為:
圖像的模糊熵為:
由于P(target)+P(backdrop)=1,得:
由信息論知,當(dāng)事件的熵越大時,則事件真實(shí)的可能性也越大。若圖像的熵取最大值,則目標(biāo)和背景的區(qū)分程度最佳。根據(jù)最大模糊熵原則,可得到最佳的模糊參數(shù)aopt和bopt,并進(jìn)一步得到最佳分割閾值(aopt+bopt)/2。
改進(jìn)后的三幀差分法采用最大模糊熵閾值,用差分后的圖像像素值與最大模糊熵閾值進(jìn)行比較,來判定運(yùn)動目標(biāo)和背景。算法流程圖如圖2。
圖2 改進(jìn)三幀差分算法的流程圖
本文的仿真實(shí)驗(yàn)是在Intel Core i5-5200 CPU,2.20 GHz,內(nèi)存為 12GB,Microsoft Windows 7操作系統(tǒng)的PC上通過OpenCV軟件完成。選取進(jìn)出某小區(qū)的車輛行駛視頻,視頻幀尺寸大小為352×240,共150幀,連續(xù)選取三幀圖像,如圖3所示。采用傳統(tǒng)三幀差分算法和本文改進(jìn)的三幀差分算法所得的實(shí)驗(yàn)仿真結(jié)果如圖4所示。
圖3 連續(xù)選取的三幀圖像
圖4實(shí)驗(yàn)仿真結(jié)果
圖4 (a)是采用固定閾值的傳統(tǒng)三幀差分算法的二值化圖像,圖4(b)是采用最大模糊熵閾值的改進(jìn)三幀差分算法的二值化圖像。由圖可知,采用固定閾值的三幀差分算法雖然能檢測出運(yùn)動目標(biāo),但是目標(biāo)物的輪廓不完整,而且圖像噪聲明顯。而本文所采用的基于最大模糊熵閾值的改進(jìn)三幀差分法對于檢測出的目標(biāo)輪廓連續(xù)性得到改善,一定程度上消除了目標(biāo)物內(nèi)部“空洞”問題,圖像噪聲有所抑制,有效提高了檢測的準(zhǔn)確性,滿足實(shí)時性要求。
本文通過引入模糊集概念,在傳統(tǒng)的三幀差分算法的閾值選取上采用最大模糊熵閾值對差分圖像進(jìn)行二值化處理,可以避免固定閾值不能靈活適應(yīng)環(huán)境變化的缺點(diǎn),彌補(bǔ)了傳統(tǒng)三幀差分法檢測運(yùn)動目標(biāo)出現(xiàn)內(nèi)部“空洞”,輪廓不連續(xù)等不足,提高了算法的檢測性能。