宋 柱,趙 佳,劉新雨 Song Zhu,Zhao Jia,Liu Xinyu
?
基于小波變換的線陣CCD車輛檢測(cè)算法
宋 柱,趙 佳,劉新雨 Song Zhu,Zhao Jia,Liu Xinyu
(長(zhǎng)安大學(xué) 汽車學(xué)院,陜西 西安 710064)
傳統(tǒng)的車輛視頻檢測(cè)算法都是基于帶有復(fù)雜背景的面陣CCD圖像,不利于對(duì)象分割和特征提取。線陣CCD圖像的背景比較單一,且?guī)蔬h(yuǎn)高于面陣CCD,可以實(shí)現(xiàn)高精度的車輛檢測(cè)。提出基于小波變換的線陣CCD圖像的車輛檢測(cè)算法。試驗(yàn)結(jié)果證明該算法能有效降低光照和汽車陰影等因素造成的誤檢率。
線陣CCD;小波變換;車輛檢測(cè);分割;二值化
精確地從視頻流中提取出運(yùn)動(dòng)目標(biāo)一直是計(jì)算機(jī)視覺領(lǐng)域中的研究熱點(diǎn),同時(shí)也是現(xiàn)代智能汽車技術(shù)的一個(gè)重要組成部分。目前,常用的運(yùn)動(dòng)目標(biāo)檢測(cè)方法有光流法、幀差法、邊緣檢測(cè)法和背景差分法。
光流法[1]對(duì)聲音特別敏感,并且計(jì)算公式很復(fù)雜,計(jì)算量非常大,如果沒有特殊的硬件支持,很難應(yīng)用在實(shí)時(shí)系統(tǒng)中。幀差法[2]將兩個(gè)相鄰幀相減,提取保留的車輛信息,環(huán)境以及光照變化對(duì)幀差法的影響不大,但是當(dāng)相機(jī)抖動(dòng)時(shí),兩個(gè)相鄰幀的背景點(diǎn)會(huì)引起對(duì)應(yīng)的“抖動(dòng)”,此時(shí)這種方法因不能正確過(guò)濾掉背景而會(huì)導(dǎo)致誤判,同時(shí)該方法也不能檢測(cè)靜止的或者速度很低的車輛。邊緣檢測(cè)方法可以在不同光線條件下檢測(cè)出車輛的邊緣,并使用邊緣信息檢測(cè)出靜止或者運(yùn)動(dòng)的車輛,但是在車輛邊緣不明顯或存在道路障礙時(shí)可能會(huì)錯(cuò)誤地識(shí)別車輛。背景差分法是最簡(jiǎn)單和最常用的一種方法,該方法適用于靜止的相機(jī),并且能完整地分割出運(yùn)動(dòng)目標(biāo),但是容易受天氣、光照等影響。
傳統(tǒng)視頻檢測(cè)方法是基于陣列圖像,而陣列圖像中的復(fù)雜背景圖像對(duì)目標(biāo)分割和特征提取非常不利。而線陣CCD(Charge Coupled Device,電荷耦合器件)的背景圖像相對(duì)簡(jiǎn)單,易于后續(xù)目標(biāo)分割和特征提取。同時(shí),線陣CCD的圖像幀率遠(yuǎn)高于陣列CCD圖像,從而能實(shí)現(xiàn)高精度檢測(cè)。提出一種基于小波變換的線陣CCD車輛檢測(cè)算法。該算法可以有效地抑制光線和陰影的干擾,實(shí)現(xiàn)實(shí)時(shí)、準(zhǔn)確的車輛分割以及車輛檢測(cè)。
目前,國(guó)內(nèi)外許多研究人員致力于研究背景模型,例如基于統(tǒng)計(jì)模型的方法有單高斯模型,高斯混合模型(Mixture of Gauss,MOG),非參數(shù)模型等;或基于預(yù)測(cè)方法,如卡爾曼濾波器(Kalman Filter,KF)方法[3],維納濾波器方法等;還有一些其他的方法,如接近中值濾波器方法和貝葉斯估計(jì)方法等。
1.1 小波分解的特點(diǎn)
小波變換建立在傅里葉變換的基礎(chǔ)上,利用傅里葉變換,可以知道信號(hào)的頻率信息,但是不能知道頻率信息的具體時(shí)間。為了提取即時(shí)的頻域特征信息,Gabor提出窗口傅里葉變換[4]。然而,窗口函數(shù)不是靜態(tài)的,不隨時(shí)間和頻率變化,因此對(duì)瞬態(tài)信號(hào)的分析還是受到很多限制。小波變換克服了窗口傅里葉變換中窗口大小不隨頻率改變以及正交基的缺乏等缺陷。由于小波變換具有很好的時(shí)頻局部特性因而廣泛應(yīng)用于信號(hào)處理。
法國(guó)學(xué)者馬特勒使用多分辨率分析的框架,并提出離散小波變換的快速算法,即馬特勒算法。令原始信號(hào)為0,該算法可以描述為:
(2)
式中,0()和1()分別為分解低通和高通濾波器,C+1, k為第1個(gè)低頻信號(hào)圖像的系數(shù);d+1, k為第1個(gè)高頻詳細(xì)信號(hào)的系數(shù)。
首先選擇沒有車輛目標(biāo)的圖像數(shù)據(jù)為初始背景。在馬特勒塔式算法下進(jìn)行背景數(shù)據(jù)的3個(gè)小波分解,如圖1所示,對(duì)前景數(shù)據(jù)也做相同的處理;計(jì)算出前景和背景的交叉相關(guān)系數(shù),如果相關(guān)系數(shù)小于閾值,前景數(shù)據(jù)將被保留作為新的背景數(shù)據(jù);如果大于閾值,則丟棄前景數(shù)據(jù)。
圖1中,W(,)是前景圖像或者背景圖像的初始圖像信息值,經(jīng)過(guò)一次小波分解后圖像信息被分解為包含低頻信息的h(-)和包含高頻信息的h(-)兩部分;對(duì)得到的高頻信息h(-)再進(jìn)行一次小波變換,重復(fù)小波變換將第一步小波分解后得到的高頻信息圖像分為包含低頻信息和高頻信息的兩個(gè)部分。
1.2 小波變換的背景提取方法
假定對(duì)每行背景數(shù)據(jù)更新一次,且每行有個(gè)像素。將這行數(shù)據(jù)的灰度等級(jí)數(shù)據(jù)放入一個(gè)二維數(shù)組(,)中,其中(0≤≤-1)是閾值計(jì)數(shù),(0≤≤-1)是當(dāng)前行的第1個(gè)像素?;谛〔ㄗ儞Q的背景提取算法如下。
1)獲得初始背景
(1)令=0;
(2)對(duì)二維數(shù)組(,)中的首個(gè)列的灰度值進(jìn)行小波變換后取其中的高頻部分()(0≤≤-1);計(jì)算可知,所有指向高頻部分的絕對(duì)值的統(tǒng)計(jì)點(diǎn)都小于閾值1;
(3)如果統(tǒng)計(jì)點(diǎn)小于閾值2,則認(rèn)為前面幀的點(diǎn)過(guò)多,不利于提取背景,則對(duì)下一幀重復(fù)步驟(1),否則繼續(xù)步驟(4);
(4)計(jì)算該列所有帶統(tǒng)計(jì)值的點(diǎn)的灰度值的中值0(),將它作為該列的初始背景灰度值;
(5)=+1,如果=則停止計(jì)數(shù),否則,轉(zhuǎn)到步驟(2)。
2)背景更新
使用當(dāng)前幀的數(shù)據(jù)估計(jì)前一幀的背景以此更新背景。
(1)令=0;
(2)令=0,=0;
否則,使用式(4)計(jì)算點(diǎn)的新背景
(4)
其中,3為閾值,和為濾波因子。通常,更新速度取決于因子和,如果大,則背景更新速度慢;如果大,則背景更新速度快。
(4)令=+1,如果=,轉(zhuǎn)到步驟(5),否則,轉(zhuǎn)到步驟(3);
(5)計(jì)算該列的所有點(diǎn)的新背景(,)的中值B+1(),并且將它作為該列的新背景值;
(6)令=+1,如果=,轉(zhuǎn)到步驟(7),否則,令=0,并轉(zhuǎn)到步驟(3);
(7)如果算法收到終止更新背景的指令,則停止計(jì)數(shù),否則,令=+1,并轉(zhuǎn)到步驟(2)。
至此,使用小波變換完成對(duì)采集的線陣CCD背景圖像的提取。
2.1 二值化
通過(guò)以上步驟獲得CCD背景圖像,然后用獲得的圖像減去背景圖像,可得到目標(biāo)。對(duì)于不同的圖像選擇不同的閾值進(jìn)行二值化處理。
提出一種基于小波的紋理提取算法。使用3次小波分解,獲得背景灰度像素曲線的詳細(xì)系數(shù)曲線。然后標(biāo)記局部極大值點(diǎn)為1,最小值點(diǎn)為?1,其他值點(diǎn)為0;此時(shí),背景的像素曲線確定的數(shù)據(jù)集變?yōu)橐粋€(gè)形如{?1,0,1,…}的集合,該集合是對(duì)背景圖像紋理[5]的描述。對(duì)前景圖像也進(jìn)行相同的處理,最后用前景紋理減去背景紋理,使用數(shù)學(xué)形態(tài)濾波器獲得目標(biāo)的二值化圖像。
2.2 車輛分割
車輛實(shí)時(shí)分割是對(duì)圖像的每一行二值化后的結(jié)果。根據(jù)關(guān)閉的相機(jī)視圖可將線陣CCD視圖分為5個(gè)邏輯通道(對(duì)應(yīng)監(jiān)控的3個(gè)物理通道),每個(gè)邏輯通道上包含許多信息,包括預(yù)觸發(fā)標(biāo)志、確認(rèn)觸發(fā)標(biāo)志、空白行計(jì)數(shù)器、客觀存在計(jì)數(shù)器、目標(biāo)左邊界、目標(biāo)右邊界、開始行目標(biāo)的數(shù)目、終止行目標(biāo)的數(shù)目、預(yù)觸發(fā)點(diǎn)的中心位置、目標(biāo)級(jí)投影計(jì)數(shù)器以及觸發(fā)器的精確行數(shù)等[6]。使用當(dāng)前的二進(jìn)制結(jié)果標(biāo)記水平的連接區(qū)域,并且判斷連接的區(qū)域所屬的邏輯通道。然后把它與邏輯車道信息比較,并且綜合判斷它是一輛汽車的開始還是一輛汽車的延續(xù)。當(dāng)已經(jīng)證實(shí)車輛在邏輯通道上,并且其中連續(xù)的空白行數(shù)超過(guò)該通道的閾值,即認(rèn)為達(dá)到車輛的末端。使用目標(biāo)的左邊界和右邊界,初始行和終止行就可以確定目標(biāo)的范圍,也就實(shí)現(xiàn)了實(shí)時(shí)的車輛分割。
為測(cè)試和驗(yàn)證算法的正確性和有效性,在長(zhǎng)安大學(xué)校園內(nèi)進(jìn)行試驗(yàn)。線陣相機(jī)成像系統(tǒng)放置于道路上,道路長(zhǎng)度限制為11.25米?;诰€陣CCD相機(jī)的交通信息采集系統(tǒng)用來(lái)采集線性陣列圖像,如圖2(a)所示。因?yàn)橐归g燈光的影響,車輛前方夾雜著斑點(diǎn);由于交通信息采集系統(tǒng)燈光的影響,車輛側(cè)邊出現(xiàn)陰影。使用統(tǒng)計(jì)方法提取前景后再減去背景得到的受影響的二值化圖像,如圖2(b)所示。由于陰影的不同,所以它們是錯(cuò)誤的目標(biāo)。使用基于小波分解的算法得到的圖像,如圖2(c)所示,可知該算法可以很好地分離目標(biāo)和陰影。使用提出的算法得到的車輛分割結(jié)果,如圖2(d)所示。結(jié)果表明該算法能減弱燈光和陰影的影響,取得更好的分割效果。
(a)???????????(b)???????????(c)???????????(d)
圖2 試驗(yàn)結(jié)果
小波變換算法對(duì)每行數(shù)據(jù)的平均處理時(shí)間不超過(guò)1 s,而線陣CCD相機(jī)采集數(shù)據(jù)速率為每秒 1 000行;因此該算法能確保實(shí)時(shí)數(shù)據(jù)處理,也為車輛匹配、速度計(jì)算以及車牌捕獲等提供良好的基礎(chǔ)。
試驗(yàn)表明,基于小波變換的CCD線陣相機(jī)車輛檢測(cè)算法很好地控制陰影以及燈光對(duì)車輛檢測(cè)的影響,能很好地分離出車輛目標(biāo),并且對(duì)每行數(shù)據(jù)的平均處理時(shí)間不超過(guò)1 s,確保實(shí)時(shí)的數(shù)據(jù)處理效率,為車輛智能化以及無(wú)人駕駛打下良好的基礎(chǔ)。
[1]朱會(huì)強(qiáng).基于視頻跟蹤的車輛行為分析技術(shù)研究[D]. 西安:長(zhǎng)安大學(xué),2011.
[2]Xiao M., Han C., Zhang L.. Background Subtraction for Video Image Sequence[J]. Opto-Electronic Engineering, 2005 (32): 78.
[3]Lee D.S., Hull J.J., Erol B.. A Bayesian Framework for Gaussian Mixture Background Modeling[C] //International Conference on Image Processing, 2003, 3:Ⅲ-973-6 vol.2.
[4]Javed O., Shafique K., Shah M.. A Hierarchical Approach to Robust Background Subtraction Using Color and Gradient Information [C]// Workshop on Motion and Video Computing, 2002: 22-27.
[5]張祺. 基于線陣CCD的圖像采集技術(shù)研究[D]. 南京:南京理工大學(xué),2009.
[6]張旭.高速線陣CCD數(shù)據(jù)采集、傳輸與處理技術(shù)的研究[D]. 長(zhǎng)春:長(zhǎng)春理工大學(xué),2008.
2016-09-26
1002-4581(2017)02-0035-04
U491.1+16
A
10.14175/j.issn.1002-4581.2017.02.009