楊秀霞,王晨蕾,張 毅,于 浩,姜子劼
(海軍航空大學(xué), 山東 煙臺(tái) 264000)
隨著無(wú)人機(jī)(unmanned aerial vehicle,UAV)領(lǐng)域的開放,UAV避障研究日益受到重視,然而當(dāng)前對(duì)于UAV避障技術(shù)的研究主要集中在測(cè)距技術(shù)和以路徑規(guī)劃算法為基礎(chǔ)的避障策略,而較少關(guān)注UAV飛行過(guò)程中的障礙物檢測(cè)識(shí)別。圖像邊緣檢測(cè)算法利用圖像感知處理外界信息,進(jìn)而準(zhǔn)確獲取障礙物的大小、形狀等邊緣信息,輔以一定的測(cè)距手段,可以為生成避障策略提供足量依據(jù),從而有效促進(jìn)UAV自主防碰撞技術(shù)的發(fā)展與應(yīng)用。
圖像邊緣通常是指圖像紋理、顏色發(fā)生躍變的像素點(diǎn)的集合,是圖像特征信息的集中體現(xiàn)。傳統(tǒng)的邊緣檢測(cè)算法主要基于形態(tài)學(xué)[1-2]和微分算子[3-6],然而基于形態(tài)學(xué)的算法結(jié)構(gòu)元素單一,易造成輪廓移位與合并且計(jì)算復(fù)雜度大;基于微分算子的算法受噪聲影響較大,低灰度值邊緣點(diǎn)易丟失。
近年來(lái),卷積神經(jīng)網(wǎng)絡(luò)[7-10]在邊緣檢測(cè)領(lǐng)域取得了重要突破。石昌友[11]等采用多個(gè)子神經(jīng)網(wǎng)絡(luò)分別學(xué)習(xí)同一圖像在不同尺度下的邊緣知識(shí);王鑫[12]等基于VGG16網(wǎng)絡(luò),利用邊緣差異圖和注意力機(jī)制提取圖像邊緣特征。但上述方法仍存在邊緣線條粗,噪聲較多等問(wèn)題。此外,隨著網(wǎng)絡(luò)層數(shù)的加深,會(huì)出現(xiàn)梯度爆炸或消失現(xiàn)象,導(dǎo)致邊緣檢測(cè)的準(zhǔn)確率下降。ResNet網(wǎng)絡(luò)[13]通過(guò)引入殘差結(jié)構(gòu)保證網(wǎng)絡(luò)性能,但仍存在參數(shù)過(guò)多、檢測(cè)效率低等缺點(diǎn)。
針對(duì)上述問(wèn)題,提出了一種基于八向差分算子的多尺度ResNet18殘差網(wǎng)絡(luò)邊緣檢測(cè)算法,用于UAV自主飛行過(guò)程中的障礙物探測(cè),主要包括以下3個(gè)過(guò)程:① 提取輸入圖像的語(yǔ)義特征,輸出特征圖??紤]到網(wǎng)絡(luò)參數(shù)數(shù)量對(duì)特征提取速度的影響,用深度可分離卷積改進(jìn)ResNet18網(wǎng)絡(luò),實(shí)現(xiàn)網(wǎng)絡(luò)參數(shù)的降維,提高網(wǎng)絡(luò)訓(xùn)練效率;② 基于八向差分算子確定特征圖的邊緣像素點(diǎn),獲得初步邊緣信息。在對(duì)像素點(diǎn)二值化分類時(shí),一般人為根據(jù)經(jīng)驗(yàn)設(shè)計(jì)閾值,魯棒性較差,因此提出一種綜合考慮固定閾值和局部邊緣點(diǎn)均值的自適應(yīng)閾值方法,能夠有效抑制噪聲;③ 為解決小目標(biāo)邊緣缺失的問(wèn)題,設(shè)計(jì)了以包含豐富語(yǔ)義信息的頂層特征圖為指導(dǎo)的多尺度特征融合結(jié)構(gòu),在頂層直接輸出大目標(biāo)邊緣信息,對(duì)于所占像素點(diǎn)數(shù)量較少的小目標(biāo)則融合低層細(xì)節(jié)特征進(jìn)一步細(xì)化邊緣。實(shí)驗(yàn)證明本文方法能夠兼顧檢測(cè)效率和精度。
本文中以ResNet18殘差網(wǎng)絡(luò)為基礎(chǔ)網(wǎng)絡(luò)框架,以八向差分算子為邊緣檢測(cè)算子,設(shè)計(jì)了一種多尺度邊緣檢測(cè)算法,網(wǎng)絡(luò)總體結(jié)構(gòu)如圖1所示。該網(wǎng)絡(luò)主要包含引入深度可分離卷積的特征提取模塊、基于八向差分算子的邊緣檢測(cè)模塊以及針對(duì)小目標(biāo)邊緣信息的多尺度特征融合模塊,本節(jié)將逐一闡述各模塊設(shè)計(jì)思路及原理。
圖1 網(wǎng)絡(luò)總體結(jié)構(gòu)
在邊緣檢測(cè)過(guò)程中,卷積核的作用相當(dāng)于濾波器,卷積方式的改變直接影響特征提取效果[14]。然而隨著網(wǎng)絡(luò)層次加深,常規(guī)卷積操作的參數(shù)呈現(xiàn)數(shù)量級(jí)式的增長(zhǎng),使得網(wǎng)絡(luò)訓(xùn)練效率逐漸降低,引入深度可分離卷積可有效緩解上述問(wèn)題。常規(guī)卷積操作的本質(zhì)是實(shí)現(xiàn)圖像在空間維度和通道(深度)維度的耦合,而深度可分離卷積通過(guò)解耦,使網(wǎng)絡(luò)在保證邊緣檢測(cè)準(zhǔn)確率的基礎(chǔ)上對(duì)參數(shù)進(jìn)行有效降維。
在圖2所示的常規(guī)卷積中,假設(shè)輸入圖像的分辨率為h×h,卷積層中有N個(gè)k×k濾波器,則輸出特征圖的尺寸outputsize和參數(shù)數(shù)量NSTD分別為
圖2 常規(guī)卷積
NSTD=outputsize×outputsize×3×N
(2)
式中:padding為填充;stride為步長(zhǎng)。
深度可分離卷積將常規(guī)卷積解耦成針對(duì)通道維度的深度卷積和針對(duì)空間維度的逐點(diǎn)卷積,從而實(shí)現(xiàn)參數(shù)的降維。如圖3(a)所示,濾波器逐通道對(duì)輸入圖像進(jìn)行深度卷積運(yùn)算,其參數(shù)數(shù)量為:
Ndepth=outputsize×outputsize×3
(3)
深度卷積未考慮特征圖的空間位置信息,因此要通過(guò)如圖3(b)所示的逐點(diǎn)卷積在相應(yīng)位置疊加不同通道的特征信息,逐點(diǎn)卷積的參數(shù)數(shù)量為:
Npoint=1×1×3×N
(4)
因此深度可分離卷積與常規(guī)卷積間參數(shù)數(shù)量的比值為:
(5)
由式(7)可知,引入深度可分離卷積可有效降低計(jì)算復(fù)雜度。網(wǎng)絡(luò)引入深度可分離卷積后,殘差結(jié)構(gòu)的參數(shù)量由原來(lái)4.23×106降至0.32×106,網(wǎng)絡(luò)總參數(shù)量由原來(lái)的14.69×106降至9.68×106。
輸入圖像經(jīng)過(guò)深度可分離卷積獲取特征圖后根據(jù)八向差分算子計(jì)算特征圖中目標(biāo)物的邊緣像素點(diǎn)。由于八向差分算子用于邊緣檢測(cè)時(shí),灰度閾值的設(shè)定很大程度上會(huì)影響檢測(cè)效果,因此采用自適應(yīng)閾值方法對(duì)八向差分算子進(jìn)行改進(jìn)。
除邊界外,在3×3的鄰域范圍內(nèi),圖中任一像素點(diǎn)都有左、右、上、下、左上、左下、右上、右下8個(gè)方向的相鄰像素。設(shè)圖像的像素值函數(shù)為g(x,y),則圖中任意像素點(diǎn)(x,y)的八向差分值為其八鄰域像素點(diǎn)與它的差值:
Δlg=g(x,y-1)-g(x,y)
Δrg=g(x,y+1)-g(x,y)
Δug=g(x-1,y)-g(x,y)
Δdg=g(x+1,y)-g(x,y)
Δlug=g(x-1,y-1)-g(x,y)
Δldg=g(x+1,y-1)-g(x,y)
Δrug=g(x-1,y+1)-g(x,y)
Δrdg=g(x+1,y+1)-g(x,y)
(6)
將八鄰域像素差的絕對(duì)值取平均,可得該點(diǎn)的像素值為:
g(x,y)=(|Δlg|+|Δrg|+|Δug|+|Δdg|+|Δlug|+
|Δldg|+|Δrug|+|Δrdg|)÷8
(7)
傳統(tǒng)的八向差分算法大多將圖像中像素點(diǎn)的平均值設(shè)定為閾值,或者根據(jù)經(jīng)驗(yàn)設(shè)計(jì)固定閾值,閾值設(shè)置較為粗糙,魯棒性較差,因此本節(jié)提出一種綜合考慮固定閾值和局部邊緣點(diǎn)均值的自適應(yīng)閾值方法改進(jìn)八向差分算子,抑制噪聲干擾。
對(duì)于邊緣點(diǎn)的確定如式(8)所示,通過(guò)比較像素的八向差分值與設(shè)定的閾值二值化邊緣點(diǎn):
式中:g(x,y)為像素點(diǎn)(x,y)的八向差分值,由式(7)計(jì)算得出;T為判定邊緣點(diǎn)的自適應(yīng)閾值。本節(jié)綜合考慮固定閾值和局部邊緣點(diǎn)的均值,得到自適應(yīng)閾值T為:
T=max(M×K+N×gmax(x,y),gave(x,y))
(9)
式中:gmax(x,y)為像素最大值;gave(x,y)為圖像3×3窗口局部均值;M、N為經(jīng)試驗(yàn)確定的常值系數(shù),本文中取M=0.5,N=0.2;K為通過(guò)最大類間方差法[15]對(duì)圖像像素二值化分類得到的最佳閾值。
最大類間方差法根據(jù)像素的灰度級(jí)對(duì)特征圖進(jìn)行閾值分割,能夠有效抑制噪聲,極大提高目標(biāo)與背景的分割效果。最大類間方差法根據(jù)灰度閾值K將圖像分為目標(biāo)區(qū)域E0和背景區(qū)域E1兩個(gè)部分,E0表示灰度級(jí)在[0,1,…,K-1]范圍內(nèi)的像素點(diǎn)的集合,E1表示灰度級(jí)在[K,K+1,…,L]范圍內(nèi)的像素點(diǎn)的集合。則任一像素點(diǎn)落在這2個(gè)區(qū)域的概率分別為:
式中,qi表示圖中所有灰度級(jí)為i的像素點(diǎn)出現(xiàn)的概率,i∈[0,1,…,L]。
因此目標(biāo)區(qū)域和背景區(qū)域的平均灰度分別為:
圖像的總平均灰度為:
區(qū)域間的類間方差為:
ω0ω1(μ1-μ0)2
(15)
傳統(tǒng)的邊緣檢測(cè)方法通過(guò)多層卷積網(wǎng)絡(luò)的特征提取,得到了高度集中的語(yǔ)義特征,但是空間細(xì)節(jié)信息丟失嚴(yán)重,不利于小目標(biāo)的邊緣檢測(cè)。針對(duì)上述問(wèn)題,引入多尺度特征融合模塊,通過(guò)在語(yǔ)義信息更凝練的高層特征圖上疊加低層特征圖中包含的豐富細(xì)節(jié)信息,進(jìn)一步細(xì)化小目標(biāo)邊緣信息。
多尺度特征融合模塊如圖4所示,由左、中、右三條路徑組成。左側(cè)自下而上的路徑利用低(L)、中(M)、高(H)3個(gè)卷積模塊逐層提取圖像語(yǔ)義特征;右側(cè)自上而下的路徑,通過(guò)上采樣放大高層特征,輸出與相鄰卷積階段相同尺度的特征圖;中間橫向連接1×1的卷積核得到與相鄰階段特征圖相同的通道數(shù),實(shí)現(xiàn)跨通道的特征整合。在統(tǒng)一相鄰特征圖尺度和通道數(shù)的基礎(chǔ)上,對(duì)特征信息進(jìn)行像素級(jí)的疊加融合,輸出融合多尺度信息的特征圖P1~P3。最后通過(guò)八向差分算子計(jì)算邊緣像素點(diǎn)并通過(guò)級(jí)聯(lián)方式輸出最終邊緣信息。
圖4 多尺度特征融合結(jié)構(gòu)
邊緣檢測(cè)問(wèn)題本質(zhì)上是像素點(diǎn)的二值化分類問(wèn)題,故采用準(zhǔn)確率(Accuracy)來(lái)量化邊緣檢測(cè)的性能,計(jì)算式為:
其中:TP為正確分類的邊緣點(diǎn);TN為正確分類的非邊緣點(diǎn);FP為誤分類的非邊緣點(diǎn);FN為漏分類的真實(shí)邊緣點(diǎn)。
圖5給出了采用本文算法與常用的自適應(yīng)閾值算法的平均峰值信噪比(PSNR)值,定量評(píng)估本文改進(jìn)的自適應(yīng)閾值方法排除噪聲干擾的能力。由圖5可知使用本文算法的平均PSNR值相對(duì)較大,閾值設(shè)置更合理,抗噪效果更好。
圖5 自適應(yīng)閾值算法比較
如圖6所示,圖6(b)為固定低閾值的邊緣檢測(cè)圖,圖6(c)為固定高閾值的邊緣檢測(cè)圖,圖6(d)為改進(jìn)的自適應(yīng)閾值的邊緣檢測(cè)圖。由圖6可知,采用自適應(yīng)閾值算法假邊緣顯著減少且邊緣連續(xù)性更好。
圖6 自適應(yīng)閾值算法比較不同閾值的邊緣檢測(cè)效果Fig.6 Edge detection effects of different thresholds
如表1所示,在網(wǎng)絡(luò)的不同層級(jí)添加多尺度特征融合結(jié)構(gòu),邊緣檢測(cè)的準(zhǔn)確率會(huì)相應(yīng)改變。其中H、M、L分別表示多尺度特征融合結(jié)構(gòu)位于Resnet18殘差網(wǎng)絡(luò)第一、第二、第三個(gè)殘差塊后,即高、中、低層的特征圖位置(見圖4)。從表中可以看出,多尺度特征融合結(jié)構(gòu)對(duì)高層特征的融合作用較低層更為突出,并且當(dāng)在3個(gè)深度可分離卷積模塊后均添加該結(jié)構(gòu)時(shí),邊緣檢測(cè)的準(zhǔn)確率最高。因此,本在H、M、L層均設(shè)置了該結(jié)構(gòu)。
表1 多尺度特征融合結(jié)構(gòu)數(shù)量與位置對(duì)準(zhǔn)確率的影響
各單一尺度下以及融合尺度的邊緣檢測(cè)效果如圖7所示。從其中可以看出,單一尺度下的邊緣檢測(cè)存在不同程度的噪聲問(wèn)題,且小尺度下噪聲問(wèn)題更突出。相比之下,融合3個(gè)尺度后,噪聲問(wèn)題得到了一定抑制,從而得到了檢測(cè)精度更高的邊緣檢測(cè)結(jié)果。
圖7 多尺度融合邊緣檢測(cè)效果
為測(cè)試改進(jìn)網(wǎng)絡(luò)的性能,在KITTI自動(dòng)駕駛目標(biāo)檢測(cè)數(shù)據(jù)集和UAV實(shí)飛采集到的視頻幀數(shù)據(jù)集中對(duì)改進(jìn)前后的ResNet18網(wǎng)絡(luò)和MobileNet網(wǎng)絡(luò)模型做對(duì)比實(shí)驗(yàn)。仿真實(shí)驗(yàn)環(huán)境為:Pyhton 3.7,2.42 GHz主頻的Inter Core i5處理器,以及Win10操作系統(tǒng),采用Adam優(yōu)化器。
改進(jìn)前后的ResNet18網(wǎng)絡(luò)和MobileNet網(wǎng)絡(luò)邊緣檢測(cè)的準(zhǔn)確率如圖8所示。由圖可知,傳統(tǒng)的ResNet18網(wǎng)絡(luò)迭代 2 100次后準(zhǔn)確率約為92.55%,MobileNet網(wǎng)絡(luò)迭代1 717次準(zhǔn)確率約為76.34%,最終穩(wěn)定在83.33%,而改進(jìn)后的ResNet18網(wǎng)絡(luò)迭代1 344次后準(zhǔn)確率可達(dá)96.47%,不僅收斂速度更快,且準(zhǔn)確率分別提高了4.23%和13.14%。
圖8 網(wǎng)絡(luò)準(zhǔn)確率對(duì)比
3種網(wǎng)絡(luò)模型的性能參數(shù)如表2所示。在使用準(zhǔn)確率量化邊緣檢測(cè)性能的同時(shí)加入以每秒處理幀數(shù)(fps)為單位的在線處理時(shí)間作為衡量指標(biāo)。由表可知,相比傳統(tǒng)的ResNet18網(wǎng)絡(luò),改進(jìn)后的ResNet18網(wǎng)絡(luò)參數(shù)量減少了5.01×106,處理時(shí)間提升了4 fps。輕量化MobileNet網(wǎng)絡(luò)由于參數(shù)量較少,雖然處理圖像速度相對(duì)更快,但檢測(cè)效果不佳。結(jié)果表明,改進(jìn)后的網(wǎng)絡(luò)能夠較好地平衡邊緣檢測(cè)準(zhǔn)確率和處理速度。
表2 定量評(píng)估網(wǎng)絡(luò)性能
使用本文算法與其他3種常用算法對(duì)KITTI數(shù)據(jù)集和UAV實(shí)飛采集到的視頻幀數(shù)據(jù)集中圖像的邊緣檢測(cè)結(jié)果分別如圖9和圖10所示。由圖可知,本文算法的邊緣連續(xù)性更強(qiáng),對(duì)小目標(biāo)的檢測(cè)效果更佳,且噪聲更少;Canny算子的檢測(cè)效果噪聲較多;Sobel算子和灰度矩亞像素的檢測(cè)效果較差,邊緣不連續(xù)且噪聲較多。
圖10 本文算法與其他常用算法在UAV實(shí)飛數(shù)據(jù)集中的邊緣檢測(cè)效果對(duì)比
針對(duì)傳統(tǒng)邊緣檢測(cè)算法邊緣檢測(cè)速度慢、邊緣信息缺失、抗噪性能差等問(wèn)題,提出了一種以ResNet18殘差網(wǎng)絡(luò)為基礎(chǔ)網(wǎng)絡(luò)框架,以八向差分算子為邊緣檢測(cè)算子的多尺度邊緣檢測(cè)算法,主要結(jié)論如下:
1) 借鑒深度可分離卷積的思想改進(jìn)ResNet18殘差網(wǎng)絡(luò),實(shí)現(xiàn)了網(wǎng)絡(luò)參數(shù)的有效降維,使算法快速收斂。
2) 引入了自適應(yīng)閾值算法,提高目標(biāo)與背景的分割效果,有效抑制噪聲干擾。
3) 提出了多尺度特征融合結(jié)構(gòu),將不同尺度下的特征信息進(jìn)行融合,克服了低層空間細(xì)節(jié)易丟失的缺點(diǎn)。
4) 由改進(jìn)后的邊緣檢測(cè)算法與傳統(tǒng)邊緣檢測(cè)算法仿真對(duì)比可知,相比傳統(tǒng)ResNet18網(wǎng)絡(luò),改進(jìn)后的邊緣檢測(cè)算法準(zhǔn)確率提升了4.23%,參數(shù)量降低了5.01×106,處理速度提高了4 fps,有效縮短了檢測(cè)時(shí)間,得到更準(zhǔn)確的邊緣輪廓,更有利于UAV避障過(guò)程中的障礙物識(shí)別。