趙俊梅,張利平
(中北大學(xué) 電氣與控制工程學(xué)院,太原 030051)
交通標(biāo)志對于交通參與者來說,信息量非常多,對于輔助駕駛、無人駕駛來說,更是具有舉足輕重的作用.交通標(biāo)志類型(指示標(biāo)志、警告標(biāo)志、禁止標(biāo)志)多,形狀(三角形、矩形、圓形、多邊形)、顏色(紅色、藍(lán)色、黃色)不盡相同,具體含義(文字、數(shù)字、字母、方向等信息)非常豐富,再加上實(shí)際交通標(biāo)志的安裝位置的差異,給交通標(biāo)志檢測和識別帶來非常大的挑戰(zhàn).同時,車輛因?yàn)榈缆翻h(huán)境的改變,在行駛過程中采集圖像時易受車輛晃動和角度不同的影響,采集到的標(biāo)志圖像具有隨機(jī)性和不穩(wěn)定性.交通標(biāo)志長時間暴露戶外,也容易褪色、缺損和變形,也容易受到建筑物、樹葉、廣告牌等干擾物遮擋.為了安全輔助駕駛,需要行駛車輛離交通標(biāo)志一段距離時檢測到標(biāo)志,采集到的交通標(biāo)志圖像會有其它非目標(biāo)的干擾對象,這對交通標(biāo)志實(shí)時精準(zhǔn)定位要求非常高.文獻(xiàn)[1]利用卷積神經(jīng)網(wǎng)絡(luò)對交通標(biāo)志圖像進(jìn)行檢測和識別.文獻(xiàn)[2]利用YOLO_V4和DCGAN網(wǎng)絡(luò)對標(biāo)志圖像檢測和識別.文獻(xiàn)[3]利用標(biāo)志的幾何特征和Hu不變矩等特征進(jìn)行定位和識別.文獻(xiàn)[4]利用高對比度特征、分流級聯(lián)等算法對特殊情況下的標(biāo)志圖像進(jìn)行分類和識別.文獻(xiàn)[5]利用顏色和形態(tài)學(xué)對交通標(biāo)志圖像進(jìn)行檢測.
卷積神經(jīng)網(wǎng)絡(luò)需要大量的樣本圖像庫,而且需要GPU硬件設(shè)備.特征檢測方法不需要太多約束.而局部特征相對于全局特征來說,具有更強(qiáng)的描述能力,具有重復(fù)性好、魯棒性高等特點(diǎn),文中比較和分析幾種局部特征算法對交通標(biāo)志圖像進(jìn)行目標(biāo)定位.
SURF(Speeded Up Robust Features)算法是局部特征的高效穩(wěn)定的算法之一.它具有特征抗干擾能力強(qiáng)等優(yōu)點(diǎn),而且計(jì)算速度較快.算法可分為特征點(diǎn)檢測和特征點(diǎn)描述矢量生成兩個階段[6].SURF算法先對圖像進(jìn)行積分圖像計(jì)算,然后用盒狀濾波器近似二次高斯濾波生成Hessian矩陣,最后采用非極大值抑制定位特征點(diǎn).圖像中的像素的積分值是原圖像中該像素左上方矩形區(qū)域內(nèi)的全部像素點(diǎn)的灰度值之和.圖像中任意一點(diǎn)I(x,y),它在尺度空間上面的Hessian矩陣表示為
(1)
FAST(Features from Accelerated Segment Test)算法具有檢測速度快、計(jì)算復(fù)雜度低的優(yōu)勢,非常適合實(shí)時目標(biāo)檢測和跟蹤的情形[6].FAST算法考慮每個像素點(diǎn)周圍的一圈像素,如果在這個鄰近像素組成的圓上有若干個連續(xù)像素的灰度同時大于或小于該像素,則認(rèn)為它是一個角點(diǎn).確定FAST特征點(diǎn)的表達(dá)式為
N=∑x?(circle(p))|I(x)-I(p)|>εd,
(2)
式中:I(x)是圓周上面的特征點(diǎn)的灰度像素值;I(p)是中心特征點(diǎn)的灰度像素值;εd是兩個灰度值的閾值;N是兩個特征點(diǎn)灰度值的差大于εd的數(shù)量.
ORB(Oriented FAST Rotated Brief)算法由FAST進(jìn)化而來,擁有FAST算法的部分優(yōu)點(diǎn),同時克服了FAST算法的缺點(diǎn)[6].它具有非最大值抑制,控制特征點(diǎn)數(shù)量的特點(diǎn).ORB算法分為兩部分,具體是特征點(diǎn)提取和特征點(diǎn)描述.特征提取是由FAST算法發(fā)展來的,特征點(diǎn)描述是根據(jù)BRIEF特征描述算法改進(jìn)的.算法首先利用FAST特征點(diǎn)檢測的方法來檢測特征點(diǎn),然后利用Harris角點(diǎn)的度量方法,從FAST特征點(diǎn)挑選出Harris角點(diǎn)響應(yīng)值最大的特征點(diǎn).FAST特征點(diǎn)是沒有尺度不變性的,為了增加尺度不變性,ORB算法通過構(gòu)建高斯金字塔,并在每一層金字塔圖像上檢測焦點(diǎn)來實(shí)現(xiàn).另外,ORB算法采用了灰度質(zhì)心的方法讓它檢測到的特征點(diǎn)具有旋轉(zhuǎn)不變性.
KAZE算法的特征點(diǎn)檢測是計(jì)算不同尺度下的Hessian矩陣行列式的響應(yīng)值并尋找局部極大值點(diǎn)作為特征點(diǎn),是對Hessian矩陣行列式響應(yīng)值做歸一化[7].KAZE算法主要步驟包括:首先利用非線性擴(kuò)散濾波構(gòu)建非線性尺度空間.在非線性擴(kuò)散濾波中,將圖像亮度值L不同尺度的變化看為流動函數(shù)的散度;利用隱式差分方程,以AOS(加性算子分裂)算法進(jìn)行迭代近似估計(jì)微分方程;以金字塔為尺度空間原型,尺度級別按照指數(shù)增加.算法中,對原始圖像進(jìn)行高斯濾波,計(jì)算對比度參數(shù),構(gòu)造非線性尺度空間圖像;非線性不變特征算法KAZE依據(jù)不同尺度的歸一化Hessian矩陣查找圖像的局部極大值點(diǎn),將每個像素點(diǎn)與同一尺度3×3鄰域中的8個相鄰點(diǎn)以及上下相鄰尺度的共2×9個像素點(diǎn)進(jìn)行灰度值比較.若該像素點(diǎn)為極值點(diǎn),則將其作為關(guān)鍵點(diǎn)的候選點(diǎn);以60°的扇形窗口對特征領(lǐng)域內(nèi)的像素點(diǎn)進(jìn)行直方圖統(tǒng)計(jì),統(tǒng)計(jì)高斯加權(quán)計(jì)算特征點(diǎn)的主方向,進(jìn)而計(jì)算每個區(qū)域的的描述向量,通過對特征向量歸一化,構(gòu)建KAZE特征描述子.
BRISK(Binary Robust Invariant Scalable Keypoints)算法主要利用FAST9-16進(jìn)行特征點(diǎn)檢測,其改進(jìn)是嘗試識別特征的尺度大小以及方向[6].BRISK首先通過創(chuàng)建具有固定數(shù)量的尺度的空間金字塔,然后根據(jù)尺度計(jì)算固定數(shù)量的intra-octave識別尺度.BRISK特征檢測器首先應(yīng)用FAST來查找這些尺度的特征,然后使用非極大值抑制來找到最大特征點(diǎn).BRISK描述符由圍繞中心點(diǎn)的一系列環(huán)構(gòu)成.在所有圓的配對之間計(jì)算構(gòu)成逐位描述符的亮度比較.這些配對構(gòu)成短距離配對和長距離配對兩個子集.短距離配對形成特征描述符,長距離配對用于計(jì)算主導(dǎo)方向.
實(shí)際的交通環(huán)境非常復(fù)雜,交通標(biāo)志所在的環(huán)境變幻莫測,對于雨、雪、霧等惡劣天氣的情況下,沒有路燈或者光線不足的情況下,交通標(biāo)志的檢測和定位困難更大[8].文中通過添加椒鹽噪聲,噪聲密度為0.05,模擬實(shí)際大雪天氣.添加高斯白噪聲,均值為0.3,方差為0.01,模擬大雨天氣,添加方差為0.08的乘性噪聲,模擬光照度不高或者晚上的情形.圖1是參考模板圖像,圖2是待配準(zhǔn)的交通標(biāo)志實(shí)際圖像,圖3是椒鹽噪聲下的SURF算法的兩幅圖像的配準(zhǔn)圖,圖4是椒鹽噪聲下的SURF算法的標(biāo)志定位圖,圖5是高斯噪聲下KAZE算法的兩幅圖像的配準(zhǔn)圖,圖6是高斯噪聲下KAZE算法的標(biāo)志定位圖.參考圖像和待匹配圖像中通過+或○表示特征匹配點(diǎn).
圖1 參考圖像
圖2 交通標(biāo)志圖像
圖3 椒鹽噪聲下SURF算法的標(biāo)志匹配圖
圖4 椒鹽噪聲下SURF算法的標(biāo)志定位圖
圖5 高斯噪聲下的KAZE算法的標(biāo)志匹配圖
圖6 高斯噪聲下的KAZE算法的標(biāo)志定位圖
表1是椒鹽噪聲下的5種局部特征算法的匹配結(jié)果情況表.表2是高斯噪聲下的5種局部特征算法的匹配結(jié)果情況表.表3是乘性噪聲下的5種局部特征算法的匹配結(jié)果情況表.從3個表中可以看出:KAZE算法檢測和匹配效果最好;SURF算法次之;FAST和ORB算法效果比較差.匹配數(shù)量為零的話,未寫出運(yùn)行時間,故表中是空的.
表1 椒鹽噪聲下5種局部特征算法匹配的結(jié)果
表2 高斯噪聲下5種局部特征算法匹配的結(jié)果
表3 乘性噪聲下5種局部特征算法匹配的結(jié)果
交通標(biāo)志所在的實(shí)際環(huán)境差異非常大,有的交通標(biāo)志可能被樹木或廣告牌等遮擋,有的交通標(biāo)志可能被撞擊后傾斜或變形,有的交通標(biāo)志顏色褪色,這均給定位帶來了挑戰(zhàn)[9].文中將圖像旋轉(zhuǎn)15°,模擬標(biāo)志牌位置改變或者顛簸造成采集角度變化.將圖像添加圓形濾波器,模擬標(biāo)志牌褪色、光照度變化或者天氣陰暗變化.將圖像添加樹葉,模擬標(biāo)志被遮擋.圖7是待配準(zhǔn)的交通標(biāo)志實(shí)際圖像.圖8是順時針旋轉(zhuǎn)15°后SURF算法的兩幅圖像的配準(zhǔn)圖.圖9是旋轉(zhuǎn)15°后SURF算法的標(biāo)志定位圖.圖10是遮擋后的ORB算法的標(biāo)志匹配圖.圖11是標(biāo)志定位圖.
圖7 交通標(biāo)志圖像
圖8 旋轉(zhuǎn)角度后的SURF算法的標(biāo)志匹配圖
圖9 旋轉(zhuǎn)角度后的SURF算法的標(biāo)志定位圖
圖10 遮擋后的ORB算法的標(biāo)志匹配圖
圖11 遮擋后的ORB算法的標(biāo)志定位圖
表4是順時針旋轉(zhuǎn)15°后5種局部特征算法的匹配結(jié)果情況表.表5是模擬模糊褪色情況下5種局部特征算法的匹配結(jié)果情況表.表6是被樹葉遮擋情形下5種局部特征算法的匹配結(jié)果情況表.從3個表中可以看出:SURF算法匹配和定位效果最好;其次是KAZE算法;FAST算法最差.
表4 旋轉(zhuǎn)角度下5種局部特征算法匹配的結(jié)果
表5 模糊褪色下5種局部特征算法匹配的結(jié)果
表6 遮擋下5種局部特征算法匹配的結(jié)果
為了適應(yīng)復(fù)雜天氣和復(fù)雜環(huán)境下的交通標(biāo)志目標(biāo)定位的要求,進(jìn)行二者結(jié)合的復(fù)雜環(huán)境進(jìn)行模擬仿真.對旋轉(zhuǎn)和模糊結(jié)合、遮擋和椒鹽噪聲的情形進(jìn)行模擬.
表7是旋轉(zhuǎn)和模糊后的5種局部特征匹配結(jié)果情況表.圖8是遮擋和噪聲下的5種局部特征匹配結(jié)果情況表.從兩個表中可以看出,5種算法均不理想,匹配和定位效果無法適應(yīng)實(shí)際環(huán)境.故需要新的特征檢測算法來解決問題.根據(jù)表1~8的匹配數(shù)量和運(yùn)算時間,SURF算法和KAZE算法的綜合效果最佳.故考慮利用二者相互補(bǔ)充,來進(jìn)行交通標(biāo)志定位任務(wù).
表7 旋轉(zhuǎn)和模糊下5種局部特征算法匹配的結(jié)果
表8 遮擋和噪聲下5種局部特征算法匹配的結(jié)果
根據(jù)上面的實(shí)驗(yàn),可以明顯看出,SURF算法具有尺度不變性特征、運(yùn)算速度快、穩(wěn)定性好,KAZE算法魯棒性強(qiáng)、抗噪聲能力強(qiáng)、運(yùn)算速度快,匹配率高.KAZE算法對于標(biāo)志旋轉(zhuǎn)比較敏感,SURF算法抗噪聲能力比KAZE算法稍微弱一些,故充分考慮二者的優(yōu)缺點(diǎn),將其有機(jī)結(jié)合,再進(jìn)行目標(biāo)定位,效果會更好.SURF-KAZE算法步驟如下:
(1)檢測參考圖像和待配準(zhǔn)圖像的SURF和KAZE特征值.
(2)提取參考圖像和待配準(zhǔn)圖像的SURF和KAZE的特征描述符.
(3)首先對KAZE描述符進(jìn)行匹配,再對SURF描述符進(jìn)行匹配.為了獲取更多的特征匹配點(diǎn),需要設(shè)置合理閾值.
(4)獲取SURF和KAZE的候選特征描述符.
(5)將SURF和KAZE的候選特征值全部考慮,進(jìn)而獲得SURF-KAZE的綜合特征點(diǎn)的位置,進(jìn)而獲取更好匹配點(diǎn).
圖12是順時針旋轉(zhuǎn)10°和圓形濾波器的模糊噪聲下的標(biāo)志匹配圖.圖13是順時針旋轉(zhuǎn)10°和圓形濾波器的模糊噪聲下的標(biāo)志定位圖.圖14是在旋轉(zhuǎn)和模糊噪聲基礎(chǔ)上面再添加椒鹽噪聲,噪聲密度為0.2的標(biāo)志匹配圖.圖15是標(biāo)志定位圖.
圖12 旋轉(zhuǎn)和模糊下兩種算法標(biāo)志匹配圖
圖13 旋轉(zhuǎn)和模糊下兩種算法標(biāo)志定位圖
圖14 旋轉(zhuǎn)、模糊和椒鹽噪聲下的標(biāo)志匹配圖
圖15 旋轉(zhuǎn)、模糊和椒鹽噪聲下的標(biāo)志定位圖
交通標(biāo)志種類多、所處環(huán)境復(fù)雜,為了證明SURF-KAZE算法的有效性和魯棒性,通過仿真平臺,進(jìn)行了大量實(shí)驗(yàn).采集到50幅實(shí)際道路環(huán)境下的交通標(biāo)志圖像,進(jìn)行了各種噪聲、旋轉(zhuǎn)、遮擋等模擬,圖像庫可以擴(kuò)展到200幅左右圖像.電腦配置如下:CPU選用i5-7200U,2.70 GHz;RAM選用16.0 GB.通過仿真平臺,進(jìn)行了大量的仿真實(shí)驗(yàn).交通標(biāo)志的匹配準(zhǔn)確率可以達(dá)96%以上,如果旋轉(zhuǎn)角度大、噪聲級別高,會給目標(biāo)定位帶來問題和錯誤率.圖16是參考模板圖像.圖17是添加樹葉遮擋后的圖像.圖18是遮擋基礎(chǔ)上添加旋轉(zhuǎn)角度和噪聲的標(biāo)志匹配結(jié)果圖.圖19是標(biāo)志定位圖.
圖16 參考圖像 圖17 被遮擋的交通標(biāo)志圖像
圖18 遮擋、旋轉(zhuǎn)、噪聲下的標(biāo)志匹配圖
圖19 遮擋、旋轉(zhuǎn)、噪聲下的標(biāo)志定位圖
交通標(biāo)志的精確、快速定位是智能車輛的重要領(lǐng)域,是實(shí)現(xiàn)無人駕駛、輔助駕駛的主要內(nèi)容之一.結(jié)合局部特征的優(yōu)勢和特點(diǎn),對5種局部特征的檢測、匹配效果和能力進(jìn)行了對比分析,并提出了SURF-KAZE互補(bǔ)結(jié)合的算法.對交通標(biāo)志圖像進(jìn)行了大量仿真實(shí)驗(yàn),證明了算法的抗干擾能力、精確定位能力,說明算法在復(fù)雜的道路環(huán)境下,具有一定的實(shí)用性.文中提出的算法相對單一局部特征算法來說,彌補(bǔ)了其缺點(diǎn)和劣勢,集成了SURF與KAZE的優(yōu)勢,具有非常強(qiáng)的魯棒性、穩(wěn)定性、準(zhǔn)確性.算法相對卷積神經(jīng)網(wǎng)絡(luò)來說,具有運(yùn)行時間短、圖像數(shù)據(jù)集少、定位效果好等特點(diǎn).