• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    改進(jìn)的Corner Net-Saccade車輛檢測(cè)算法

    2021-07-14 05:34:28梁禮明藍(lán)智敏錢艷群
    關(guān)鍵詞:沙漏角點(diǎn)殘差

    梁禮明,熊 文,藍(lán)智敏,錢艷群

    (江西理工大學(xué) 電氣工程與自動(dòng)化學(xué)院,江西 贛州 341000)

    車輛檢測(cè)是目標(biāo)檢測(cè)領(lǐng)域的重要研究分支,準(zhǔn)確實(shí)時(shí)檢測(cè)目標(biāo)車輛能有效緩解交通監(jiān)控壓力和減少車輛違規(guī)行為的發(fā)生[1],而這依賴于先進(jìn)的車輛檢測(cè)技術(shù)。

    自從Krizhevsky等[2]在ImageNet 2012圖像識(shí)別挑戰(zhàn)賽上首次證明了機(jī)器學(xué)習(xí)到的特征可以超越傳統(tǒng)手工設(shè)計(jì)[3-4]的特征后,基于深度學(xué)習(xí)的方法在目標(biāo)檢測(cè)領(lǐng)域中得到大量應(yīng)用,這些方法大致可分為基于區(qū)域的方法和基于回歸的方法兩大類?;趨^(qū)域的方法,如Ren等[5]采用區(qū)域建議網(wǎng)絡(luò)(RPN)提取感興趣區(qū)域,并對(duì)此區(qū)域加以分類實(shí)現(xiàn)端到端的目標(biāo)檢測(cè),但是檢測(cè)速度離實(shí)時(shí)性檢測(cè)要求還有一定的差距?;诨貧w的方法,如Redmon等[6]和Liu等[7]均將目標(biāo)檢測(cè)問(wèn)題作為回歸問(wèn)題來(lái)分析,相比基于區(qū)域的方法檢測(cè)速度要快很多,但是此類算法提取目標(biāo)特征魯棒性較差,無(wú)法將前景區(qū)域與背景區(qū)域完全區(qū)分開(kāi)來(lái),從而導(dǎo)致檢測(cè)精度不夠高的問(wèn)題。上述方法皆需要預(yù)先設(shè)計(jì)錨點(diǎn)框(anchor box),通過(guò)計(jì)算錨點(diǎn)框與目標(biāo)對(duì)象的交并比(IoU)來(lái)篩選出重疊程度大的錨點(diǎn)框,基于這些錨點(diǎn)框最后實(shí)現(xiàn)目標(biāo)的位置類別檢測(cè),處理效率較高。但是此舉又引入了諸多問(wèn)題,首先錨點(diǎn)框的引入會(huì)帶來(lái)眾多超參數(shù)和設(shè)計(jì)選擇的難題,如錨點(diǎn)框的尺寸和錨點(diǎn)框的長(zhǎng)寬比選擇等,其次錨點(diǎn)框數(shù)量巨大,可能會(huì)造成正負(fù)樣本不平衡,并最終導(dǎo)致模型訓(xùn)練收斂速度慢,檢測(cè)精確率低。

    針對(duì)錨點(diǎn)框算法帶來(lái)的問(wèn)題,Law等[8]使用新型特征嵌入方法和角點(diǎn)池化層(corner pooling layer)建模目標(biāo)的左上角點(diǎn)和右下角點(diǎn)的信息,從而準(zhǔn)確匹配屬于同一目標(biāo)對(duì)象的關(guān)鍵角點(diǎn),并通過(guò)角點(diǎn)準(zhǔn)確定位目標(biāo)邊框以及識(shí)別目標(biāo)類別[9],但是該算法存在網(wǎng)絡(luò)參數(shù)冗余度高、檢測(cè)速度過(guò)慢的問(wèn)題。Law等[10]提出的CornerNet-Saccade引入類似人眼的注意力機(jī)制來(lái)提高檢測(cè)速度,其通過(guò)目標(biāo)位置估計(jì)階段獲得含有目標(biāo)位置的大致區(qū)域信息后,從圖像中裁剪出含有目標(biāo)的區(qū)域進(jìn)行目標(biāo)關(guān)鍵點(diǎn)精確檢測(cè)。由于裁剪出的圖像像素量大為減少,背景復(fù)雜度降低使得更加有利于精確查找待檢測(cè)目標(biāo)。CornerNet-Saccade在檢測(cè)速度和精確率上有著一定的優(yōu)越性,但是在車輛檢測(cè)應(yīng)用中存在著明顯的誤檢和漏檢現(xiàn)象。

    本文針對(duì)CornerNet-Saccade存在的問(wèn)題,提出一種改進(jìn)的CornerNet-Saccade車輛檢測(cè)算法。改進(jìn)后的算法可有效解決原算法存在的誤檢和漏檢問(wèn)題,并進(jìn)一步提高車輛檢測(cè)的精確率和速度。

    1 Corner Net-Saccade算法原理

    1.1 堆疊沙漏網(wǎng)絡(luò)

    CornerNet-Saccade采用簡(jiǎn)化后的堆疊沙漏網(wǎng)絡(luò)(Stacked Hourglass Networks)[11]作為檢測(cè)網(wǎng)絡(luò)。單個(gè)沙漏網(wǎng)絡(luò)模塊仿照殘差網(wǎng)絡(luò)[12]的結(jié)構(gòu)進(jìn)行組建優(yōu)化,并通過(guò)3個(gè)跳躍連接結(jié)構(gòu)使得特征融合層能共享其他層特征信息。按其組建階數(shù)的不同(可查看下采樣次數(shù)判斷其階數(shù))可分為1、2、3、4階等,將多個(gè)沙漏網(wǎng)絡(luò)模塊進(jìn)行堆疊便形成了最終的特征提取網(wǎng)絡(luò)。CornerNet-Saccade采用3個(gè)3階的沙漏網(wǎng)絡(luò)模塊按串聯(lián)結(jié)構(gòu)拼接而成。單個(gè)沙漏網(wǎng)絡(luò)模塊結(jié)構(gòu)如圖1所示。

    圖1 單個(gè)沙漏網(wǎng)絡(luò)模塊結(jié)構(gòu)圖

    其中灰色矩形表示殘差單元;灰色矩形含有方向向下的箭頭區(qū)域表示殘差單元進(jìn)行下采樣操作;灰色矩形含有方向向上的箭頭區(qū)域表示殘差單元進(jìn)行上采樣操作;帶加號(hào)的圓形區(qū)域表示特征融合層;橙色矩形表示卷積模塊。

    圖1中,輸入圖像在單個(gè)沙漏網(wǎng)絡(luò)模塊中分別進(jìn)行3次下采樣和3次上采樣,其中下采樣操作采用步長(zhǎng)為2的卷積進(jìn)行特征降維,相比傳統(tǒng)的池化降維方式,其保留了更多的目標(biāo)有效信息;上采樣操作采用近鄰插值法恢復(fù)相應(yīng)網(wǎng)絡(luò)層的特征圖大小。每次下采樣后均使用一個(gè)殘差單元對(duì)目標(biāo)特征進(jìn)行提取,然后通過(guò)上采樣恢復(fù)原始特征圖大小,最后融合大小與通道一致的各層特征圖,輸出多尺度的目標(biāo)特征信息。堆疊沙漏網(wǎng)絡(luò)采用自頂而下和自底而上的設(shè)計(jì)方式,能有效解決特征網(wǎng)絡(luò)多次采樣后目標(biāo)特征丟失嚴(yán)重的問(wèn)題,且更利于捕獲全局和局部的目標(biāo)特征信息,對(duì)后續(xù)檢測(cè)目標(biāo)角點(diǎn)回歸目標(biāo)邊界框提供有效的目標(biāo)特征。在單個(gè)沙漏網(wǎng)絡(luò)模塊中各層輸出特征圖大小及通道數(shù)的變化情況如表1所示。

    表1 各層輸出特征圖大小及通道數(shù)

    續(xù)表(表1)

    從表1中可知網(wǎng)絡(luò)的輸入特征圖和輸出特征圖在大小和通道上均相同,通過(guò)堆疊多個(gè)沙漏網(wǎng)絡(luò)模塊可實(shí)現(xiàn)目標(biāo)特征的深度提取。

    1.2 角池化層輸出預(yù)測(cè)模塊

    沙漏網(wǎng)絡(luò)的輸出連接2個(gè)預(yù)測(cè)模塊,分別用于左上角點(diǎn)和右下角點(diǎn)的預(yù)測(cè)。2個(gè)預(yù)測(cè)模塊皆通過(guò)角點(diǎn)池化層(左上角池化層和右下角池化層)分別輸出heatmap(角點(diǎn)位置預(yù)測(cè))、embedding(角點(diǎn)分組)以及offset(角點(diǎn)坐標(biāo)誤差修訂)。不同于傳統(tǒng)的最大池化層(max pooling)通過(guò)滑動(dòng)窗口提取局部窗口像素的最大值,角點(diǎn)池化層(corner pooling)通過(guò)遞歸方式在圖像中每個(gè)水平方向和垂直方向?qū)γ總€(gè)像素位置做最大池化操作。假設(shè)特征圖中位置(i,j)處為目標(biāo)的左上角點(diǎn),則應(yīng)滿足下列2個(gè)關(guān)系式:

    其中:yt和yl分別為左上角池化層的輸入特征圖;特征圖的大小為h×w;ytij和ylij分別為yt和yl特征圖中位置(i,j)處的特征向量,特征向量的長(zhǎng)度為目標(biāo)類別數(shù)量;在特征圖yt中,對(duì)位于垂直方向上的特征向量向上做最大池化操作后得到的所有響應(yīng)向量表示為tij;在特征圖yl中,對(duì)位于水平方向上的特征向量向左做最大池化操作后得到的所有響應(yīng)向量表示為lij。最后將式(1)和式(2)相加得到的結(jié)果傳送到最后的預(yù)測(cè)模塊,右下角池化層和左上角池化層類似。預(yù)測(cè)模塊將角池化層的輸出和沙漏網(wǎng)絡(luò)的輸出信息相加后作為預(yù)測(cè)模塊的輸入,預(yù)測(cè)模塊輸出值主要用于確定角點(diǎn)位置信息、角點(diǎn)坐標(biāo)誤差計(jì)算以及對(duì)角點(diǎn)分組操作。

    1.3 注意力機(jī)制

    人類能夠迅速地選取視野中的關(guān)鍵部分,選擇性地將視覺(jué)處理資源分配給這些視覺(jué)顯著的區(qū)域。在計(jì)算機(jī)視覺(jué)領(lǐng)域,理解和模擬人類視覺(jué)系統(tǒng)的這種注意力機(jī)制,得到了學(xué)界的大力關(guān)注,并顯示出了廣闊的應(yīng)用前景[13]。CornerNet-Saccade引入注意力機(jī)制減少圖像像素的計(jì)算量,提高算法的檢測(cè)速度。詳細(xì)地,堆疊沙漏網(wǎng)絡(luò)的3個(gè)特征融合層輸出不同尺度的attention maps(64×64、32×32、16×16),基于多尺度下的attention maps粗略地提取圖像中含有的目標(biāo)位置信息,并回歸出目標(biāo)的大致邊界框。在目標(biāo)邊界框經(jīng)soft-nms處理后,在高分辨率原始圖像中裁剪出含有目標(biāo)的區(qū)域,裁剪區(qū)域由于可能含有多個(gè)目標(biāo),并且部分目標(biāo)裁剪過(guò)后存在殘缺的情況,還需消除距離裁剪邊界較近的邊界框。后續(xù)只需要對(duì)裁剪后的區(qū)域進(jìn)行目標(biāo)角點(diǎn)的精確檢測(cè),最后將角點(diǎn)位置坐標(biāo)信息映射回原圖以此回歸出目標(biāo)的邊界框。完整的檢測(cè)流程如圖2所示。

    圖2 檢測(cè)流程

    2 改進(jìn)的Corner Net-Saccade車輛檢測(cè)算法

    2.1 算法流程

    本文算法在CornerNet-Saccade的基礎(chǔ)上進(jìn)行改進(jìn),通過(guò)引進(jìn)密集-殘差單元重建堆疊沙漏網(wǎng)絡(luò),增強(qiáng)網(wǎng)絡(luò)對(duì)車輛特征多元信息的提取能力,同時(shí)降低網(wǎng)絡(luò)參數(shù)以提高車輛檢測(cè)速度;其次在多尺度下的車輛位置信息提取階段增加更小尺度的attention maps(8×8)以改善特小目標(biāo)車輛的檢測(cè)效果。具體流程如圖3所示。

    圖3 本文算法流程框圖

    首先對(duì)原始圖像進(jìn)行4倍的下采樣(下采樣率R=4)操作以滿足網(wǎng)絡(luò)端口對(duì)輸入圖像大小的要求;然后將下采樣后的圖像輸入到改進(jìn)后的堆疊沙漏網(wǎng)絡(luò)中進(jìn)行車輛特征提取,并初步獲得車輛的位置信息。由于背景圖像中車輛目標(biāo)大小迥異,將會(huì)對(duì)車輛檢測(cè)的精度產(chǎn)生極大影響,針對(duì)此問(wèn)題,在網(wǎng)絡(luò)車輛特征提取過(guò)程中,將網(wǎng)絡(luò)輸出的特征圖經(jīng)核大小為3的卷積層(Conv)和非線性激活層(Relu)處理后,再采用核大小為1的卷積層進(jìn)行特征降維,經(jīng)Sigmoid激活函數(shù)歸一化后得到4種不同大小的attention maps,從而獲得多尺度下的車輛位置信息;最后基于上個(gè)步驟獲得的車輛位置信息,從原始輸入圖像種裁剪出含有目標(biāo)車輛的圖像區(qū)域后,再次輸入到堆疊沙漏網(wǎng)絡(luò)中回歸出車輛的檢測(cè)框。

    2.2 改進(jìn)后的堆疊沙漏網(wǎng)絡(luò)

    2.2.1 密集-殘差單元

    優(yōu)化神經(jīng)網(wǎng)絡(luò)的方法普遍基于反向傳播的思想,即根據(jù)損失函數(shù)計(jì)算的誤差通過(guò)梯度反向傳播的方式,指導(dǎo)深度網(wǎng)絡(luò)權(quán)值的更新優(yōu)化,但是會(huì)存在隨著網(wǎng)絡(luò)的加深出現(xiàn)梯度消失和梯度爆炸的現(xiàn)象,從而導(dǎo)致網(wǎng)絡(luò)性能退化的問(wèn)題[14]。為了減少網(wǎng)絡(luò)學(xué)習(xí)能力和表征能力受網(wǎng)絡(luò)層數(shù)的限制,He等[12]提出殘差網(wǎng)絡(luò)(Resnet)較好地避免了此類問(wèn)題的發(fā)生。CornerNet-Saccade采用2層殘差單元作為堆疊沙漏網(wǎng)絡(luò)模塊的基本組成單元,其結(jié)構(gòu)如圖4所示。

    圖4 殘差單元結(jié)構(gòu)

    圖4中,上方<*>表示卷積層的輸入通道;K表示卷積核大??;下方<*>表示卷積層輸出通道;藍(lán)色區(qū)域表示批處理歸一化層BN;灰色區(qū)域表示非線性激活函數(shù)層Relu;帶加號(hào)的圓形區(qū)域表示特征融合層。

    殘差單元的引入使得堆疊沙漏網(wǎng)絡(luò)不會(huì)受網(wǎng)絡(luò)深度的限制而出現(xiàn)訓(xùn)練困難的問(wèn)題,通過(guò)堆疊多個(gè)殘差單元結(jié)構(gòu)提高了網(wǎng)絡(luò)特征提取能力,其中的特征融合層可增加圖像中細(xì)節(jié)信息的傳遞,有利于提高車輛檢測(cè)的精確率。但是這種殘差單元結(jié)構(gòu)由于采用了2個(gè)核大小為3×3的卷積層導(dǎo)致存在參數(shù)冗余度較高的問(wèn)題,且殘差單元的輸出對(duì)部分卷積層的特征重用率不高。首先將原殘差單元改為參數(shù)量更少的3層瓶頸殘差單元,其次,借鑒Huang等[15]的層間密集連接結(jié)構(gòu),將殘差單元主路上第一個(gè)非線性激活函數(shù)層輸出通過(guò)一個(gè)核大小為1×1的卷積層和批處理歸一化層連接到特征融合層上,這種連接方式保證了卷積層之間的最大信息流通,進(jìn)而提高對(duì)車輛尺度和特征多元信息的提取能力,最終構(gòu)建成如圖5所示的密集-殘差單元。

    圖5 密集-殘差單元結(jié)構(gòu)

    2.2.2 改進(jìn)后的堆疊沙漏網(wǎng)絡(luò)結(jié)構(gòu)

    堆疊沙漏網(wǎng)絡(luò)中的殘差單元作為特征提取的基本模塊,其內(nèi)部結(jié)構(gòu)、連接方式的不同對(duì)網(wǎng)絡(luò)性能會(huì)產(chǎn)生較大地影響。本文通過(guò)引入密集-殘差單元對(duì)堆疊沙漏網(wǎng)絡(luò)重建,使網(wǎng)絡(luò)性能達(dá)到最優(yōu)。在改進(jìn)后的堆疊沙漏網(wǎng)絡(luò)中,單個(gè)沙漏模塊采用對(duì)稱連接方式拼接密集-殘差單元,每邊順序連接5個(gè)密集-殘差單元對(duì)車輛特征進(jìn)行反復(fù)提取,同時(shí)對(duì)稱邊采用特征融合的方式提高車輛特征重用率,3個(gè)沙漏模塊之間為串聯(lián)關(guān)系??紤]到CornerNet-Saccade在車輛檢測(cè)上存在明顯的誤檢和漏檢問(wèn)題,尤其是對(duì)小目標(biāo)車輛檢測(cè)時(shí),誤檢和漏檢現(xiàn)象更為突出?;诖藛?wèn)題,在每個(gè)沙漏網(wǎng)絡(luò)模塊中分別增加一次下采樣和上采樣,并融合采樣過(guò)程中的特征信息,使得新增的特征融合層能輸出更小尺度的attention maps(8×8),其中8×8大小的attention maps相比原16×16大小的attention maps在小目標(biāo)檢測(cè)時(shí)具有更高的車輛細(xì)粒度識(shí)別能力,且在提取車輛更高級(jí)的語(yǔ)義信息上具有一定的優(yōu)越性。改進(jìn)后的堆疊沙漏網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示。

    圖6(a)中,3個(gè)沙漏模塊串聯(lián)構(gòu)成了整個(gè)特征提取網(wǎng)絡(luò)。其中C為新增特征融合層,輸出特征圖大小為8×8;綠色虛線框A包含了最后一個(gè)沙漏網(wǎng)絡(luò)模塊中的4個(gè)特征融合層,其輸出特征圖經(jīng)系列操作后生成多尺度的attention maps,具體過(guò)程如圖6(b)所示。本文方法通過(guò)融合大小與通道數(shù)一致的特征信息,結(jié)合網(wǎng)絡(luò)底層局部信息和高層全局語(yǔ)義信息對(duì)車輛的多種特征進(jìn)行高效提取,可有效減少車輛檢測(cè)中出現(xiàn)的誤檢和漏檢現(xiàn)象。

    圖6 改進(jìn)后的堆疊沙漏網(wǎng)絡(luò)結(jié)構(gòu)及流程框圖

    2.3 車輛檢測(cè)框的回歸

    在二維平面中確定目標(biāo)車輛的檢測(cè)框有多種表示方法,本文采用4個(gè)要素(xt,yt,xb,yb)回歸出車輛的檢測(cè)框。其中,xt和yt表示目標(biāo)車輛左上角點(diǎn)位置信息;xb和yb表示目標(biāo)車輛右下角點(diǎn)位置信息。在堆疊沙漏網(wǎng)絡(luò)的輸出端經(jīng)角池化層處理后得到多個(gè)目標(biāo)車輛的角點(diǎn)位置信息,由于角點(diǎn)位置信息是基于下采樣后的圖像中計(jì)算得到的,還需將角點(diǎn)位置信息映射回原始圖像中。此外在一副圖像中得到的角點(diǎn)位置信息繁多,需對(duì)角點(diǎn)位置信息進(jìn)行分組操作,以確定屬于同一目標(biāo)車輛的左上角點(diǎn)和右下角點(diǎn)。

    2.3.1 角點(diǎn)位置預(yù)測(cè)分支

    假設(shè)原始圖像大小為W×H,角點(diǎn)位置預(yù)測(cè)分支的大小為×C,R表示下采樣率,C表示車輛類別數(shù),本文中設(shè)置R=4和C=1。該分支經(jīng)sigmoid激活函數(shù)歸一化后,×C大小的特征圖上每一點(diǎn)表示該位置下含有車輛目標(biāo)角點(diǎn)的概率值。

    式中,σ值為平衡正負(fù)樣本系數(shù),本文設(shè)置σ值為車輛目標(biāo)短邊的0.2倍,對(duì)于角點(diǎn)位置預(yù)測(cè)分支,損失函數(shù)采用下式計(jì)算。

    式中:α和β為超參數(shù),本文分別設(shè)置值為2和4;Pxyc為真值熱圖中位置(x、y)處某個(gè)目標(biāo)車輛的角點(diǎn)預(yù)測(cè)值。

    2.3.2 角點(diǎn)坐標(biāo)誤差修訂預(yù)測(cè)分支和角點(diǎn)分組預(yù)測(cè)分支

    由于堆疊沙漏網(wǎng)絡(luò)的輸入圖像大小和輸出圖像大小均為原始圖像的1/R,在真值熱圖中預(yù)測(cè)到的目標(biāo)車輛角點(diǎn)映射回原始圖像中存在坐標(biāo)誤差的情況。假設(shè)原始圖像位置(x、y)處存在第k個(gè)目標(biāo)車輛,其在真值熱圖中的坐標(biāo)偏差為

    在網(wǎng)絡(luò)訓(xùn)練時(shí),角點(diǎn)坐標(biāo)誤差修訂項(xiàng)采用smoothL1損失,即

    式中:N為圖像中目標(biāo)車輛個(gè)數(shù);Pk為預(yù)測(cè)值的坐標(biāo)偏差。

    在角點(diǎn)分組預(yù)測(cè)分支中,旨在確定屬于同一目標(biāo)車輛的一對(duì)角點(diǎn),對(duì)每個(gè)角點(diǎn)生成一個(gè)嵌入向量(embedding vector),如果一對(duì)角點(diǎn)屬于同一目標(biāo)車輛,則這對(duì)角點(diǎn)的嵌入向量距離應(yīng)足夠近,反之,則應(yīng)非常遠(yuǎn)。本文采用式Lpull距離損失和式Lpush距離損失分別反映角點(diǎn)之間的距離遠(yuǎn)近,即

    式中:etk和ebk分別表示圖像中第k個(gè)目標(biāo)車輛的左上角點(diǎn)嵌入向量和右下角點(diǎn)嵌入向量;ek為etk和ebk的均值。

    網(wǎng)絡(luò)訓(xùn)練時(shí),完整的損失函數(shù)采用帶有懲罰項(xiàng)的組合損失函數(shù)Lloss,即

    3 實(shí)驗(yàn)分析

    3.1 數(shù)據(jù)集和實(shí)驗(yàn)平臺(tái)

    本次實(shí)驗(yàn)選用公開(kāi)的KITTI數(shù)據(jù)庫(kù)[16]和實(shí)驗(yàn)室自制數(shù)據(jù)庫(kù)對(duì)模型進(jìn)行訓(xùn)練和評(píng)估,其中KITTI數(shù)據(jù)庫(kù)包含了多個(gè)場(chǎng)景采集的真實(shí)圖像數(shù)據(jù),每幅圖像含有的車輛數(shù)多達(dá)15輛,并伴有不同程度的遮擋和截?cái)?。自制?shù)據(jù)庫(kù)為從網(wǎng)上搜集的4 000張含車輛圖片。根據(jù)實(shí)驗(yàn)需要只保留KITTI數(shù)據(jù)庫(kù)中類別為小汽車(Car)的標(biāo)簽文件,處理后得到6 684張圖片,同時(shí)將KITTI數(shù)據(jù)庫(kù)和自制數(shù)據(jù)庫(kù)改為PASCAL VOC2007數(shù)據(jù)格式,訓(xùn)練集和測(cè)試集按3∶1比例劃分。

    本次實(shí)驗(yàn)的仿真平臺(tái)是PyCharm,使用Py-Torch深度學(xué)習(xí)框架,計(jì)算機(jī)配置為Intel?CoreTMi7-6700H CPU,16G內(nèi)存,Nvidia GeForce GTX 2070 GPU,操作系統(tǒng)為Ubuntu 16.04.2。網(wǎng)絡(luò)參數(shù)配置如下:最大迭代次數(shù)為500 000步;批量大小設(shè)置為8;采用學(xué)習(xí)率衰減的方式訓(xùn)練,初始學(xué)習(xí)率為0.000 25,網(wǎng)絡(luò)迭代400 000步時(shí),學(xué)習(xí)率下調(diào)10倍。

    為了降低網(wǎng)絡(luò)過(guò)擬合的風(fēng)險(xiǎn),此次實(shí)驗(yàn)采用圖像增廣技術(shù)(如水平翻轉(zhuǎn)、色彩抖動(dòng)、亮度和飽和度的調(diào)整等)來(lái)擴(kuò)大訓(xùn)練數(shù)據(jù)集的規(guī)模。

    3.1.1 KITTI數(shù)據(jù)庫(kù)測(cè)試

    本文選擇Faster R-CNN[5]、YOLOv3[6]、SSD[7]、CornerNet[8]、CornerNet-Saccade[10]與 改 進(jìn) 的CornerNet-Saccade車輛檢測(cè)算法進(jìn)行實(shí)驗(yàn)數(shù)據(jù)對(duì)比,所有算法均在KITTI數(shù)據(jù)庫(kù)中進(jìn)行訓(xùn)練和測(cè)試。鑒于本次實(shí)驗(yàn)研究為二分類問(wèn)題(含背景),采用平均精確率AP(average precision)以及檢測(cè)速度FPS(frames per second)作為算法性能評(píng)價(jià)指標(biāo)。Precision(精確率)與Recall(召回率)計(jì)算方式如下。

    式中:TP表示小汽車被正確預(yù)測(cè)的數(shù)目;FP表示背景被預(yù)測(cè)為小汽車的數(shù)目;FN表示小汽車被預(yù)測(cè)為背景的數(shù)目。

    表2列出了不同算法在KITTI數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果,可以看出在前3種皆采用錨點(diǎn)框的算法中,YOLOv3的綜合性能最佳。從網(wǎng)絡(luò)結(jié)構(gòu)角度考慮,YOLOv3由于采用殘差連接的網(wǎng)絡(luò)結(jié)構(gòu),較好地解決了由網(wǎng)絡(luò)深度帶來(lái)的網(wǎng)絡(luò)性能退化的問(wèn)題,同時(shí)網(wǎng)絡(luò)層之間實(shí)現(xiàn)了特征信息的融合,構(gòu)成的特征金字塔[17]結(jié)構(gòu)更有利于車輛檢測(cè)和分類。后3種算法均采用了關(guān)鍵點(diǎn)代替錨點(diǎn)框的方法,降低了模型訓(xùn)練時(shí)其性能出現(xiàn)較大波動(dòng)的可能性,在精度方面要遠(yuǎn)好于前3種算法。其中CornerNet實(shí)現(xiàn)的AP僅為90.45%,比CornerNet-Saccade和本文算法分別低0.79%和2.11%,但相比前3種性能最佳的YOLOv3,AP提升了0.61%,這表明了采用關(guān)鍵點(diǎn)代替錨點(diǎn)框的方法在車輛檢測(cè)任務(wù)中具有一定的優(yōu)勢(shì)性。

    表2 不同算法在KITTI數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果

    本文所提算法在KITTI數(shù)據(jù)庫(kù)上實(shí)現(xiàn)了92.56%的AP和40 FPS的檢測(cè)速度,在平均精確率和實(shí)時(shí)性上達(dá)到了最好的平衡。由于本文在網(wǎng)絡(luò)中采用參數(shù)量更少的瓶頸殘差單元作為特征提取的基本模塊,檢測(cè)速度快于大多數(shù)算法,同時(shí)引入Dense Block的層間密集連接結(jié)構(gòu)改善殘差單元的特征提取能力并增加更小尺度的attention maps以提高小目標(biāo)車輛檢測(cè)的精度,使得本文算法獲得最高的AP值。實(shí)驗(yàn)結(jié)果表明了本文所提算法更能適用于車輛檢測(cè)任務(wù),并能在保證檢測(cè)速度的同時(shí)實(shí)現(xiàn)高精度的檢測(cè)效果。

    以小汽車的Recall為橫坐標(biāo),小汽車的Precision為縱坐標(biāo),繪制出不同算法在KITTI數(shù)據(jù)庫(kù)上的PR曲線如圖7所示,其中各算法對(duì)應(yīng)的PR曲線下的面積為AP。通過(guò)比較圖7中各算法對(duì)應(yīng)的PR曲線下的面積,本文算法的綜合性能要優(yōu)于其他算法。

    圖7 不同算法在KITTI數(shù)據(jù)庫(kù)上的PR曲線

    3.1.2 自制數(shù)據(jù)庫(kù)測(cè)試

    為了驗(yàn)證本文算法模型的泛化性能和改進(jìn)方法的有效性,將目標(biāo)檢測(cè)通用算法Faster RCNN[5]、YOLOv3[6]、SSD[7]、CornerNet[8]、Corner-Net-Saccade[10]與本文算法在自制數(shù)據(jù)庫(kù)上做實(shí)驗(yàn)對(duì)比,同時(shí)為了更加直觀地比較原算法和本文算法的性能差異,另單獨(dú)對(duì)比2種算法的性能衡量指標(biāo)。其中自制數(shù)據(jù)庫(kù)中測(cè)試集有1 000張含車輛(小汽車)圖片,車輛標(biāo)注框數(shù)為4 529個(gè)。

    表3顯示了不同算法在自制數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果。從表中可以看出,各種算法在自制數(shù)據(jù)庫(kù)上的綜合表現(xiàn)相比KITTI數(shù)據(jù)庫(kù)有較大提升,究其原因,自制數(shù)據(jù)庫(kù)中每幅圖像中含有的車輛數(shù)更少,且車輛之間存在的遮擋情況較少,更有利于各算法對(duì)車輛位置和類別的預(yù)測(cè)。其中,F(xiàn)aster RCNN和SSD獲得了78.36%和84.61%的AP,比YOLOv3分別低11.75%和5.5%,盡管YOLOv3的檢測(cè)速度不是最快,但其綜合性能相比其他2種錨點(diǎn)框類算法仍為最佳。本文算法的AP為95.21%,要高于其他算法,同時(shí)檢測(cè)速度相比CornerNet和CornerNet-Saccade分別提高了33 FPS和8 FPS,但與SSD和YOLOv3的檢測(cè)速度相比還有較小的差距。通過(guò)分析發(fā)現(xiàn),本文算法雖對(duì)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行了參數(shù)上的簡(jiǎn)化,但在目標(biāo)檢測(cè)框的回歸時(shí),由于圖像中存在的目標(biāo)車輛多,在預(yù)測(cè)出準(zhǔn)確的目標(biāo)角點(diǎn)時(shí),也會(huì)預(yù)測(cè)出大量的錯(cuò)誤角點(diǎn),在對(duì)這些角點(diǎn)分組確認(rèn)時(shí)所花費(fèi)的時(shí)間較多,這降低了本文算法的檢測(cè)速度。綜合衡量各算法在自制數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果,本文算法能夠以最佳的精度完成車輛檢測(cè)任務(wù),并以40 FPS的檢測(cè)速度達(dá)到實(shí)時(shí)檢測(cè)的要求,進(jìn)一步表明了本文算法能適應(yīng)不同場(chǎng)景下的車輛檢測(cè)任務(wù),相比其他算法具有更好的應(yīng)用前景。

    表3 不同算法在自制數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果

    表4顯示了2種算法在自制數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果。其中檢測(cè)車輛數(shù)表示測(cè)試集中總共檢測(cè)出的小汽車數(shù);漏檢數(shù)表示沒(méi)有檢測(cè)到的小汽車數(shù);誤檢數(shù)表示把背景作為小汽車數(shù)。從表4中可看出,CornerNet-Saccade存在比較嚴(yán)重的漏檢和誤檢現(xiàn)象。相反,本文算法在提高了檢測(cè)車輛數(shù)的同時(shí),也降低了漏檢數(shù)和誤檢數(shù),并使精確率和召回率分別提高了3.8%和8.5%,這進(jìn)一步說(shuō)明了本文算法能夠適應(yīng)不同場(chǎng)景下的車輛檢測(cè)任務(wù),并能準(zhǔn)確地對(duì)車輛進(jìn)行檢測(cè),可用于實(shí)際交通場(chǎng)景下的車輛檢測(cè)任務(wù)。圖8顯示了本文算法在KITTI數(shù)據(jù)庫(kù)和自制數(shù)據(jù)庫(kù)上的檢測(cè)效果。

    表4 不同算法在KITTI數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果

    圖8 本文算法在KITTI數(shù)據(jù)庫(kù)和自制數(shù)據(jù)庫(kù)上的檢測(cè)效果

    4 結(jié)論

    對(duì)CornerNet-Saccade檢測(cè)框架進(jìn)行改進(jìn),將其應(yīng)用到車輛檢測(cè)任務(wù)中。首先對(duì)沙漏網(wǎng)絡(luò)特征融合層的輸出額外增加一個(gè)預(yù)測(cè)attention maps模塊,實(shí)現(xiàn)小目標(biāo)車輛的精確檢測(cè);其次引入?yún)?shù)量更少的瓶頸殘差單元替換原殘差單元,并借鑒Dense Block的層間密集連接結(jié)構(gòu),形成最終的特征提取模塊。通過(guò)在KITTI數(shù)據(jù)庫(kù)和自制數(shù)據(jù)庫(kù)上的仿真實(shí)驗(yàn),結(jié)果表明:算法的綜合性能要優(yōu)于其他算法。但是本文算法的檢測(cè)速度有待進(jìn)一步提升,后續(xù)工作將圍繞CornerNet-Saccade模型壓縮與優(yōu)化加速來(lái)進(jìn)行。

    猜你喜歡
    沙漏角點(diǎn)殘差
    基于雙向GRU與殘差擬合的車輛跟馳建模
    基于殘差學(xué)習(xí)的自適應(yīng)無(wú)人機(jī)目標(biāo)跟蹤算法
    基于遞歸殘差網(wǎng)絡(luò)的圖像超分辨率重建
    基于FAST角點(diǎn)檢測(cè)算法上對(duì)Y型與X型角點(diǎn)的檢測(cè)
    有趣的沙漏
    DIY裝飾沙漏
    DIY裝飾沙漏
    回憶的沙漏
    青年歌聲(2017年12期)2017-03-15 05:20:16
    基于邊緣的角點(diǎn)分類和描述算法
    電子科技(2016年12期)2016-12-26 02:25:49
    基于圓環(huán)模板的改進(jìn)Harris角點(diǎn)檢測(cè)算法
    东阿县| 金阳县| 吉安市| 隆子县| 五莲县| 靖远县| 太湖县| 镇巴县| 闸北区| 理塘县| 扎兰屯市| 祁连县| 太谷县| 邻水| 晴隆县| 临猗县| 永安市| 泸定县| 新化县| 乃东县| 镇沅| 昌江| 澎湖县| 广灵县| 西乌珠穆沁旗| 东源县| 雅江县| 绥德县| 白银市| 五台县| 包头市| 邯郸县| 塘沽区| 寻甸| 林周县| 梧州市| 武陟县| 林口县| 怀柔区| 临泽县| 湖南省|