游通飛,孔令華,劉文玉,易定容,殷 江
視覺SLAM在動態場景下的圖像處理方法
游通飛1,2,孔令華1,2,劉文玉1,易定容3,殷 江1,2
(1. 福建工程學院 機械與汽車工程學院,福建 福州 350118;2. 福建工程學院 數字福建工業制造物聯網實驗室,福建 福州 350118;3. 華僑大學 機電及自動化學院,福建 廈門 361021)
SLAM一直是機器人領域的研究熱點,近年來取得了萬眾矚目的進步,但很少有SLAM算法考慮到動態場景的處理。針對視覺SLAM場景中動態目標的處理,提出一種在動態場景下的圖像處理方法。將基于深度學習的語義分割算法引入到ORB_SLAM2方法中,對輸入圖像進行分類處理的同時剔除人身上的特征點。基于已經剔除特征點的圖像進行位姿估計。在TUM數據集上與ORB_SLAM2進行對比,在動態場景下的絕對軌跡誤差和相對路徑誤差精度提高了90%以上。在保證地圖精度的前提下,改善了地圖的適用性。
視覺SLAM;動態場景;ORB-SLAM2;特征點;剔除
SLAM(simultaneous localization and mapping),中文名為同步定位與地圖構建,它從提出到發展已經有三十余年[1-2]。根據使用傳感器的類型,將SLAM分為激光SLAM和視覺SLAM[3]。隨著SLAM技術的進一步完善,該方法被廣泛應用到機器人技術上。視覺SLAM技術因其性價比高、效果佳,成為當下的研究熱點。目前大多數視覺SLAM的研究工作主要是集中在靜態環境中展開的,真實場景下往往都是呈現動態形式[4]。這些靜態場景下的算法處理起真實環境時,結果往往不盡人意。為了解決視覺SLAM在動態場景下工作的魯棒性,Kai Wang等人[5]通過識別和處理移動和潛在可移動對象,增強了視覺SLAM中的建圖和定位精度。具體來說,利用前一幀和當前一幀的位姿信息來細化后一幀的分割,確定所有潛在的可移動的對象,發送到vSLAM模塊進一步計算相應幀的跟蹤和建圖,使分割精度得以提高。DynaSLAM[6]中,作者提出了一種檢測動態對象系統。使用MASK-RCNN對物體進行實例分割,然后對具有移動性的對象進行分割。該工作還引入了背景區域填充的方法,可以修復動態目標遮擋的區域。在DS-SLAM[7]中作者通過檢測物體的運動一致性,判斷人是否是動態對象,并獲得語義分割后的人的標簽。降低了基于視覺的SLAM中動態對象的影響。針對視覺SLAM場景中動態目標的問題,本文在ORB-SLAM2處理動態環境基礎上,引入語義分割算法[8-9]。根據人身的ORB特征點在幀間變化的特點,判斷人是否運動。將語義分割中人的類別作為動態物體進行特征點剔除,最終達到所建地圖不會因人的運動而受到干擾。
ORB-SLAM2[10]算法是由跟蹤線程、局部建圖線程、閉環檢測線程這3個平行線程和全局BA(bundle adjustment)優化線程組成,如圖1所示。跟蹤線程是將相機收集到的每一幀數據進行ORB特征提取,通過相機位姿跟蹤和局部地圖跟蹤獲得局部地圖與當前幀的匹配。利用最小化投影誤差優化位姿,判斷是否生成關鍵幀。局部建圖線程是對上一線程所得新關鍵幀進行處理,剔除地圖中質量偏低的點。通過三角化的方法來恢復出共視程度比較高的關鍵幀地圖點,檢查當前關鍵幀與相鄰幀重復的地圖點,進行地圖點融合。當前幀相連的關鍵幀及地圖點做局部BA優化,剔除多余的關鍵幀。閉環探測和閉環校正組成閉環檢測線程。其中閉環探測是通過計算當前幀與相連關鍵幀的詞袋(bag of words,BoW)模型最低得分,判斷當前關鍵幀是否產生閉環并進行連續性檢測并計算相似變換。閉環校正主要包含閉環融合和圖優化這兩個部分。全局BA優化線程是對全局的位姿和地圖點進行優化,達到更新地圖的目的。
PSPNet(pyramid scene parsing network)[11]算法利用基于不同區域的上下文池化來實現全局上下文信息的能力。PSPNet算法結構如圖2所示,指定一個輸入圖像(a),首先經過卷積神經網絡得到特征圖feature map(b),特征圖分別進入金字塔解析模塊和連接層。一部分特征圖經過金字塔解析模塊處理后的特征圖進行向上采樣,向上采樣的結果傳入到連接層與另一部分特征圖進行結合,獲得特征表示,該特征包含局部和全局上下文信息(c)。金字塔池化模塊處理后得到的結果輸入卷積層,語義分割的預測(d)便可呈現。

圖1 ORB_SLAM2 系統線程和結構
金字塔池模塊有4種不同的尺度的特征。其中最上層代表生成單個bin輸出的全局池。下方的其余金字塔將特征圖分成不同的子區域,形成不同位置的表示。大小各異的特征圖是由金字塔池化模塊中各層次輸出得到,若金字塔的大小為,為使全局特征不變,每一個金字塔層將使用1×1卷積層去減小上下文的維度到原來的1/。低維度的特征圖上采樣得到與原始特征圖大小相同的特征。各層次的特征進行連接即為金字塔池化全局特征。
為解決ORB-SLAM2算法在動態場景下的漂移量大、目標丟失等問題,本文提出將ORB-SLAM2算法和語義分割算法進行結合。目前,基于深度學習的語義分割算法中,PSPNet算法表現出優秀的分割性能,是近些年語義分割中具有高精度算法的代表,故選擇PSPNet算法作為本文的語義分割算法。系統流程圖如圖3所示。其中,PSPNet是在數據集PASCAL VOC2012進行訓練,該數據集是目前衡量語義分割的標準數據集之一[12]。

圖2 PSPNet算法結構

圖3 剔除動態點方法
本文的方法是將原始圖像分別輸入至ORB-SLAM2算法和PSPNet算法中。在ORB-SLAM2跟蹤線程中進行提取特征點時,經過PSPNet網絡分割過的圖像傳入ORB-SLAM2中。此時,分割圖像中的人作為動態對象,ORB-SLAM2將剔除分布在人身上的特征點。剔除人身上特征點后的其余特征點繼續進行特征匹配和位姿估計。
把人作為動態對象的特征點剔除后,ORB-SLAM2算法在動態場景下工作的能力得到了明顯提升,展示出較好的抗干擾能力。
本文使用公共數據集TUM RGB-D[13]對SLAM系統穩定性進行評估。該數據集是由德國慕尼黑工業大學提出的一個標準RGB-D數據集,目前經常用來評估RBG-D的一個數據集。該數據集是用來評估SLAM系統或VO算法在具有移動物體的動態環境下性能。數據集中的圖像是使用Kinect傳感器進行獲取,包含彩色圖像、深度圖像和地面真實軌跡的數據,其中彩色圖像和深度圖像時間戳一一對應。數據集自帶了兩種評估SLAM系統的程序,分別是相對位姿誤差(relative pose error,RPE)和絕對軌跡誤差(absolute trajectory error,ATE)。
在一定的時間間隔內衡量軌跡的局部精度被稱為相對位姿誤差(RPE),用于評價系統的漂移量。

式中:?SE(3)是估計位姿;?SE(3)是真實位姿;代表時間或者幀數;表示時間間隔。
通過比較估計和地面真實軌跡(ground truth)之間的絕對距離被稱為絕對軌跡誤差,用于評價軌跡的全局一致性。

其中?SE是估計位姿到真實位姿的轉換矩陣。
本文是在TUM數據集的rgbd_dataset_ freiburg3_walking_xyz、rgbd_dataset_freiburg3_ walking_halfsphere、rgbd_dataset_freiburg3 _walking _static、rgbd_dataset_freiburg3_sitting_static四個序列工作性能的對比。表1、2、3是ORB-SLAM2和本文方法的對比結果。walking_xyz、walking_ half- sphere、walking_static、sitting_static絕對軌跡誤差圖和相對位姿誤差圖分別如圖4、5、6、7、8、9、10、11所示。其中,左邊圖為絕對軌跡誤差,右邊圖為相對位姿誤差。

表1 絕對軌跡誤差對比(ATE)

表2 相對位姿誤差對比(RPE)

表3 相對旋轉誤差對比(RRE)
從表1~3可以觀察到,在前3個動態環境下,無論相對位姿誤差還是絕對軌跡誤差,改進后的ORB-SLAM2系統的Rmse、Mean、Median和Std值比傳統ORB-SLAM2都提高了90%以上。而在第4個靜態環境下,最高只比ORB-SLAM2提高了27.68%。實驗數據表明:改進后的ORB-SLAM2系統能較好地克服動態環境下系統的漂移并達到軌跡全局一致性的效果。

圖4 ORB-SLAM2在walking_xyz下的誤差(左:軌跡誤差;右:相對位姿誤差)

圖5 本文方法在walking_xyz下的誤差(左:軌跡誤差;右:相對位姿誤差)

圖6 ORB-SLAM2在walking_halfsphere下的誤差(左:軌跡誤差;右:相對位姿誤差)

圖7 本文方法在walking_halfsphere下的誤差(左:軌跡誤差;右:相對位姿誤差)

圖8 ORB-SLAM2在walking_static下的誤差(左:軌跡誤差;右:相對位姿誤差)

圖9 本文方法在walking_static下的誤差(左:軌跡誤差;右:相對位姿誤差)
在耗時上,將ORB-SLAM2和改進后的ORB-SLAM2分別在TUM數據集上運行并取3次結果求平均值,如表4所示。ORB-SLAM2平均耗時57.439ms,改進后的ORB-SLAM2平均耗時79.681ms。對比改進前后的ORB-SLAM2耗時,改進后的耗時比傳統ORB-SLAM2多用了22.242ms,這是因為改進后的ORB-SLAM2引入了語義分割,增加了系統的耗時。

圖10 ORB-SLAM2在sitting_static下的誤差(左:軌跡誤差;右:相對位姿誤差)

圖11 本文方法在sitting_static下的誤差(左:軌跡誤差;右:相對位姿誤差)

表4 兩種方法在TUM數據集的耗時
本文基于SLAM系統中ORB-SLAM2算法,針對動態場景下的目標,提出了ORB-SLAM2算法和語義分割算法進行融合的方法。在場景中把人看作是動態對象,剔除人身上的特征點。在TUM數據集上進行實驗驗證,結果表明:本文提出的方法在動態場景下的絕對軌跡誤差和相對路徑誤差比原ORB-SLAM2算法至少提高了90%以上的精度,同時系統耗時增加22.242ms,該方法在動態環境中能夠保持系統的魯棒性。
[1] Durrant-Whyte H, Bailey Tim. Simultaneous localization and mapping: part I[J]., 2006, 13(2): 99-10.
[2] 張金鳳, 石朝俠, 王燕清. 動態場景下基于視覺特征的SLAM方法[J]. 計算機工程, 2020, 46(10): 95-102.
ZHANG Jinfeng, SHI Chaoxia, WANG Yanqing. SLAM method based on visual features in dynamic scene[J]., 2020, 46(10): 95-102.
[3] 江國來. 共融移動服務機器人導航與交互關鍵技術研究[D]. 深圳: 中國科學院大學(中國科學院深圳先進技術研究院), 2019.
JIANG Guolai. Research on Key Technologies of Navigation and Interaction of Inclusive Mobile Service Robot[D]. Shenzhen: University of Chinese Academy of Sciences, 2019.
[4] HAN Shuangquan, XI Zhihong. Dynamic scene semantics SLAM based on semantic segmentation[J]., 2020, 8: 43563-43570.
[5] WANG Kai, LIN Yimin, WANG Luowei, et al. A unified framework for mutual improvement of SLAM and semantic segmen- tation[C]//(ICRA), 2019: 5224-5230.
[6] Bescos Berta, Fácil José M, Civera Javier, et al. Dyna SLAM: tracking, mapping and in painting in dynamic scenes[J]., 2018, 3(4): 4076-4083.
[7] YU Chao, LIU Zuxin, LIU Xinjun, et al. DS-SLAM: a semantic visual SLAM towards dynamic environments[C]//s(IROS), 2018: 1168-1174.
[8] 王召東, 郭晨. 一種動態場景下語義分割優化的ORB_SLAM2[J].大連海事大學學報, 2018, 44(4): 121-126.
WANG Zhaodong, GUO Chen. An improved ORB_SLAM2 in dynamic scene with semantic segmentation[J]., 2018, 44(4): 121-126.
[9] 王晨, 湯心溢, 高思莉. 基于深度卷積神經網絡的紅外場景理解算法[J]. 紅外技術, 2017, 39(8): 728-733.
WANG Chen, TANG Xinyi, GAO Sili. Infrared scene understanding algorithm based on deep convolutional neural network[J]., 2017, 39(8): 728-733.
[10] Mur-Artal Raul, D Tardos Juan. ORB-SLAM2: an opensource slam system for monocular, stereo, and rgb-d cameras[J]., 2017, 33(5): 1255-1262.
[11] ZHAO Hengshuang, SHI Jianping, QI Xiaojuan, et al. Pyramid scene parsing network[C]//, 2017: 6230-6239.
[12] 李瀚超, 蔡毅, 王嶺雪. 全局特征提取的全卷積網絡圖像語義分割算法[J]. 紅外技術, 2019, 41(7): 595-599, 615.
LI Hanchao, CAI Yi, WANG Lingxue. Image semantic segmentation based on fully convoluted network with global feature extraction[J]., 2019, 41(7): 595-599.
[13] Sturm Jürgen, Engelhard Nikolas, Endres Felix, et al. A benchmark for the evaluation of RGB-D SLAM systems[C]//.., 2012: 573-580.
[12] 吳繼平, 張桂玲, 楊楚明. 工業檢測型紅外熱像儀: GB/T19870 —2018[S]. 全國工業過程測量控制和自動化標準化技術委員會[2018-05-14].
WU Jiping, ZHANG Guiling, YANG Chuming. Industrial inspecting thermal imagers: GB/T19870—2018[S]. National Industrial Process Measurement Control and Automation Standardization Technical Committee [2018-05-14].
[13] 白廷柱, 金偉其. 光電成像原理與技術[M]. 北京: 北京理工大學出版社, 2006.
BAI Tingzhu, JIN Weiqi.[M]. Beijing: Beijing University of Technology Press, 2006.
[14] Usamentiaga R, Venegas P, Guerediaga J, et al. Infrared thermography for temperature measurement and non-destructive testing[J]., 2014, 14(7): 12305-12348.
[15] 武漢凱爾文光電技術有限公司產品中心. JQ-D70Z 熱成像人體測溫黑體[EB/OL]. [2021-08-19]. https://http://www.whkelvin.com/ pros _ show. php?id=84.
Product Center of Wuhan Kelvin Photoelectric Technology Co. Ltd. JQ- D70Z blackbody of screening thermograph[EB/OL]. [2021-08-19]. https: // http://www.whkelvin.com/pros_show.php?id=84.
[16] Pascoe D, Ring E, Mercer J, et al. International standards for pandemic screening using infrared thermography[C]/,2010:,,, 2010, 7626: 76261Z.
Image Processing Method for Visual Simultaneous Localization and Mapping in Dynamic Scene
YOU Tongfei1,2,KONG Linghua1,2,LIU Wenyu1,YI Dingrong3,YIN Jiang1,2
(1.,,350118,; 2.,350118,;3.,,361021,)
Simultaneous localization and mapping(SLAM) has always been a research hotspot in the robotics field. In recent years, remarkable progress has been made in SLAM research, but few SLAM algorithms have considered the processing of dynamic scenes. Therefore, in this study, an image processing method for dynamic target processing in a visual SLAM scene is proposed. The semantic segmentation algorithm based on deep learning was introduced into the ORB_SLAM2 method and input image classification processing was accomplished while removing the feature points on the body. Pose estimation was performed based on images with eliminated feature points. Compared to ORB_SLAM2 on the TUM dataset, the absolute trajectory error and relative path error accuracy were improved by more than 90% in the dynamic scene. To ensure the accuracy of the generated map, the applicability of the map was improved.
visual SLAM, dynamic scene, ORB- LAM2, feature points, remove
TP391
A
1001-8891(2021)10-0960-08
2020-06-06;
2020-07-28.
游通飛(1994-),男,福建福州人,碩士研究生,研究方向:視覺SLAM和語義分割。
孔令華(1963-),男,加拿大人,教授,博士,碩士生導師,研究方向:三維視覺和多光譜檢測。E-mail:15392030898@163.com。
國家自然科學基金資助項目(51775200)。