丁文龍,尹 朵,邱 崧
(華東師范大學 通信與電子工程學院,上海 200241)
實時檢測系統(tǒng)的特點,要求運動目標檢測技術(shù)能正確、快速和完整地檢測到運動目標,以便于后續(xù)操作。常用的運動目標檢測算法有:幀間差分法、背景減除法、光流法,以及基于機器學習的模型匹配法。不同的檢測算法各有其優(yōu)缺點:幀間差分法計算量較小,可以很好地實現(xiàn)實時系統(tǒng),但該算法容易出現(xiàn)空洞、拖影等問題;雖然背景減除法結(jié)構(gòu)比較簡單,但容易受到環(huán)境光線變換的影響;光流法可以在未知的場景下檢測出運動目標,檢測準確率較高,但是計算量較大,不能滿足實時性要求;基于機器學習的模型匹配法可以很好地識別到物體、準確率高,但識別前需要先訓練模型,而且結(jié)構(gòu)較復雜,需要很強的處理器去運算。針對以上方法的缺點,也出現(xiàn)了很多的改進算法。Jun等提出混合高斯模型和幀間差分法,用來檢測運動目標;Liu等提出了結(jié)合幀間差分法和光流法的目標檢測算法;Liang等針對幀間差分法和背景減除法,對提取目標不完整易產(chǎn)生空洞問題,提出自適應雙閥值的運動目標檢測算法;Lu等提出將混合高斯模型和背景減除法相結(jié)合的運動目標檢測算法;Cho等提出了混合高斯模型與光流估計相結(jié)合的運動目標檢測算法。
綜上所述,雖然這些算法在一定程度上完善了運動目標檢測,但在高速運動物體檢測中,隨著攝像頭幀率提高、運動物體在幀間運動距離有重疊的情況下,上述方法檢測到的運動目標識別率較低,仍有運動物體檢測不全的狀況。為此,本文提出了改進型三幀差分法的運動目標識別算法。
幀間差分法是一種通過對視頻序列中相鄰兩幀圖像之間做差分運算,得到運動目標差分圖像的方法。當運動物體進入攝像視野后,運動物體在幀與幀之間的位置信息差別較大,通過相鄰幀圖像之間相減后,進行絕對值操作得到差分圖像。通過對差分圖像進行閾值分割,提取得到運動物體的二值化圖像。三幀差分法是在兩幀差分的基礎上改進而來,將相鄰的三幀圖像進行相鄰幀兩兩差分后,通過邏輯運算得到最后的二值化圖像。由于運動物體在相鄰幀間圖像運動存在快慢的區(qū)別,當運動物體相鄰幀之間沒有重疊時,不會出現(xiàn)“空洞”現(xiàn)象;但是當運動物體在相鄰幀間有部分重疊時,重疊部分在差分后會表現(xiàn)出“空洞”現(xiàn)象。為了解決三幀差分法中的“空洞”現(xiàn)象,本文提出的改進方案原理如下:
獲得攝像頭序列連續(xù)的三幀圖像f(,)、f(,)、f(,),這些圖像均由R、G、B三通道組成,對應的數(shù)學關(guān)系如下:
其中,(x,y)表示圖像(,)第行、第列的像素,(x,y)包含R、G、B 3個通道的值:(x,y)、(x,y)、(x,y),該值分別是第行、第列的R通道、G通道和B通道的像素值。
對相鄰三幀的原始圖像f(,)、f(,)、f(,)進行灰度化處理,得到灰度圖像:L(,)、L(,)、L(,),灰度處理的數(shù)學公式為:
其中,(x,y)、(x,y)、(x,y)分別是原始圖像(,)的R通道、G通道、B通道;每個通道前有一定的權(quán)重,將三維原始圖像(,)合并成一維的灰度圖像(,)。
計算相鄰兩幀的灰度圖像(,)之間的差分圖像(,),得到兩幅差分圖:(,)、(,),其轉(zhuǎn)換公式如下:
對兩幅差分圖像(,)和(,)分別進行閾值分割,其數(shù)學表達式如下:
通過上述表達式,將得到的兩幅圖像進行閾值分割處理得到(,)和(,)的二值化圖像;對二值化圖像(,)進行形態(tài)學膨脹處理,得到F(,),其原理表達如下:
其中,()是形態(tài)學的膨脹操作。
將膨脹后的差分二值化圖像(,)和(,)進行邏輯“與”,得到膨脹處理后的目標二值化圖像F(,):
之后,對F(,)進行腐蝕操作得到F(,),其原理表達如下:
其中,()是形態(tài)學的腐蝕操作。通過該操作得到最終的F(,)目標二值化圖像。
本文提出的改進算法是根據(jù)出現(xiàn)的“空洞”現(xiàn)象,在未進行差分圖像二值化“與”操作之前,采用形態(tài)學的膨脹操作,將圖像中出現(xiàn)的“空洞”地方進行填充;進行“與”操作之后,再通過形態(tài)學的腐蝕操作,將運動目標區(qū)域面積變?yōu)樵瓉淼拇笮?,最終得到準確的運動目標區(qū)域。
對于本文提出的算法,利用高速運動的乒乓球,來驗證算法在處理實際場景中的情況。在乒乓球高速運動的真實情況下截取連續(xù)三幀圖像,如圖1所示。圖像采集設備選用USB工業(yè)攝像頭,幀率為120 fps,圖像尺寸是640?480,圖像格式為JPEG格式。
針對連續(xù)三幀的真實場景圖像,經(jīng)過相同的預處理操作后,得到灰度圖像。分別使用傳統(tǒng)的三幀差分法和本文提出的算法進行處理,處理的結(jié)果如圖1所示,兩種算法對比結(jié)果如圖2所示。
由圖2(a)中可以看到,運動的乒乓球形狀前后都丟失了一部分,這就是由于差分圖像時出現(xiàn)的“空洞”現(xiàn)象;圖2(b)是原始圖像鎖定的乒乓球位置圖像;圖2(c)是采用本文提出的算法得到的結(jié)果圖像,相比較傳統(tǒng)的三幀差分法得到的結(jié)果圖,白色部分的運動乒乓球輪廓比較圓滑,球型大小和真實大小基本相同,表明本文算法可以很好的消除圖像在差分時出現(xiàn)的“空洞”現(xiàn)象,提高了運動目標檢測的準確性。
圖1 連續(xù)三幀的原始圖像Fig.1 Original image of three consecutive frames
圖2 結(jié)果對比Fig.2 Result comparison chart
本文根據(jù)傳統(tǒng)的三幀差分法容易出現(xiàn)“空洞”現(xiàn)象的缺點,提出了一種改進的三真差分法的運動目標檢測算法。實驗結(jié)果表明文本提出的方法可以很好的消去“空洞”現(xiàn)象,對運動目標檢測更加準確和完整,整體的計算比較簡單,可以實現(xiàn)實時性處理,這為后面的實時識別系統(tǒng)打下了良好的基礎。