牛 杰, 錢 堃, 卜雄洙
(1. 常州信息職業(yè)技術(shù)學(xué)院 電子工程學(xué)院, 江蘇 常州 213164; 2. 南京理工大學(xué) 機械工程學(xué)院, 江蘇 南京 210094; 3. 東南大學(xué) 自動化學(xué)院, 江蘇 南京 210096)
視覺地點識別是移動機器人場景認知與導(dǎo)航的前提.傳統(tǒng)識別方法主要依賴手工特征,結(jié)合精心設(shè)計的分類器進行場景類別判斷,取得了較好的識別效果.但是,當機器人在現(xiàn)實世界的環(huán)境中運行更長的時間,特別是周圍環(huán)境條件發(fā)生較大變化時,傳統(tǒng)方法的識別效果明顯下降.近年來,隨著深度學(xué)習(xí)技術(shù)的發(fā)展,以卷積神經(jīng)網(wǎng)絡(luò)為代表的算法在諸如物體檢測、物體識別和場景識別等方面應(yīng)用十分廣泛.深度特征在視角變化、環(huán)境外觀變化等方面具有顯著優(yōu)勢.LI Q.等[1]根據(jù)圖像深度特征構(gòu)造相似矩陣,完成了地點識別任務(wù).P. NEUBERT等[2]針對場景季節(jié)變化所帶來的外觀變化問題,設(shè)計了卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)特征用于圖像匹配,取得了較好的試驗效果.以上方法至少存在一個問題,即由于深度網(wǎng)絡(luò)的訓(xùn)練過程費時,需要高性能的硬件設(shè)備和調(diào)優(yōu)參數(shù),研究人員傾向于使用預(yù)訓(xùn)練CNN網(wǎng)絡(luò)模型作為特征提取工具,模型的訓(xùn)練數(shù)據(jù)集都是以物體識別為目標的數(shù)據(jù)集[3].而地點識別應(yīng)用往往受到視角、光照和動態(tài)對象等因素影響,因此,直接使用預(yù)訓(xùn)練模型在整個圖像上提取特征是不合適的.
為了解決上述局限問題,研究人員試圖在圖像中智能地選擇有用信息來識別位置.N. SüNDERHAUF等[4]將似物性檢測技術(shù)引入地點識別應(yīng)用中,對深度特征的效用和視點不變特性進行了深入地研究.考慮到并非圖像中所有內(nèi)容都對表示地點的信息起到正向作用[5-6],XIN Z.等[7]提出了1種基于CNNs特征和語義信息的多尺度地標來完成地點識別任務(wù).CHEN Z.等[8]首先利用圖像顯著性檢測技術(shù)篩選出顯著物體,并提取CNN特征,系列試驗表明該方法對于視角和環(huán)境的外觀變化具有一定的魯棒性.然而,上述方法在圖像區(qū)域篩選時缺乏自上而下的過濾機制.例如,在識別停車場地點時,如果誤用汽車或行人等時變對象的特征,就會將錯誤信息引入地點識別.
為此,筆者提出1種基于YOLOv3算法和深度特征的地點識別方法,用以解決圖像區(qū)域篩選時的過濾機制問題,從而更好地提高視覺地點的識別效果.
算法整體流程圖如圖1所示.首先利用先進的顯著目標檢測算法分割出候選路標信息,然后采用改進的YOLOv3算法,將不適合環(huán)境建模的區(qū)域去除,最后提取篩選后的路標深度特征,降維后實施圖像匹配.不同于對整個圖像進行特征提取和匹配,本方法僅在經(jīng)過2次篩選的圖像顯著區(qū)域提取深度特征,能夠為后續(xù)圖像匹配提供更加有效的信息.
圖1 算法整體流程圖
在移動機器人環(huán)境建模與定位應(yīng)用中,可以將環(huán)境中的顯著物體作為路標來表示環(huán)境,該策略在未知自然環(huán)境相關(guān)機器人應(yīng)用中有著良好的應(yīng)用前景[8].HOU Q.B.等[9]通過在深度網(wǎng)絡(luò)架構(gòu)內(nèi)引入跳層結(jié)構(gòu)的捷徑連接,提出了1種顯著目標檢測方法,該方法利用全卷積神經(jīng)網(wǎng)絡(luò)提取的多級和多尺度特征,為每一層提供更高級的表征.綜合考慮準確率和執(zhí)行效率等因素,筆者選擇該方法作為初始顯著路標的檢測算法.
獲得一系列初始候選路標之后,不同于直接在這些圖像上提取特征的常規(guī)做法,筆者加入了對于候選路標區(qū)域的篩選操作,以濾除掉不適合環(huán)境建模的物體類別區(qū)域.該方法基于YOLOv3算法構(gòu)建物體分類模型.YOLOv3算法采用了Darknet-53網(wǎng)絡(luò)結(jié)構(gòu),利用多尺度特征進行對象檢測,提供了9種尺度的先驗框,預(yù)測對象類別時使用logistic回歸方法中的輸出模型進行預(yù)測,以便支持多標簽對象.具體實施過程中,對原始YOLOv3算法做了修改,以提升模型性能.
首先,為了適合平均準確率指標,修改YOLOv3算法中的損失函數(shù)smoothL1 Loss為損失函數(shù)IOULoss,用以對檢測框做回歸.其次,針對輸入圖像,運用YOLOv3算法將其映射到3個尺度的輸出張量.在輸入尺度為416×416的情況下,特征圖的尺度分別為13×13、 26×26和52×52.然而,原始YOLOv3算法網(wǎng)絡(luò)中用到的上采樣操作本身就是1種相對比較耗時的過程,由于本研究中的輸入圖像已經(jīng)經(jīng)過顯著目標檢測算法分割,可以認為在小尺度上不存在其他物體.因此,在不損失網(wǎng)絡(luò)精度和網(wǎng)絡(luò)思想的前提下去掉網(wǎng)絡(luò)的上采樣過程,只選擇13×13的單一尺度進行計算.為此,聚類出的先驗框數(shù)量可以從10 647個(即13×13×3+26×26×3+52×52×3個)減少到了507個(即13×13×3個),從而提升了處理速度.
根據(jù)KOH P. W.等[10]的研究,遷移學(xué)習(xí)訓(xùn)練時,即使訓(xùn)練集中的單個樣本也會影響最終測試損失.受此啟發(fā),筆者采用WANG T.Y.等[11]提出的針對訓(xùn)練數(shù)據(jù)的提純方案,選取在ImageNet數(shù)據(jù)集上預(yù)訓(xùn)練的Darknet-53作為主干網(wǎng)絡(luò)提取圖像特征數(shù)據(jù),并在COCO檢測數(shù)據(jù)集上預(yù)訓(xùn)練,得到初始模型權(quán)重參數(shù).然后根據(jù)該模型計算實際數(shù)據(jù)集中每個樣本的影響,并刪除減少驗證集損失的樣本.
遵循上述數(shù)據(jù)集提純步驟獲得新優(yōu)化的訓(xùn)練集后,根據(jù)預(yù)先人為指定的不適于環(huán)境建模的物體類別數(shù)量,修改相應(yīng)配置文件參數(shù),進行物體分類模型訓(xùn)練.隨后將顯著圖像送入模型,再將不適合環(huán)境建模的特定目標類別圖像刪除,從而完成對于顯著路標區(qū)域的二次篩選.
(1-ε)‖u-v‖2≤‖f(u)-f(v)‖2≤
(1+ε)‖u-v‖2,
(1)
式中:u和v為原始高維空間的向量,u,v∈Rd;f為映射函數(shù),可以用投影的方法獲得,定義矩陣A∈Rk×d,f(u)-f(v)就轉(zhuǎn)化為Au-Av.根據(jù)上述引理,筆者應(yīng)用經(jīng)典的高斯隨機投影[15],將原始特征轉(zhuǎn)移到低維度的空間,試驗中將64 986維降到1 024維進行后續(xù)圖像匹配計算.
經(jīng)過上述步驟的圖像匹配環(huán)節(jié)后,為確定當前圖像a和候選地點圖像b的相似度,提取經(jīng)過篩選的對應(yīng)圖像候選路標,并設(shè)計式(2)進行相似度計算,即
(2)
式中:Sab為相似度;dij為經(jīng)過處理后的當前圖像顯著區(qū)域描述向量與數(shù)據(jù)庫中地點的區(qū)域描述向量的余弦距離;na和nb分別為從圖像a和b中提取出的顯著路標數(shù)量,最終選取相似度得分最高的數(shù)據(jù)庫圖像所在地點標簽作為結(jié)果輸出.
為驗證算法性能,筆者選取地點識別應(yīng)用中公開的3個數(shù)據(jù)集進行算法對比測試.3個數(shù)據(jù)集名稱及各自特點如表1所示.
表1 測試數(shù)據(jù)集描述
對比方法包括FAB-MAP[16]、SeqSLAM[17]和Place-CNN[14]等3個先進方法.其中,F(xiàn)AB-MAP是基于人工特征進行地點識別和建圖的經(jīng)典方法.SeqSLAM是基于視頻序列的方法,它使用全局HOG描述符,被認為是最成功的地點識別算法之一.Place-CNN是在Places205數(shù)據(jù)集上訓(xùn)練的基于深度學(xué)習(xí)的識別模型.
圖2為Garden Point數(shù)據(jù)集準確率-召回率(precision-recall,PR)關(guān)系的擬合曲線.根據(jù)測試方法在Garden Point數(shù)據(jù)集上的表現(xiàn)可知:本研究方法明顯優(yōu)于其他方法,平均準確率為74.54%;在該數(shù)據(jù)集上,F(xiàn)AB-MAP方法的平均準確率僅為10.40%,原因是FAB-MAP是專注于在地圖和定位應(yīng)用程序中使用的位置識別方法,F(xiàn)AB-MAP的人工特征在處理環(huán)境變化方面沒有深度特征的優(yōu)勢;在該數(shù)據(jù)集上SeqSLAM方法的性能優(yōu)于Place-CNN方法,這主要是因為SeqSLAM方法采用序列匹配代替單個圖像匹配來進行位置識別,這與當前數(shù)據(jù)集的圖像特征非常吻合.
圖2 Garden Point數(shù)據(jù)集PR曲線
在St.Lucia數(shù)據(jù)集上的PR曲線如圖3所示.由圖3可知:由于該數(shù)據(jù)集中的圖像在亮度和外觀上變化較大,基于人工特征的FAB-MAP方法和SeqSLAM方法均表現(xiàn)不佳;當基于深度特征時,可以觀察到Place-CNN方法的準確率提升明顯;在該數(shù)據(jù)集上,本研究方法表現(xiàn)最好,平均準確率達到73.36%,比Place-CNN平均準確率提高約5.00%,這主要得益于相較在整幅圖像上的特征提取,本研究方法使用了篩選后的顯著路標深度特征,應(yīng)對環(huán)境變化更加具有魯棒性.
圖3 St. Lucia數(shù)據(jù)集PR曲線
Nordland數(shù)據(jù)集上的PR曲線如圖4所示.由圖4可知,本研究方法相較于其他方法依然具有較大性能優(yōu)勢,平均準確率達到了65.76%,相比于SeqSLAM(平均準確率為30.30%),提高了35.00%以上.此外,值得注意的是,Place-CNN方法在Nordland數(shù)據(jù)集上的效果較差,這主要是因為數(shù)據(jù)集中序列的外觀發(fā)生了巨大變化,并且每個季節(jié)僅記錄1次.由于Place-CNN方法從整個圖像中提取特征,因此存在很多冗余特征.當環(huán)境外觀發(fā)生巨大變化時,模型的性能會嚴重下降.因此,采用本研究方法,3個數(shù)據(jù)集上平均識別準確率達到71.22%.
圖4 Nordland數(shù)據(jù)集PR曲線
1) 筆者提出1種利用YOLOv3算法和深度特征進行地點識別的方法.與在整個圖像上提取特征相比,本研究方法可以自動選擇圖像中的顯著物體作為候選路標區(qū)域.
2) 為獲得更準確的路標信息,筆者設(shè)計了改進的YOLOv3算法網(wǎng)絡(luò),有效地刪除不適合建模的特定物體類別.
3) 多個數(shù)據(jù)集上的對比試驗結(jié)果顯示,該方法的平均識別準確率最高,達到71.22%,在PR曲線指標上也取得了最佳結(jié)果.
此外,本方法也存在未考慮動態(tài)物體對環(huán)境建模的影響,以及模型相對比較復(fù)雜等問題.后續(xù)的研究中,將嘗試以端到端的方式優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),在建模過程中去除動態(tài)物體干擾,引入暹羅網(wǎng)絡(luò)判斷相似性等策略,進一步提升模型地點識別性能.