白 玉, 侯志強(qiáng), 劉曉義, 馬素剛, 余旺盛, 蒲 磊
(1.西安郵電大學(xué)計(jì)算機(jī)學(xué)院, 西安, 710121;2.西安郵電大學(xué)陜西省網(wǎng)絡(luò)數(shù)據(jù)分析與智能處理重點(diǎn)實(shí)驗(yàn)室, 西安, 710121;3.空軍工程大學(xué)信息與導(dǎo)航學(xué)院, 西安, 710077)
目標(biāo)檢測作為計(jì)算機(jī)視覺領(lǐng)域的重要研究內(nèi)容,廣泛應(yīng)用于目標(biāo)跟蹤、行人識別、醫(yī)學(xué)圖像、視頻監(jiān)控和智能機(jī)器等方面[1-5]。目標(biāo)檢測的主要任務(wù)是對圖像中預(yù)定義類別的實(shí)例目標(biāo)進(jìn)行高效、精確的識別與定位。
近年來,隨著深度學(xué)習(xí)技術(shù)的迅速發(fā)展,出現(xiàn)了越來越多與之相關(guān)的目標(biāo)檢測算法。按照是否有區(qū)域候選框(Region Proposals)生成階段,可以將基于深度學(xué)習(xí)的檢測算法分成2類:基于區(qū)域候選框的檢測算法和非基于區(qū)域候選框的檢測算法?;趨^(qū)域候選框的檢測算法首先生成區(qū)域候選框,然后使用深度學(xué)習(xí)網(wǎng)絡(luò)進(jìn)行特征提取,以獲得特征對應(yīng)的類別信息和坐標(biāo)信息。這類算法的檢測精度較高,但是速度較慢,主要算法有SPP-NET[6]和Faster R-CNN[7]等。非基于區(qū)域候選框的檢測算法不產(chǎn)生候選框,直接使用深度學(xué)習(xí)網(wǎng)絡(luò)對圖像中每個(gè)位置存在目標(biāo)的可能性進(jìn)行預(yù)測。這類算法具有速度快、泛化能力強(qiáng)等優(yōu)點(diǎn),主要算法有SSD[8]和YOLOv3[9]等。
以上所有的目標(biāo)檢測算法均是對可見光圖像進(jìn)行檢測,但在一些特殊場景中,紅外圖像比可見光圖像的表現(xiàn)更好。與可見光圖像相比,紅外圖像主要呈現(xiàn)目標(biāo)的溫度信息,能夠抵抗遮擋等情況,在一些光照不足的環(huán)境或者隱蔽場合中,能夠很好地突出目標(biāo),例如,夜間監(jiān)控場景下的行人和復(fù)雜海天背景下的船舶等。檢測算法可以使用在精度和速度方面都有很好表現(xiàn)的基于深度學(xué)習(xí)的目標(biāo)檢測算法[10-11]。但是,紅外圖像存在對比度較低、細(xì)節(jié)信息缺失嚴(yán)重等問題,因此,將可見光圖像和紅外圖像進(jìn)行融合可以實(shí)現(xiàn)信息互補(bǔ),以達(dá)到提高檢測精度的目的。
為了實(shí)現(xiàn)這一目標(biāo),針對可以同時(shí)獲取可見光圖像和紅外圖像的應(yīng)用場景,本文提出了一種基于決策級融合的目標(biāo)檢測算法,主要工作如下:建立并標(biāo)注了包含可見光圖像和紅外圖像的實(shí)驗(yàn)數(shù)據(jù)集,用于重新訓(xùn)練YOLOv3網(wǎng)絡(luò)。提出了基于決策級圖像融合的方式,用于對可見光圖像和紅外圖像的檢測結(jié)果進(jìn)行融合,并將融合后的檢測結(jié)果作為對應(yīng)的融合圖像中目標(biāo)的檢測結(jié)果,從而實(shí)現(xiàn)對融合圖像的準(zhǔn)確檢測。通過實(shí)驗(yàn)驗(yàn)證,將本文算法和其他算法的檢測結(jié)果進(jìn)行對比,本文算法可以檢測到更多的目標(biāo)并且減少誤檢,進(jìn)而提高目標(biāo)檢測的準(zhǔn)確性。
YOLOv3網(wǎng)絡(luò)通過主體網(wǎng)絡(luò)Darknet-53進(jìn)行特征提取,并使用檢測網(wǎng)絡(luò)進(jìn)行多尺度預(yù)測。其中,Darknet-53在全卷積的基礎(chǔ)上添加了殘差(Residual)結(jié)構(gòu)[12],殘差層的結(jié)構(gòu)如圖1所示,帶加號的圈表示相加的操作,表示如下:
R(x)=x+F(x)
(1)
式中:x和F(x)分別是殘差層的輸入,F(xiàn)(x)是x經(jīng)過2次卷積之后得到的結(jié)果。
圖1 殘差層結(jié)構(gòu)圖
在Darknet-53之后使用特征交互層,在每個(gè)特征圖上預(yù)測3個(gè)錨點(diǎn)框(Anchor Boxes),進(jìn)而實(shí)現(xiàn)目標(biāo)位置的預(yù)測。在輸出預(yù)測結(jié)果之前,先進(jìn)行特征融合,使用步長為2的卷積操作進(jìn)行下采樣,然后對得到的特征圖進(jìn)行拼接,使特征獲得更加豐富的語義信息。
在特征圖中,每個(gè)像素點(diǎn)網(wǎng)格預(yù)測3個(gè)邊界框,如圖2[9]所示。其中,cx和cy分別是網(wǎng)格的坐標(biāo)偏移量,bx和by分別是邊界框中心點(diǎn)的橫坐標(biāo)和縱坐標(biāo),bw和bh分別是邊界框的寬和高,pw和ph分別是預(yù)設(shè)的錨點(diǎn)框映射到特征圖中的寬和高,σ是sigmoid函數(shù),tx和ty分別是網(wǎng)絡(luò)預(yù)測的目標(biāo)中心點(diǎn)的橫坐標(biāo)和縱坐標(biāo),tw和th分別是網(wǎng)絡(luò)預(yù)測的目標(biāo)的寬和高。
圖2 邊界框預(yù)測
最后,使用非極大值抑制(Non Maximum Suppression, NMS)算法[13]對邊界框進(jìn)行篩選,獲得最終的目標(biāo)邊界框。
圖像融合是通過對多個(gè)原圖像的信息進(jìn)行相加得到融合圖像,然后對融合圖像進(jìn)行分析處理的過程。根據(jù)融合處理的特點(diǎn)和抽象程度,將圖像融合方式[14-15]分為3類:像素級圖像融合、特征級圖像融合和決策級圖像融合。
像素級圖像融合是指選取融合策略對嚴(yán)格配準(zhǔn)的源圖像的像素點(diǎn)進(jìn)行處理,從而得到融合圖像的過程,例如使用基于金字塔變換[16]和小波變化[17]這類算法。這種融合方式的準(zhǔn)確性較高,但是對像素之間的關(guān)系考慮不夠全面,處理時(shí)的計(jì)算量較大,容易產(chǎn)生大量的冗余信息。
特征級圖像融合是指提取源圖像中感興趣區(qū)域的目標(biāo)特征,并對這些特征信息進(jìn)行融合,最后得到融合圖像的過程,例如使用文獻(xiàn)[12,18]這類算法。在特征提取過程中,只保留重要的信息,對于不重要的信息和冗余的信息通常借助降維等方式去除。這種融合方式壓縮了源圖像的信息,計(jì)算速度有明顯提升,但是會丟失一些細(xì)節(jié)信息。
決策級圖像融合是一種基于認(rèn)知模型的融合方式,以特征提取為基礎(chǔ),對圖像的特征信息進(jìn)行識別和判斷,并根據(jù)實(shí)際需要,選擇合適的決策方式對圖像進(jìn)行全局最優(yōu)處理的過程,例如使用文獻(xiàn)[19-20]這類算法。這種融合方式的算法復(fù)雜度不高,具有一定的靈活性,針對特殊場景更加容易實(shí)現(xiàn),容錯能力強(qiáng)。本文使用了決策級融合方式對可見光圖像和紅外圖像的檢測結(jié)果進(jìn)行融合。
本文提出的基于決策級融合的目標(biāo)檢測算法主要包括3個(gè)部分:建立實(shí)驗(yàn)數(shù)據(jù)集;使用YOLOv3作為基礎(chǔ)網(wǎng)絡(luò)對可見光圖像和紅外圖像分別進(jìn)行檢測;設(shè)計(jì)決策級融合方式對檢測結(jié)果進(jìn)行融合。
2.1.1 數(shù)據(jù)集的分類
實(shí)驗(yàn)使用的圖像均來源于李成龍團(tuán)隊(duì)建立的RGBT210數(shù)據(jù)集[21],從該數(shù)據(jù)集中選取了5 105幅可見光圖像和相應(yīng)的5 105幅紅外圖像,并確定了10類目標(biāo),分別為“kite”“dog”“car”“toy”“ball”“plant”“person”“bicycle”“umbrella”和“motorcycle”。表1為實(shí)驗(yàn)數(shù)據(jù)集中10類目標(biāo)的占比情況。
表1 數(shù)據(jù)集目標(biāo)占比情況
2.1.2 數(shù)據(jù)集的處理
本文使用標(biāo)注工具LabelImg進(jìn)行圖像標(biāo)注,以不同顏色和尺寸的矩形框確定目標(biāo)的類別和位置。為了提高實(shí)驗(yàn)數(shù)據(jù)的數(shù)量,通過加噪、改變圖像對比度和直方圖均衡化等圖像增強(qiáng)方式對原始圖像進(jìn)行處理,共獲得了15 315幅可見光圖像和相應(yīng)的15 315幅紅外圖像,并從中隨機(jī)選取了對應(yīng)的12 000 幅圖像作為訓(xùn)練集圖像,3 315幅圖像作為測試集圖像。
2.1.3 標(biāo)注結(jié)果樣例
圖3為實(shí)驗(yàn)數(shù)據(jù)集中4組圖像的標(biāo)注結(jié)果圖,從圖中可以看出,對圖像中不同位置和不同尺寸的目標(biāo)“car”和“person”進(jìn)行了標(biāo)注。其中,第1行是可見光圖像的標(biāo)注結(jié)果圖,第2行是與可見光圖像分別對應(yīng)的紅外圖像的標(biāo)注結(jié)果圖。
圖3 數(shù)據(jù)集標(biāo)注結(jié)果樣例
由于紅外圖像和可見光圖像攜帶不同的信息,存在一定的差異性,而且YOLOv3網(wǎng)絡(luò)的預(yù)訓(xùn)練模型是通過對可見光圖像進(jìn)行訓(xùn)練得到的,不適用于對紅外圖像進(jìn)行檢測。因此,為了保證檢測結(jié)果的準(zhǔn)確性,本文使用可見光圖像數(shù)據(jù)集和紅外圖像數(shù)據(jù)集中的訓(xùn)練集分別對YOLOv3網(wǎng)絡(luò)進(jìn)行訓(xùn)練。
在進(jìn)行網(wǎng)絡(luò)訓(xùn)練之前,修改目標(biāo)類別為10,初學(xué)習(xí)率為0.000 01,批尺寸(BatchSize)為64,迭代次數(shù)為500 000次。然后,進(jìn)行代碼編譯,編譯通過后開始訓(xùn)練,并對訓(xùn)練過程中生成的模型進(jìn)行保存。最后,使用訓(xùn)練完成的網(wǎng)絡(luò)模型對相應(yīng)的可見光圖像測試集和紅外圖像測試集進(jìn)行目標(biāo)檢測。
為了更好地表達(dá)本文提出的決策級融合的設(shè)計(jì)思路,下面以可見光圖像中某一目標(biāo)A的實(shí)際檢測結(jié)果為例進(jìn)行詳細(xì)說明。
2.3.1 判定目標(biāo)A是否在可見光圖像中被準(zhǔn)確檢測
如果目標(biāo)A的檢測框的置信度小于閾值α,說明檢測結(jié)果不準(zhǔn)確,則舍棄該結(jié)果;如果檢測框的置信度大于或等于設(shè)定的閾值α,說明檢測結(jié)果準(zhǔn)確,并保留該結(jié)果。
Dbv≥α,IoU(bv,br)<β
(2)
式中:Dbv是bv的置信度;bv和br分別是目標(biāo)A的檢測框和相應(yīng)的紅外圖像中與目標(biāo)A同類別的檢測框;IoU(bv,br)是bv和br的交并比;α和β均為閾值。
這種方法同樣適用于判定紅外圖像中某一目標(biāo)的實(shí)際檢測結(jié)果是否準(zhǔn)確的情況。其中,閾值α(0≤α≤1,步長為0.1)的選擇見表2。
表2 選擇閾值α
從表2可以看出,當(dāng)α≥0.5時(shí),算法的平均準(zhǔn)確度較高并呈現(xiàn)遞增趨勢,因此,當(dāng)目標(biāo)A的檢測框的置信度大于或等于0.5時(shí),表明目標(biāo)A的檢測結(jié)果是準(zhǔn)確的。
2.3.2 判定目標(biāo)A是否在紅外圖像中被準(zhǔn)確檢測
結(jié)合式(2),在確保目標(biāo)A在可見光圖像中的檢測結(jié)果是準(zhǔn)確的前提下,從相應(yīng)的紅外圖像中選擇與目標(biāo)A的檢測框類別相同的檢測框,并計(jì)算這些檢測框與目標(biāo)A的檢測框的交并比IoU。如果IoU<β,說明紅外圖像中的這些檢測框檢測的不是目標(biāo)A,即目標(biāo)A只在可見光圖像中被準(zhǔn)確檢測到,并將該結(jié)果作為融合圖像中對應(yīng)目標(biāo)的檢測結(jié)果;如果IoU≥β,說明紅外圖像的這些檢測框中存在目標(biāo)A的檢測框,進(jìn)而從中選擇與目標(biāo)A的檢測框的中心點(diǎn)距離最小且置信度大于或等于閾值α的檢測框,則該檢測框?yàn)槟繕?biāo)A在紅外圖像中的檢測框,即目標(biāo)A在可見光圖像和紅外圖像中被同時(shí)準(zhǔn)確檢測到。這種方法同樣適用于判定在紅外圖像中被準(zhǔn)確檢測到的某一目標(biāo)是否在相應(yīng)的可見光圖像中被準(zhǔn)確檢測。其中,閾值β(0≤β≤1,步長為0.1)的選擇如表3所示。
Dbv≥α,Dbr1≥α,IoU(bv,br)≥β
(3)
式中:Dbr1是br1的置信度;br1是與bv的中心點(diǎn)距離最小且置信度大于或等于閾值α的檢測框;α=0.5,β=0.6。
從表3可以看出,當(dāng)β≥0.6時(shí),算法的平均準(zhǔn)確度較高并呈現(xiàn)遞增趨勢。
表3 選擇閾值β
2.3.3 加權(quán)融合目標(biāo)A的檢測結(jié)果
本文通過加權(quán)融合的方式對可見光圖像和紅外圖像中同時(shí)準(zhǔn)確檢測到的目標(biāo)A的檢測框位置進(jìn)行融合,從而得到融合圖像中對應(yīng)目標(biāo)的準(zhǔn)確檢測框位置。其中,加權(quán)融合的計(jì)算表示為:
Rf=θvRv+θrRr
(4)
式中:Rv和Rr分別是可見光圖像和紅外圖像中目標(biāo)A的準(zhǔn)確檢測框位置;θv和θr分別是Rv和Rr對應(yīng)的權(quán)值;Rf是目標(biāo)A在融合圖像中對應(yīng)目標(biāo)的檢測框位置。
加權(quán)融合的過程如表4所示。本文以不同權(quán)值組合下得到的檢測結(jié)果對應(yīng)的平均準(zhǔn)確度作為判斷依據(jù),選擇最高的平均準(zhǔn)確度對應(yīng)的權(quán)值組合,表中粗體數(shù)據(jù)為最優(yōu)的平均準(zhǔn)確度。
表4 不同權(quán)值組合下的平均準(zhǔn)確度對比
從表4可以看出,當(dāng)θv=0.7,θr=0.3時(shí),可見光圖像和紅外圖像中同一目標(biāo)的檢測結(jié)果的平均準(zhǔn)確度最高。因此,本文選擇θv=0.7,θr=0.3作為最終的權(quán)值組合,通過式(5)對目標(biāo)準(zhǔn)確檢測結(jié)果進(jìn)行合并:
U=U1+U2
(5)
式中:U1是只在可見光圖像或只在紅外圖像中檢測到的所有目標(biāo)的準(zhǔn)確結(jié)果;U2是在可見光圖像和紅外圖像中同時(shí)檢測到的所有目標(biāo)的準(zhǔn)確結(jié)果;U是可見光圖像和紅外圖像的融合圖像中所有對應(yīng)目標(biāo)的準(zhǔn)確檢測結(jié)果。
綜上可知,本文使用的決策級融合方式,不僅對目標(biāo)檢測結(jié)果的準(zhǔn)確性進(jìn)行判斷,而且對準(zhǔn)確的檢測結(jié)果進(jìn)行了處理,最終獲得了融合圖像中目標(biāo)的準(zhǔn)確檢測結(jié)果。
本文算法的具體步驟見表5,檢測過程見圖4。
表5 一種基于決策級融合的目標(biāo)檢測算法
圖4 本文算法框架
為了驗(yàn)證本文算法的有效性,在Ubuntu 18.04,64位操作系統(tǒng)和NVIDIA GeForce GTX 1080Ti的處理器下搭建Darknet-53框架和MATLAB環(huán)境進(jìn)行實(shí)驗(yàn)。使用平均準(zhǔn)確度(mean Average Precision,mAP)、召回率(Recall)、F1分?jǐn)?shù)和檢測速度(Frame Per Second,F(xiàn)PS)作為評價(jià)指標(biāo),從定性和定量2個(gè)方面對算法的檢測性能進(jìn)行分析。
為了驗(yàn)證決策級融合算法在目標(biāo)檢測過程中的有效性,將本文算法的檢測結(jié)果與使用YOLOv3網(wǎng)絡(luò)分別檢測可見光圖像和紅外圖像的結(jié)果進(jìn)行比較,如圖5所示。從圖5可以看出,YOLOv3網(wǎng)絡(luò)檢測可見光圖像時(shí)漏檢了遠(yuǎn)處的“person”,網(wǎng)絡(luò)檢測紅外圖像漏檢了“car”,本文算法在對應(yīng)的融合圖像中同時(shí)檢測到了漏檢的“person”和“car”。YOLOv3網(wǎng)絡(luò)檢測可見光圖像漏檢了左下方的“person”,檢測紅外圖像時(shí)漏檢了與可見光圖像不同的另一個(gè)“person”,而且出現(xiàn)了誤檢“car”的情況,本文算法在對應(yīng)的融合圖像中不僅同時(shí)檢測到了2個(gè)漏檢的“person”,而且修正了誤檢目標(biāo)的情況。
為了進(jìn)一步驗(yàn)證本文算法的檢測優(yōu)勢,將本文算法與其他算法的檢測結(jié)果進(jìn)行對比,由于目前沒有通用的決策級融合目標(biāo)檢測算法,因此,將本文算法的檢測結(jié)果與3種基于特征級圖像融合的檢測算法的結(jié)果進(jìn)行比較,如圖6所示。
圖5 實(shí)驗(yàn)結(jié)果對比
圖6 本文算法與3種基于特征級圖像融合的檢測算法的實(shí)驗(yàn)結(jié)果對比
圖6中,基于特征級圖像融合的檢測算法分別為先使用VSM-and-WLS算法[22]進(jìn)行圖像融合,再使用YOLOv3網(wǎng)絡(luò)對融合圖像進(jìn)行檢測(VSM-and-WLS+YOLOv3);先使用LatLRR算法[23]進(jìn)行圖像融合,再使用YOLOv3網(wǎng)絡(luò)對融合圖像進(jìn)行檢測(LatLRR+YOLOv3);先使用DenseFuse算法[24]進(jìn)行圖像融合,再使用YOLOv3網(wǎng)絡(luò)對融合圖像進(jìn)行檢測(DenseFuse+YOLOv3)。
從圖6可以看出,VSM-and-WLS、LatLRR和DenseFuse算法在對融合圖像進(jìn)行檢測時(shí),均出現(xiàn)了漏檢目標(biāo)的情況,或檢測不夠準(zhǔn)確。本文算法檢測到了圖像中的所有目標(biāo),降低了目標(biāo)的漏檢率。本文算法不僅檢測到了所有漏檢的目標(biāo),而且提高了檢測的準(zhǔn)確性。
從以上圖例的檢測結(jié)果可以看出,決策級融合檢測算法與單獨(dú)檢測可見光圖像和紅外圖像的算法相比,減少了漏檢和誤檢目標(biāo)的情況;與基于特征級圖像融合的檢測算法相比,檢測性能也均有提升,說明本文算法具有一定的優(yōu)勢。
通過比較本文算法和5種算法在相同測試集下的檢測結(jié)果,進(jìn)一步分析驗(yàn)證了本文算法的檢測性能,結(jié)果見表6。粗體為最優(yōu)的目標(biāo)檢測結(jié)果。
表6 本文算法與5種算法的檢測性能對比
從表6可以看出,與單獨(dú)檢測可見光圖像和紅外圖像的算法相比,本文算法的檢測精度分別提升了2.44%和21.89%,召回率分別提升了1.12%和17.21%;與3種基于特征級融合檢測的算法相比,算法的檢測精度分別提升了4.5%、1.74%和3.42%,召回率分別提升了0.48%、0.39%和0.58%;同時(shí),F(xiàn)1分?jǐn)?shù)和速度均有較好的表現(xiàn)。通過實(shí)驗(yàn)比較可以證明,本文提出的基于決策級融合的目標(biāo)檢測算法可以對融合圖像進(jìn)行準(zhǔn)確的目標(biāo)檢測。
本文對可見光圖像和紅外圖像的融合檢測問題進(jìn)行了研究,提出了一種基于決策級融合的目標(biāo)檢測算法。算法在使用YOLOv3網(wǎng)絡(luò)對可見光圖像和紅外圖像分別進(jìn)行訓(xùn)練的基礎(chǔ)上,借助基于決策級融合的方式對目標(biāo)檢測結(jié)果進(jìn)行處理,進(jìn)而獲得了融合圖像的準(zhǔn)確檢測結(jié)果。相較于其他算法,本文算法的檢測性能均有不同程度的提升,實(shí)現(xiàn)了對融合圖像的準(zhǔn)確檢測。在融合過程中,本文使用的手工選擇閾值和權(quán)重的方式存在一定的局限性,在接下來的工作中,我們將對融合策略進(jìn)行改進(jìn),考慮加入自適應(yīng)學(xué)習(xí)過程,并且使用更多的數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),在保證算法魯棒性的基礎(chǔ)上,進(jìn)一步提高目標(biāo)檢測的性能。