張 宇 李林鑫 楊廣河 趙海濤
(南京郵電大學(xué)通達(dá)學(xué)院,江蘇 揚(yáng)州 225127)
智能交通系統(tǒng)(Intelligent Transportation System,ITS)是當(dāng)前智能交通研究的主要方向之一。其中,特征匹配定位法是一種有效的車速檢測方法[1],但是在實(shí)際應(yīng)用過程中,可能會出現(xiàn)實(shí)時性和魯棒性不足的情況。為了提高系統(tǒng)的性能和效率,可以采取以下優(yōu)化方案:1) 特征選擇優(yōu)化。選擇與目標(biāo)區(qū)分度較高的特征,避免特征冗余和噪聲對匹配效果造成影響。2) 匹配算法優(yōu)化。采用快速匹配算法,例如FLANN 算法、K-D tree 算法等,加速匹配過程,縮短計算時間。3) 多目標(biāo)檢測優(yōu)化。采用多目標(biāo)跟蹤算法,例如Kalman 濾波器,實(shí)現(xiàn)目標(biāo)跟蹤和匹配過程。4) 硬件加速優(yōu)化。采用GPU 并行計算、FPGA 硬件加速等技術(shù)提高系統(tǒng)的實(shí)時性和魯棒性。
因此,為了改進(jìn)目標(biāo)檢測,該文提出一種改進(jìn)的Harris角點(diǎn)特征匹配運(yùn)動目標(biāo)測速方法。車牌識別的設(shè)計運(yùn)用圖像處理技術(shù),自動分割車牌字符并識別。
車牌識別的首要步驟是獲取圖像或視頻,可以通過攝像機(jī)或其他傳感器采集圖像或視頻。首先,在獲取圖像或視頻后需要進(jìn)行圖像預(yù)處理,以提高車牌識別的準(zhǔn)確性。預(yù)處理包括圖像灰度化、二值化、濾波和增強(qiáng)等步驟。在灰度化步驟中,圖像被轉(zhuǎn)換為黑白圖像,這有助于車牌的分割和字符識別。在二值化步驟中,圖像被轉(zhuǎn)換為二進(jìn)制格式,增強(qiáng)了圖像的對比度和銳度。濾波和增強(qiáng)的目的是進(jìn)行模糊、噪聲濾波和紅外增強(qiáng)等操作,使車牌更容易被分離、識別。其次,車牌識別會對車牌區(qū)域進(jìn)行分割。分割的關(guān)鍵是確定車牌的邊界。常見的方法是利用基于邊緣檢測的算法,例如Canny算法[2],以檢測圖像中的邊緣。車牌的邊緣被提取,形成一個矩形的圖像,該矩形圖像被進(jìn)一步處理,以確定準(zhǔn)確的車牌區(qū)域。在確定車牌區(qū)域后,車牌圖像就被剪切出來了。在這個過程中,圖像被進(jìn)一步分析,以確定字符串的位置、形狀和方向。最后,進(jìn)行字符識別。字符識別是車牌識別的核心部分,它使用幾種不同的算法,包括模板匹配,支持向量機(jī)和深度學(xué)習(xí)。在字符識別階段,車牌圖像中的字符被逐個提取,識別字符類型并將其轉(zhuǎn)換為文本格式。
車牌定位識別有基于邊緣檢測和基于車牌顏色特征2種方法。雖然該方法速度快且獲取的車輛信息多,但是對環(huán)境和車輛位置的要求高,且存在光照變化和遮擋等問題,會影響識別的準(zhǔn)確性。需要通過優(yōu)化大量數(shù)據(jù)解決像素級別誤差,從而提高準(zhǔn)確性??梢越Y(jié)合基于邊緣檢測和基于車牌顏色特征的方法來提高車牌定位識別的準(zhǔn)確率:1) 對圖像進(jìn)行灰度化處理,減少噪聲對車牌定位的影響。提高灰度化效果,該試驗(yàn)的效果如圖1 所示。2) 采用Canny或Sobel 算法進(jìn)行邊緣檢測[2],提取邊緣信息。3) 利用霍夫變換對邊緣進(jìn)行直線檢測,排除非車牌區(qū)域的直線。4)采用形態(tài)學(xué)操作進(jìn)行腐蝕和膨脹,細(xì)化車牌定位區(qū)域。5)對車牌定位區(qū)域進(jìn)行顏色分離,提取車牌的顏色特征[3]。6) 對顏色分離后的區(qū)域進(jìn)行形態(tài)學(xué)操作,分離和識別車牌字符,獲取車牌號碼。7) 對車牌號碼進(jìn)行進(jìn)一步處理,例如字符識別和去除干擾。該試驗(yàn)的效果如圖2 所示。
圖1 灰度圖
圖2 分割匹配圖
綜合使用邊緣檢測和車牌顏色特征的方法可以提高車牌定位識別的準(zhǔn)確率和效率。
特征匹配車速檢測方法[4]是一種利用圖像處理技術(shù)來實(shí)現(xiàn)車速測量的方法。在這個方法中,需要先對視頻圖像中的運(yùn)動目標(biāo)進(jìn)行特征提取,然后通過特征匹配來對同一車輛在不同幀之間進(jìn)行跟蹤,最終計算車速。
在特征提取的過程中,選擇合適的車輛特征是非常重要的。常用的車輛特征包括邊緣輪廓特征、顏色特征、紋理特征和角點(diǎn)特征等。
根據(jù)具體應(yīng)用場景的需求,可以選擇不同的特征提取算法和特征。在特征提取算法方面,常用的算法包括尺度不變特征變換(SIFT)、加速穩(wěn)健特征(SURF)以及Harris 角點(diǎn)檢測算法等。這些算法都能夠有效地提取車輛在圖像中的特征并且具有不變性和魯棒性,能夠在不同的光照、旋轉(zhuǎn)以及縮放等情況下保證檢測的準(zhǔn)確性。
總之,特征匹配車速檢測方法通過圖像處理技術(shù)提取車輛特征,對車輛進(jìn)行檢測和跟蹤,并能夠根據(jù)實(shí)際道路坐標(biāo)計算車速。在實(shí)際應(yīng)用中,由于角點(diǎn)特征具有穩(wěn)定性高、數(shù)量少以及信息冗余度小等優(yōu)點(diǎn),因此常使用基于角點(diǎn)特征進(jìn)行車輛匹配。常用的角點(diǎn)特征提取算法包括Harris 角點(diǎn)、FAST 角點(diǎn)以及SIFT 特征等。其中,Harris 角點(diǎn)檢測算法具有計算簡單、檢測均勻分布等優(yōu)點(diǎn),被廣泛應(yīng)用于車輛識別系統(tǒng)中。除了角點(diǎn)特征外,也可以根據(jù)車輛的特征使用顏色或紋理特征進(jìn)行匹配。
因此,當(dāng)設(shè)計車輛識別系統(tǒng)時,需要針對具體應(yīng)用場景進(jìn)行特征選擇和算法優(yōu)化,選擇合適的特征提取算法和特征,從而達(dá)到更高的匹配精度和實(shí)時性。在特征匹配過程中,一般采用灰度相關(guān)性來匹配Harris 角點(diǎn)[4]。特征匹配車速檢測方法具有檢測范圍廣的優(yōu)點(diǎn),通過車輛特征匹配可以有效避免或減少多目標(biāo)車速檢測的誤檢和漏檢并且不受環(huán)境影響,魯棒性較強(qiáng)。
2.1.1 Harris 角點(diǎn)檢測
Harris 角點(diǎn)檢測是一種廣泛應(yīng)用于計算機(jī)視覺領(lǐng)域的角點(diǎn)檢測算法[5],該算法對圖像的局部特征進(jìn)行分析,從而快速、準(zhǔn)確地檢測圖像中的角點(diǎn)。與其他角點(diǎn)檢測算法相比,Harris 角點(diǎn)檢測具有計算復(fù)雜度低、魯棒性強(qiáng)等優(yōu)點(diǎn),因此被廣泛應(yīng)用于計算機(jī)視覺領(lǐng)域中的目標(biāo)檢測、圖像匹配等問題。該算法基于圖像的局部區(qū)域的灰度變化率,即圖像中的角點(diǎn)在不同方向上都有較大的灰度變化,而在其他區(qū)域的灰度變化則相對較小,因此可以通過計算圖像中所有局部區(qū)域的灰度變化率,從而得到圖像中可能存在角點(diǎn)的位置。
Harris 角點(diǎn)檢測的思想是對圖像的局部小窗口進(jìn)行觀察來檢測角點(diǎn)。具體來說,利用窗口內(nèi)的像素點(diǎn)信息,計算在窗口沿任意方向移動(u,v)所造成的像素灰度的變化,確定角點(diǎn)的位置。該計算過程如公式(1)所示。
式中:E(u,v)為所求角點(diǎn)位置;(u,v)為像素分別沿x、y所移動距離;w(x,y)為窗口函數(shù);I(x+u,y+v)為平移后的灰度圖像值;I(x,y)為灰度圖像值。
對公式(1)進(jìn)行泰勒展開,可以得到公式(2)。
式中:M為Harris 矩陣。
由圖像的導(dǎo)數(shù)化簡求得公式(3)。
式中:Ix為灰度圖像在x軸的位置;Iy為灰度圖像在y軸的位置。
角點(diǎn)響應(yīng)函數(shù)R如公式(4)所示。
式中:det(M)為矩陣M的行列式;trace(M)為矩陣M的跡;k為修正值,是一個常數(shù),k取0.04~0.06。
其 中,det(M)=λ1λ2,trace(M)=λ1+λ2(λ1、λ2為 矩陣M的特征值。
Harris 角點(diǎn)與矩陣M的特征值的關(guān)系如下:1) 如果λ1、λ2都很小,那么表示以(x0,y0)為中心的窗口區(qū)域無明顯灰度變化,沿著任意方向移動中心點(diǎn),局部互相關(guān)函數(shù)變化很小,即點(diǎn)(x0,y0)是平坦區(qū)域中的像素點(diǎn)。2) 如果λ1很大,而λ很小,那么表示中心點(diǎn)附近灰度梯度的變化形態(tài)為山脊?fàn)?,在某一方向呈現(xiàn)為邊緣特征。當(dāng)中心點(diǎn)沿著邊緣方向移動時,局部互相關(guān)函數(shù)變化很??;當(dāng)沿垂直于邊緣的方向移動中心點(diǎn)時,局部互相關(guān)函數(shù)有較大變化,即點(diǎn)(x0,y0)為邊緣上的點(diǎn)。3) 如果λ1、λ2都很大,那么表明中心點(diǎn)附近的灰度梯度變化非常陡峭,因此在任意方向上移動中心點(diǎn)都會導(dǎo)致局部互相關(guān)函數(shù)急劇增加,即點(diǎn)(x0,y0)具有角點(diǎn)特征。
2.1.2 改進(jìn)型 Harris 角點(diǎn)匹配及結(jié)果
Harris 角點(diǎn)檢測利用圖像像素的梯度變化檢測角點(diǎn),尤其是在圖像中的角點(diǎn)區(qū)域的灰度值和梯度變化非常大。原始的角點(diǎn)檢測方法中默認(rèn)是從整個圖像開始檢索,搜索坐標(biāo)(x,y)∈I(I為像素灰度值),對整個圖像進(jìn)行搜索,這會導(dǎo)致存在大量的無效計算,不能滿足車輛測速系統(tǒng)的實(shí)時性要求并且也容易受相似運(yùn)動目標(biāo)的干擾[1],從而出現(xiàn)誤匹配的情況。為了解決以上問題,該文提出結(jié)合運(yùn)動估計來進(jìn)行Harris 角點(diǎn)匹配??梢韵冗M(jìn)行運(yùn)動估計,再從估計出來的運(yùn)動軌跡中提取目標(biāo)的運(yùn)動信息,從而排除非目標(biāo)區(qū)域的像素點(diǎn),減少計算量并且能夠提高匹配的準(zhǔn)確性。此外,當(dāng)進(jìn)行角點(diǎn)匹配時,還可以采用自適應(yīng)閾值的方式來確定角點(diǎn),以進(jìn)一步提高匹配的準(zhǔn)確性和魯棒性。
為了優(yōu)化計算過程,對公式(1)進(jìn)行簡化,利用圖像的梯度信息。具體來說,可以利用Sobel 算子計算圖像在(x,y)處的梯度向量(Gx,Gy),然后利用這個梯度向量來計算E(u,v),如公式(5)所示。式中:(u,v)為圖像移動的距離;w(x,y)為窗口函數(shù);(Gx,Gy)為梯度向量;(x,y)為圖像所在位置。
公式(5)的計算效率更高,其原因是它只需要計算梯度向量和加權(quán)系數(shù)的平方和,不需要直接計算像素值的差異。利用公式(5)可以快速地檢測圖像中的角點(diǎn),并進(jìn)行角點(diǎn)特征的提取和匹配。
改進(jìn)的Harris 角點(diǎn)檢測算法對待處理像素周圍的像素進(jìn)行加權(quán)求和,得到一個初始的運(yùn)算結(jié)果,并在該基礎(chǔ)上進(jìn)行后續(xù)計算[6]。該加權(quán)求和的方式可以采用卷積的方式來實(shí)現(xiàn),從而減少計算量,提高算法的效率。在該基礎(chǔ)上,再從運(yùn)算結(jié)果中篩選1 個閾值,將低于設(shè)定閾值的像素點(diǎn)排除掉,從而得到需要進(jìn)行CRF 值計算的像素點(diǎn)。這一步的計算量雖然有所增加,但是會減少后續(xù)CRF 值計算中的計算量。在分辨率高的圖像中其計算效率更明顯。
改進(jìn)的Harris 算法的優(yōu)化可以從以下4 個方面入手:1)使用滑動窗口的方式對像素點(diǎn)進(jìn)行初始選擇,利用卷積的方式進(jìn)行加權(quán)求和,以減少計算量。2) 對運(yùn)算結(jié)果進(jìn)行閾值篩選,排除低于設(shè)定閾值的像素點(diǎn),減少后續(xù)CRF 值計算的計算量。3) 使用ROI 技術(shù)計算需要處理的像素點(diǎn)的范圍,避免進(jìn)行無效計算,以減少計算量。4) 使用并行計算技術(shù)提高計算速度。
該文對采集的圖像進(jìn)行預(yù)處理,并通過剔除占比超過60%的像素點(diǎn)來降低乘法計算的量。為了比較傳統(tǒng)Harris 算法[7]與改進(jìn)后的Harris 算法在角點(diǎn)提取方面的性能,該文測試了1 組包括6 幅圖像的數(shù)據(jù)集。改進(jìn)前、后在計算CRF和確認(rèn)角點(diǎn)這一核心部分所耗費(fèi)的平均計算時間見表1。
表1 Harris 算法與改進(jìn) Harris 算法在核心部分平均消耗消耗時間的對比(單位: s)
由表1 可知,改進(jìn)后的角點(diǎn)檢測時間約為原算法的29.85%,計算時間大大縮短,有利于在實(shí)時處理中使用。該改進(jìn)方式并未使用其他技巧,進(jìn)一步證明了其對提高計算效率的有效性。
傳統(tǒng)Harris 算法與改進(jìn)的Harris 算法在所得性能(檢測到的角點(diǎn)數(shù)量)方面的比較見表2。
表2 傳統(tǒng)Harris 算法與改進(jìn)Harris 算法在結(jié)果性能(檢測出的角點(diǎn)個數(shù))方面的對比
通過單視測量方法[4]可以通過圖像坐標(biāo)點(diǎn)得到實(shí)際道路的參考平面坐標(biāo)點(diǎn),具體坐標(biāo)轉(zhuǎn)換過程如公式(6)所示。
式中:(Xi,Yi)為道路的參考平面標(biāo)定點(diǎn)坐標(biāo);pi為歸一化系數(shù)定義尺度比例;L為單應(yīng)性矩陣;(xi,yi)為對應(yīng)圖像坐標(biāo)。
單應(yīng)性矩陣L是通過4 個或4 個以上道路參考平面標(biāo)定點(diǎn)坐標(biāo)(Xi,Yi)與其對應(yīng)圖像坐標(biāo)(xi,yi)進(jìn)行計算得出的。對不同幀匹配的圖像角點(diǎn)坐標(biāo)來說,可以通過單應(yīng)性矩陣L將其轉(zhuǎn)換為實(shí)際道路坐標(biāo)。然后,通過匹配角點(diǎn)間的相對位移?S和時間差?T直接計算當(dāng)前圖像角點(diǎn)的速度Vi,如公式(7)所示。
為了避免目標(biāo)車輛頂部角點(diǎn)在投影變換后可能出現(xiàn)的誤差,采用車輛底部貼近路面的特征角點(diǎn)來計算速度。通過測量車輛底部特征角點(diǎn)的位移可以得到更準(zhǔn)確的車速。對車輛頂部的角點(diǎn)來說,可以根據(jù)它們相對車輛底部的位置和通過投影矩陣計算得到的加權(quán)系數(shù)ki進(jìn)行調(diào)整,以更準(zhǔn)確地反映車輛的實(shí)際速度。最后,求取所有角點(diǎn)的速度的平均值,并輸出車輛的速度V,如公式(8)所示。
該項(xiàng)目在MATLAB 2019a 平臺上對車輛進(jìn)行檢測,從高速道路攝像頭獲取視頻圖像,通過與車載行車記錄儀記載的車速對比得出相關(guān)結(jié)果,見表3。
表3 實(shí)際車速和測量車速
試驗(yàn)結(jié)果表明,該文提出的方法對高速路視頻中不同車輛速度檢測的準(zhǔn)確性較高,達(dá)到 95%以上。
該文利用高速公路視頻圖像實(shí)現(xiàn)了多目標(biāo)車速檢測,可以檢測車輛的異常情況,更符合實(shí)際車速檢測的需求。在未來的研究中,仍須進(jìn)一步提高運(yùn)動目標(biāo)角點(diǎn)檢測的速度和精確性,以提高車速檢測的可靠性。