国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

融合空洞卷積神經(jīng)網(wǎng)絡的語義SLAM研究

2020-12-07 06:14:15潘琢金,戴旭文魏鑫磊王傳云
現(xiàn)代電子技術(shù) 2020年22期
關(guān)鍵詞:建圖語義物體

潘琢金, 戴旭文 魏鑫磊 王傳云

摘? 要: 為了解決傳統(tǒng)視覺SLAM算法受動態(tài)環(huán)境因素影響較大、對設備的算力要求高的問題,該文提出一種融合ORB?SLAM2、語義標簽以及全局性稠密光流法的視覺SLAM算法。該方法采用空洞卷積神經(jīng)網(wǎng)絡的語義分割模塊為雙目圖像添加語義標簽,識別物體類別。再結(jié)合相鄰幀間位置信息對圖像的動態(tài)點進行剔除。最后使用Octo?map優(yōu)化定位與建圖,實現(xiàn)動態(tài)環(huán)境下地圖的建立與實時更新。實驗結(jié)果證明,該文提出的算法在動態(tài)環(huán)境下的特征點提取速度和質(zhì)量相較傳統(tǒng)視覺SLAM算法有一定提高。

關(guān)鍵詞: 語義SLAM; 空洞卷積神經(jīng)網(wǎng)絡; 語義標簽; 動態(tài)點剔除; 地圖構(gòu)建; 結(jié)果分析

中圖分類號: TN911.73?34; TP301.6? ? ? ? ? ? ? 文獻標識碼: A? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)22?0152?05

Abstract: A visual SLAM algorithm fusing ORB?SLAM2, semantic label and global dense optical flow method is proposed to solve the problem that the traditional visual SLAM algorithm is greatly affected by dynamic environment factors and requires high computing power of equipment. In this method, the semantic segmentation module of dilated convolution neural network is used to add semantic tags to binocular images, so as to identify object categories. The dynamic points of the image are eliminated by combining the position information between adjacent frames. The octo?map is used to optimize location and map construction to realize the map establishment and real?time update under the dynamic environment. The experimental results show that, in combination with the traditional SLAM algorithm, the speed and quality of feature point extraction in dynamic environment are improved.

Keywords: semantic SLAM; dilated convolutional neural network; semantic tag; dynamic points elimination; map construction; result analysis

0? 引? 言

移動設備在未知的環(huán)境中運動時,通常需要采用紅外光、雷達等傳感器獲取周邊環(huán)境的位置信息[1],估算自身的位置及姿態(tài)信息。然而,傳統(tǒng)的地圖構(gòu)建方式完全依賴周邊環(huán)境的幾何特征,并不能充分地理解周邊環(huán)境。這導致設備上的處理器需要對比圖像上所有特征點的位移情況,消耗大量算力,限制了其對復雜任務的處理能力。因此,將獲取的圖像信息從像素級別上升到物體級別,已成為移動設備在現(xiàn)實場景下執(zhí)行復雜任務的必要手段。

為了解決以上問題,本文研究一種融合語義信息的SLAM算法。語義與SLAM看似獨立,實則相輔相成。一方面,語義信息能夠減少傳統(tǒng)SLAM對圖像特征的依賴,尤其在動態(tài)環(huán)境下,移動的物體會導致定位精度下降、誤差累積、跟蹤失敗等問題。融入語義信息后,SLAM系統(tǒng)能夠在物體層面判斷動態(tài)物體的精確位置,提高建圖和定位的精度;另一方面,借助SLAM技術(shù),充分利用幾何信息計算出的物體位置與輪廓信息也有助于提高語義分割的精度。

本文使用的SLAM系統(tǒng)基于ORB?SLAM2[2]算法,該算法是基于關(guān)鍵幀的稀疏SLAM算法中性能較好的算法框架。系統(tǒng)首先使用MYNT?EYE雙目攝像頭實時獲取圖像,再利用ORB?SLAM2算法實現(xiàn)相機的位姿估計并篩選關(guān)鍵幀,同時,結(jié)合語義分割算法對獲得的二維圖像進行語義分割,最后使用光流法結(jié)合語義信息實現(xiàn)對動態(tài)點的剔除。

本文提出的語義SLAM在ROS系統(tǒng)下通過5個線程實現(xiàn),分別為跟蹤、本地建圖、回環(huán)檢測、語義分割和Octo?map建圖線程。線程之間采用ROS基于話題和服務的通信機制,將雙目矯正圖像作為輸入,分別提供給本地建圖線程和語義分割線程。其中,語義分割線程采用的神經(jīng)網(wǎng)絡基于ENet[3]網(wǎng)絡結(jié)構(gòu),將深度信息作為門控信號,從而控制卷積核的大小,提高了目標檢測的準確度;跟蹤線程在負責跟蹤并計算每一幀位姿的同時,通過獲取相鄰幀間的位姿變化忽略相機自身運動,實時檢測關(guān)鍵幀中的動態(tài)對象,并將其動態(tài)點剔除;本地建圖線程通過地圖點匹配構(gòu)建地圖,將圖像關(guān)鍵幀按時間順序檢測,可有效縮小漏檢、誤檢對整體建圖的影響;Octo?map[4]建圖線程使用稠密八叉樹地圖算法,采用log?odds方法計算出葉子節(jié)點的占據(jù)概率,將八叉樹按照占據(jù)概率進行渲染,更新并繪制出點云圖像。系統(tǒng)運行流程如圖1所示。

1? 基于空洞卷積的語義分割算法

1.1? 語義分割線程

經(jīng)典ORB?SLAM2算法使用特征像素點匹配來獲取相鄰幀間物體的位置變化,然而匹配得到的像素點并沒有實際意義且這種匹配方式過于依賴特征。若環(huán)境內(nèi)有較大噪聲,則匹配精度將無法保證。因此,若能將獲取到的圖像特征融入語義標簽,將會降低特征點匹配消耗的算力并提高建圖速度。

本文提出的SLAM系統(tǒng)中融入了語義分割線程,用于加載網(wǎng)絡模型及權(quán)重信息、輸入原始圖像并輸出分割結(jié)果。具體來看,首先線程將待分割的圖像進行預處理,調(diào)整其通道數(shù)及像素值并輸入到神經(jīng)網(wǎng)絡中;其次,運行神經(jīng)網(wǎng)絡進行推理,得到不同類別語義標簽的概率,在圖像中劃分并輸出語義分割結(jié)果。

1.2? 語義分割算法

用于SLAM系統(tǒng)的語義分割算法要求網(wǎng)絡同時具有較高的分割精度及較快的處理速率,但在傳統(tǒng)的語義分割算法中,這兩者不可兼得。若希望獲得較好的分割精度,則需要提取到豐富的圖像特征,相對應地增加網(wǎng)絡參量,擴大卷積核并保持較大的感受野,以學習到更有區(qū)分性的特征。若希望獲得較快的運行速度,則需要降低網(wǎng)絡的參量,減小卷積核的大小。綜合考慮分割精度和速度,本文提出的算法選擇了ENet作為基礎(chǔ)算法,并在此基礎(chǔ)上進行改進。

ENet算法由較大的Encoder和較小的Decoder組成,Encoder主要進行信息處理和過濾,而Decoder主要是對Encoder的輸出做上采樣,對細節(jié)做細微調(diào)整。同時,由于ENet模型未引入bias值,減少了一部分的內(nèi)核調(diào)用和存儲操作,分割速度在相似性能的分割算法中也處于領(lǐng)先位置。

Paszke A等提出在語義分割網(wǎng)絡中,最初的網(wǎng)絡層不應該直接分類,而應該作為很好的特征提取器并為網(wǎng)絡后續(xù)部分的輸入進行預處理,這樣能夠大大減少輸入的尺寸,使冗余的視覺信息得到有效的壓縮,能夠降低計算資源的消耗[3]。本文提出的算法借鑒了這一思想,在data層后設計一個數(shù)據(jù)處理模塊,降低圖像中的冗余信息。

1.3? 基于深度信息的多尺度卷積門控

二維圖像中物體的大小與距攝像機的距離成反比,圖像的深度信息有利于不同尺度物體的分割。Kong S等認為,在語義分割網(wǎng)絡中融合深度信息能夠提高物體尤其是遠處物體的語義分割精度[5]。本文使用雙目視覺模塊通過雙目立體匹配得到視差圖,并利用視差和深度的關(guān)系,得到當前圖像的深度。

由于圖像中遠處的物體較大,近處的物體較小。因此,不同深度的圖像應使用不同大小的卷積核進行卷積。然而,增大卷積核尺寸會使參數(shù)成倍增長,導致網(wǎng)絡效率變低。本文使用空洞卷積對圖像特征進行提取,在保證參數(shù)個數(shù)不變的同時,增大了卷積核的感受野,并保持輸出的特征映射大小保持不變,使其在附近獲取更多的上下文信息。感受野與空洞步長的關(guān)系如圖2所示。

為了提升語義分割模塊的精確度,本文使用深度信息作為門控信號自適應地學習圖像特征。

1) 本文將深度信息根據(jù)距離遠近分為5個等級,并生成一張包含深度等級信息的掩模圖像;

2) 采用不同空洞步長的卷積核,對圖像進行卷積,得到5張相同尺寸的圖像;

3) 使用深度信息作為門控信號,按照深度掩模圖像中每個像素點的深度信息,將5張圖像進行疊加,得到其適應深度信息的圖像,繼續(xù)后續(xù)卷積操作。

2? 動態(tài)點刪除

傳統(tǒng)SLAM算法的假設環(huán)境是靜態(tài)或低動態(tài)的,但在實際應用環(huán)境中,無論是地圖中的物體還是無人設備本身,都處在無規(guī)則的運動當中。因此動態(tài)物體檢測的準確性將會影響建圖的實際效果,如果發(fā)生漏檢、誤檢情況,將會導致兩個相鄰關(guān)鍵幀的特征點匹配存在差異,破壞SLAM系統(tǒng)的穩(wěn)定性。因此,從二維圖像中識別出動態(tài)對象,并在構(gòu)建語義地圖之前丟棄它們是必要的。

語義分割模塊負責預測物體類別,并在圖像相應像素點位置標記類別標簽,在跟蹤線程遍歷二維圖像后,標記出疑似動態(tài)物體在二維圖像上的位置信息。然而,語義分割網(wǎng)絡可識別的種類有限,且精確度在不同的訓練集上略有差異,動態(tài)物體檢測不能過分依賴于語義分割檢測出的動態(tài)物體。為解決這一問題,本文使用三幀差分法和光流法檢測動態(tài)物體的運行軌跡,并結(jié)合語義分割模塊得到的動態(tài)對象特征點信息,實現(xiàn)對動態(tài)對象的有效判斷與處理。

2.1? 三幀差分法

三幀差分法[6]是通過相鄰三幀圖像利用運動目標的位置差異做差分運算,并對結(jié)果做閾值化處理得到運動目標區(qū)域的方法。選取圖像序列連續(xù)的3幀圖像,分別為[fk-1(x,y)],[fk(x,y)], [fk+1(x,y)] ,相鄰2幀圖像的差值為:

2.2? LK光流法

本文提出的SLAM系統(tǒng)早期采用LK光流法。Yu C等提出的LK光流法首先在跟蹤線程提取ORB特征點,粗略地檢查特征點的移動情況,并保存潛在異常值,再通過語義分割線程對關(guān)鍵幀做語義分割,使用異常值拒絕方法,結(jié)合語義分割和移動一致性檢查方法過濾掉動態(tài)對象,將位于移動物體上的ORB特征點潛在的異常值剔除[7]。

然而,LK光流法在追蹤運動速度較快的小目標時,出現(xiàn)了跟蹤丟失的情況,尤其是面對遠處的車輛時,丟失效果較為嚴重。造成這種現(xiàn)象的原因是圖像經(jīng)過多次下采樣,會使小目標丟失特征,且只是對某些特征點進行光流計算,有一定的局限性,無法達到運動檢測要求。

2.3? 全局稠密性光流法

考慮到全局性稠密光流法能夠較好地提取出運動物體的軌跡,且定位動態(tài)物體較為準確。本文提出的SLAM系統(tǒng)結(jié)合了基于梯度的全局性稠密光流算法,通過圖像金字塔匹配方法,計算圖像上所有點的光流,并將其與已設定的光流動靜點閾值作比較,若大于閾值,則判斷其移動,并將圖像掩模置0,用于后續(xù)動態(tài)點處理。

為消除相機本身的移動對建圖的影響,該算法通過單應矩陣表示相鄰關(guān)鍵幀之間的相關(guān)性,以獲取上一幀與當前幀間的對應關(guān)系及運動信息。單應矩陣能夠?qū)⑸溆捌矫嫔系狞c映射到另一射影平面上,設[p1x1,y1],[p2x2,y2]為相鄰2幀上的圖像點匹配的點對,其單應矩陣為H,則有[p2=Hp1],即:

3? Octo?map建圖

由于點云地圖規(guī)模很大,需要大量的存儲空間,且在位姿出現(xiàn)誤差時,會導致地圖出現(xiàn)明顯的重疊。Sengupta S等將Octo?map地圖嵌入到分層魯棒性的馬爾可夫隨機場,為帶有語義標簽的地圖提供體素[8]。通過以上操作,Octo?map地圖能夠壓縮點云信息,并以八叉樹的形式存儲并更新地圖。

八叉樹是一種用于表述三維空間并具有8個子節(jié)點的樹狀數(shù)據(jù)結(jié)構(gòu),每個子節(jié)點代表其被占據(jù)的概率[9]。隨著不同關(guān)鍵幀的變化,每個子節(jié)點的概率也會發(fā)生改變,已知在[t=1,2,…,T]時刻,每個子節(jié)點的觀測值為[z1:T],則第n個葉子節(jié)點的概率公式為:

基于八叉樹結(jié)構(gòu)存儲的Octo?map地圖具有占用空間小、更新地圖方便,且分辨率可調(diào)的特點,尤其適合無人機等邊緣計算設備搭載的視覺SLAM系統(tǒng)。

本文提出的SLAM系統(tǒng)將視覺模塊獲取的矯正圖像作為輸入,篩選出關(guān)鍵幀信息,并將其輸入到語義分割線程處理,將八叉樹的每個體素都關(guān)聯(lián)特定顏色,每種顏色代表一種語義標簽,把相機坐標系下的點云信息轉(zhuǎn)換成世界坐標系下的點云坐標,生成融合了語義標簽與點云信息的語義地圖。

4? 實驗結(jié)果與分析

本文實驗平臺硬件配置為NVIDIA TITAN RTX型號的GPU,測試系統(tǒng)為Ubuntu 16.04。SLAM部分采用CityScapes數(shù)據(jù)集(leftimg 8 bit和rightimg 8 bit組合形成雙目)及小覓雙目視覺模塊進行建圖測試。語義分割網(wǎng)絡采用CityScapes數(shù)據(jù)集進行對比驗證。

4.1? 語義分割模塊驗證

本文設計的SLAM系統(tǒng)將雙目視覺模塊立體匹配得到的視差圖作為輸入,獲取深度信息。語義分割線程選擇其中關(guān)鍵幀中的深度信息,控制空洞卷積中空洞的大小,自適應地調(diào)整神經(jīng)網(wǎng)絡卷積過程中的感受野,提升特征提取效果??紤]到本文提出的語義SLAM系統(tǒng)的實際運用場景為街景,因此采用 CityScapes數(shù)據(jù)集進行效果驗證。作為目前街景領(lǐng)域最權(quán)威的數(shù)據(jù)集之一,以場景復雜多變、分割難度大著稱,能夠較好地體現(xiàn)算法在實際應用環(huán)境下的性能。圖3為傳統(tǒng)ENet網(wǎng)絡與本文提出的網(wǎng)絡在CityScapes數(shù)據(jù)集上的分割效果對比,自上而下依次為輸入圖像、本文算法的效果、傳統(tǒng)ENet分割效果。由圖3可以看出,相比原ENet網(wǎng)絡近處分割較為精細,遠處的物體分割粗略,融合深度信息的改進方法使其分割效果更關(guān)注遠處物體。表1為SegNet網(wǎng)絡、ENet網(wǎng)絡以及本文方法在CityScapes數(shù)據(jù)集下運行的準確率,本文方法在深度信息的引入下,相較于原有的ENet算法,分割效果提升1%。

4.2? 動態(tài)物體剔除模塊驗證

本文提出的語義SLAM系統(tǒng)通過結(jié)合全局性稠密光流法對動態(tài)物體位置進行判斷,提高了動態(tài)物體位置的檢測精度,并能夠精確有效地消除動態(tài)噪聲,從而構(gòu)建了相對穩(wěn)定的語義地圖,提高了系統(tǒng)的魯棒性。

4.3? Octo?map建圖模塊驗證

在ROS系統(tǒng)下,整體運行系統(tǒng),使用Octo?map模塊建立結(jié)合語義后的SLAM地圖,等待地圖建立后,利用Rviz可視化工具顯示地圖,建圖效果如圖5所示。

5? 結(jié)? 語

本文的主要工作是在傳統(tǒng)雙目ORB?SLAM2算法的基礎(chǔ)上,融合基于卷積神經(jīng)網(wǎng)絡的語義分割[10]算法,對移動設備所處的環(huán)境構(gòu)建語義地圖。與其他語義地圖構(gòu)建方法相比,本文提出的算法引入圖像深度信息作為多尺度空洞卷積網(wǎng)絡的門控信號,對分割算法進行改進,得到了更適合移植到嵌入式設備上的語義分割方法。實驗結(jié)果證明,該網(wǎng)絡在街景環(huán)境下能夠獲得較好的分割效果。此外,在SLAM算法中加入了全局性稠密光流法,將動態(tài)環(huán)境中動態(tài)點剔除,減少了動態(tài)物體對相機姿態(tài)估計的影響,并實現(xiàn)了構(gòu)建地圖的優(yōu)化,提高了動態(tài)場景下系統(tǒng)建圖的魯棒性。

參考文獻

[1] 潘思宇.基于背負式多激光系統(tǒng)的室內(nèi)二維與三維構(gòu)圖[D].廈門:廈門大學,2016.

[2] MUR?ARTAL R, TARDOS J D. ORB?SLAM2: An open?source SLAM system for monocular, stereo, and RGB?D cameras [J]. IEEE transactions on robotics, 2017, 33(5): 1255?1262.

[3] PASZKE A, CHAURASIA A, KIM S, et al. Enet: a deep neural network architecture for real?time semantic segmentation [J]. Computer vision and pattern recognition, 2016(2): 174.

[4] HORNUNG A, WURM K M, BENNEWITZ M, et al. OctoMap: an efficient probabilistic 3D mapping framework based on octrees [J]. Autonomous robots, 2013, 34(3): 189?206.

[5] KONG S, FOWLKES C C. Recurrent scene parsing with perspective understanding in the loop [C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 956?965.

[6] 袁國武,陳志強,龔健,等.一種結(jié)合光流法與三幀差分法的運動目標檢測算法[J].小型微型計算機系統(tǒng),2013,34(3):668?671.

[7] YU C, LIU Z, LIU X J, et al. DS?SLAM: A semantic visual SLAM towards dynamic environments [C]// 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems. Madrid: IEEE, 2018: 1168?1174.

[8] SENGUPTA S, STURGESS P. Semantic octree: unifying recognition, reconstruction and representation via an octree constrained higher order MRF [C]// 2015 IEEE International Conference on Robotics and Automation. Seattle: IEEE, 2015: 1874?1879.

[9] MAIER D, HORNUNG A, BENNEWITZ M. Real?time navigation in 3D environments based on depth camera data [C]// 2012 12th IEEE?RAS International Conference on Humanoid Robots. Osaka: IEEE, 2012: 692?697.

[10] 白云漢.基于SLAM 算法和深度神經(jīng)網(wǎng)絡的語義地圖構(gòu)建研究[J].計算機應用與軟件,2018,35(1):183?190.

猜你喜歡
建圖語義物體
視覺同步定位與建圖中特征點匹配算法優(yōu)化
語言與語義
深刻理解物體的平衡
基于三輪全向機器人的室內(nèi)建圖與導航
電子制作(2019年10期)2019-06-17 11:45:06
一種基于多傳感融合的室內(nèi)建圖和定位算法
我們是怎樣看到物體的
機器人室內(nèi)語義建圖中的場所感知方法綜述
自動化學報(2017年4期)2017-06-15 20:28:55
“上”與“下”語義的不對稱性及其認知闡釋
為什么同一物體在世界各地重量不一樣?
認知范疇模糊與語義模糊
丹东市| 平阴县| 信阳市| 陆良县| 三台县| 蒙山县| 六安市| 房产| 高雄市| 江津市| 井陉县| 安义县| 合阳县| 桐乡市| 阳信县| 南投市| 东平县| 开封县| 怀化市| 石门县| 灵台县| 秦皇岛市| 陕西省| 调兵山市| 武邑县| 赞皇县| 施甸县| 夏津县| 迁安市| 巴里| 洪雅县| 三穗县| 金溪县| 馆陶县| 虞城县| 湘西| 茌平县| 三原县| 河津市| 通辽市| 三都|