孟繁 周馨曌 吳烽云 鄒天龍



摘要:水果采摘機器人是一種具有較大潛力的農業自動化技術,不僅需在復雜且不斷變化的環境中連續作業,還面臨地形、樹木分布、天氣變化、環境光照、遮擋等多種挑戰。視覺同步定位與地圖構建(SLAM)作為一種成本低廉且能夠提供豐富語義信息的技術,有望提高水果采摘機器人的效率和自動化程度。近年來,視覺SLAM在水果采摘機器人領域取得了一系列重要進展,主要包括深度學習優化方法、基于點線特征的優化方法、基于RGB-D的視覺SLAM優化方法、動態環境中視覺SLAM優化方法、回環檢測和后端優化方法等。未來,水果采摘機器人領域的研究將朝著更高的自動化程度和采摘效率方向發展;可能的發展方向包括更復雜的感知系統、更智能的決策算法、更強大的硬件支持等。此外,水果采摘機器人在多樣化水果園中的適應性和魯棒性研究也將引領這一領域的發展。通過不斷推動視覺SLAM技術的創新,水果采摘機器人有望成為現代農業的重要工具,提高水果產量并減輕農業勞動力短缺的問題。
關鍵詞:同步定位與地圖構建;水果采摘機器人;機器視覺;自動化
中圖分類號:TP391.4???????? 文獻標志碼:A ????? ???文章編號:1674-2605(2023)05-0002-07
DOI:10.3969/j.issn.1674-2605.2023.05.002
Research Progress in Fruit Picking Robots Based on Visual SLAM
MENG Fan1,2ZHOU Xinzhao2WU Fengyun3ZOU Tianlong2
(1.Zhongkai College of Agricultural Engineering, Guangzhou 510225, China
2.Foshan Zhongke Innovation Research Institute of Intelligent Agriculture, Foshan 528010, China
3.Guangzhou College of Commerce, Guangzhou 511363, China)
Abstract: Fruit picking robots are a promising agricultural automation technology, but they must operate continuously in complex and constantly changing environments, facing various challenges such as terrain, tree distribution, weather changes, environmental lighting, and occlusion. Visual SLAM, as a low-cost technology that can provide rich semantic information, has attracted widespread research interest as it has the potential to significantly improve the efficiency and automation of fruit picking robots. In recent years, visual SLAM has made a series of important progress in the field of fruit picking robots. Mainly including deep learning optimization methods; Optimization method based on point line features; Visual SLAM optimization method based on RGB-D; Visual SLAM optimization methods in dynamic environments; Loop detection and backend optimization methods. In the future, research in the field of fruit picking robots will move towards higher levels of automation and harvesting efficiency. Possible development directions include more complex perception systems, more intelligent decision algorithms, and stronger hardware support. In addition, research on the adaptability and robustness of robots in diverse water orchards will continue to lead the development of this field. By continuously promoting the innovation of visual SLAM technology, fruit picking robots are expected to become an important tool in modern agriculture, increasing production and alleviating the problem of agricultural labor shortage.
Keywords:simultaneous localization and mapping; fruit picking robots; machine vision; automation
0 引言
在非結構化的環境中進行實時、準確和魯棒性的定位與導航對水果采摘機器人至關重要。隨著視覺傳感器技術的不斷發展,尤其是相機的低成本、微型化和高信息密度等特點,使視覺同步定位與地圖創建(simultaneous localization and mapping,?SLAM)受到廣泛關注。視覺SLAM的核心思想是先通過相機連續獲取圖像幀,再利用圖像幀與幀之間的信息來估計相機的運動軌跡并構建周圍環境的三維地圖。與其他的SLAM技術相比,視覺SLAM能夠提供更加豐富的場景信息[1]。因此,視覺SLAM不僅用于定位和導航[2]等任務,還用于場景理解、水果識別等任務。
水果采摘機器人通常在室外果園復雜環境中作業,傳統的視覺SLAM技術在這種動態變化和光照變化的環境中存在挑戰[3-7]。近年來,隨著計算機硬件性能的不斷提高,深度學習在多個領域成為研究熱點[8-10]。通過深度學習優化的視覺SLAM系統具有更強的特征提取能力、動態環境魯棒性、模型通用性和可遷移性[11-13]。同時多傳感器融合優化SLAM方法也是未來發展方向[14]。本文通過介紹視覺SLAM系統的基本原理和關鍵技術,闡述在復雜環境中水果采摘機器人的視覺SLAM優化方法和未來發展方向。
1 視覺SLAM系統基本原理
視覺SLAM系統的工作流程主要包括視覺傳感器數據采集、前端視覺里程計、后端非線性優化、回環檢測和建圖5個模塊,如圖1所示。
在視覺傳感器數據采集模塊,相機或其他視覺傳感器采集的圖像信息為系統提供原始數據;在前端視覺里程計模塊,系統通過在連續的圖像幀中提取和匹配關鍵點特征,識別場景中的路標點并估算相機的實時位置和姿態,這會隨著時間累積誤差;為糾正誤差,在后端非線性優化模塊,參考各圖像幀之間的共視信息進行位姿調整和精化,確保長時間運行下視覺SLAM系統的準確性和穩定性;若遇到已訪問過的區域或場景,回環檢測模塊通過2個圖像幀的相似性是否超過預定閾值來判斷是否形成回環,一旦檢測到回環,對所有路標點和位姿進行優化,以確保地圖的一致性和準確性;在建圖模塊,優化后的路標點被用于構建高質量的三維地圖,該地圖不僅為水果采摘機器人提供導航信息,還為后續的路徑規劃和障礙物避讓提供基礎。
2 視覺SLAM優化方法
2.1 深度學習優化方法
文獻[15]提出一種融合目標檢測網絡技術的動態視覺SLAM算法,在視覺SLAM系統的主跟蹤流程中嵌入一個輔助的并行線程,如圖2所示。
該并行線程結合了優化的目標檢測網絡與稀疏光流技術,可識別并排除動態物體產生的不穩定特征點,使系統僅使用來源于靜態環境的特征點進行特征點匹配和相機位姿估計,從而提高視覺SLAM系統的穩定性和定位準確性。
文獻[16]提出一種針對回環檢測優化的視覺SLAM算法。在前端處理階段,首先,利用定向來自加速段測試的特征(features from accelerated segment test, FAST)和旋轉二進制魯棒獨立基本特征(binary robust independent elementary features, BRIEF)對連續幀圖像進行特征提取和匹配;然后,通過多點透視成像(perspective-n-point,?PnP)方法對成功匹配的特征點進行解析,估計相機的動態軌跡,并篩選出關鍵幀。在后端優化階段,首先,采用SqueezeNet卷積神經網絡對圖像進行特征向量提取;然后,通過計算圖像特征向量的余弦相似度,判斷是否發生了回環事件,一旦檢測到回環,算法在位姿圖中添加相應的約束條件,并運用圖優化理論對系統的位姿進行全局優化,確保視覺SLAM系統具有更高的精度與穩定性。
文獻[17]提出一種結合語義信息的V-SLAM技術,主要包括語義地圖建構和語義回環檢測2個核心部分。其中,在語義地圖建構部分,采用YOLOv3深度學習網絡對關鍵幀進行二維圖像語義注釋,采用條件隨機場模型將二維圖像語義注釋與場景內部的分割聚類信息結合,完成語義地圖構建;在語義回環檢測部分,以關鍵幀的語義標注為基礎,結合去除動態物體特征點的策略,對傳統的詞典法進行改進,有效地去除可能引起誤判的動態物體,從而提高機器人在動態環境中的定位精度。
文獻[18]提出利用無監督棧式卷積自編碼器(convolutional autoencoder, CAE)模型來提取圖像特征。經過訓練的CAEs卷積神經網絡可以學習輸入圖像特征,并將輸入圖像特征用于閉環檢測。
文獻[19]提出一種融合視覺-慣性SLAM的非結構化柑橘園SLAM方法。通過BiSeNetV1對二維RGB圖像進行語義分割并將其映射到點云,重建三維語義點云圖;引入統計離群值去除濾波器和OctoMap進行后處理,去除離群值并估計三維空間中的障礙物,構建更準確、高效和靈活的地圖。
2.2 基于點線特征的優化方法
文獻[20]提出一種基于點線特征的高速SLAM策略。在追蹤非關鍵幀時,采用描述子來匹配點特征,同時依賴幾何約束來匹配線特征。當插入新的關鍵幀時,計算線特征的描述子,完成關鍵幀之間的線特征匹配,并利用線特征三角化算法生成地圖線。為確保視覺SLAM系統的實時性,減少線特征匹配過程的計算量,利用線特征提供的深度信息構造虛擬的右目線段,并提出線特征重投影誤差的計算策略,優化視覺SLAM系統性能,特別是在紋理較弱的場景中可以提高視覺SLAM系統的定位精度和魯棒性。
文獻[21]提出一種基于點線不變量的線特征匹配策略。該點線不變量是通過對線段及其兩側特征點的局部幾何結構進行編碼來定義的,可在現有的特征點上直接進行線匹配,不僅加快了匹配速度,還提高了匹配的準確性。此外,還在點線特征融合階段加入權重分配機制,根據場景中的特征豐富程度,在構建誤差函數時為點線特征賦予不同的權重,進一步優化了算法的性能和魯棒性。
文獻[22]提出一種結合點線特征的視覺SLAM方法,采用模塊化的技術策略。首先,從相機采集的環境圖像中提取點與線的特征,并通過幀間特征進行連續跟蹤;然后,結合改進的正規迭代最近點(normal iterative closest point, NICP)算法和特定的關鍵幀匹配技術搭建里程計系統;接著,為了實現全局一致性的位姿,融合基于點線特征詞典的閉環檢測技術和佐治亞理工大學平滑和映射庫(Georgia Tech smoothing and mapping library, GTSAM)圖優化方法,得到三維點云地圖;最后,利用機器人技術中間件搭建系統,不僅提升了系統的實時性能,還為功能模塊提供了更強的可擴展性和靈活性。
文獻[23]提出一種并行跟蹤和映射SLAM(parallel tracking and mapping-SLAM, PLP-SLAM)方法。該方法結合點、線段和平面3種特征,在擴展卡爾曼濾波的框架內工作。首先,利用點特征來估計機器人的當前位姿;然后,構建綜合點、線、平面特征的觀測模型;最后,設計帶有平面約束的線段特征數據關聯方法,并構建相應的系統狀態更新模型,進一步增強了視覺SLAM系統的穩定性和精度。該方法通過線段和平面特征來描述環境結構更為準確、高效。
2.3 基于RGB-D的視覺SLAM優化方法
文獻[24]提出一種紅綠藍深度(red green blue-depth, RGB-D)SLAM方法,構建基于重投影深度差值的累積模型,將圖像分為動態和靜態2大區域??紤]到動態區域可能存在過分割的風險,排除與已匹配地圖點歐氏距離過大的動態區域特征點,采用t分布方法估計剩下特征點的靜態概率。在這種情境下,靜態區域的特征點和動態區域中可能被認為是靜態的特征點都被納入位姿的優化過程,但被賦予不同的權重。通過這種策略,可以得到經過篩選和優化的位姿,從而在動態環境中實現更為精確和穩定的定位。
文獻[25]提出一種基于增強分割技術的RGB-D SLAM方法。利用實例分割網絡和深度圖像聚類來檢測當前圖像幀中是否存在漏分割的情況。一旦檢測到漏分割,結合多幀數據來修復這些分割缺陷。在此基礎上,提取當前圖像幀中的Shi-Tomasi角點,并使用對稱轉移誤差來識別動態角點集合。結合修復后的實例分割結果來確定場景中每個實例對象的運動狀態。僅利用靜態特征點來追蹤相機的位姿,并構建實例級的語義八叉樹地圖,從而在動態環境中實現高效且準確的定位和地圖創建。
文獻[26]提出一種融合直接法和特征點法的RGB-D SLAM算法。該算法結合了直接法和特征點法的優點,利用后端優化和閉環檢測,在復雜環境中提高定位和建圖的準確性。在定位環節,利用直接法提供初步估計的相機位姿,通過特征點匹配和重投影誤差最小化進一步優化相機位姿。針對一些特定的情況,如稀疏紋理、光線變化和移動物體,通過優化位姿輸出策略和地圖點的篩選方法,使算法能夠更好地應對這些挑戰。在后端優化部分,設計一種關鍵幀選擇策略,同時考慮了直接法和特征點法選取的關鍵幀,分別維護這兩種關鍵幀,并在滑動窗口和特征地圖中進行并行優化。為了進一步增強SLAM的全局一致性,對全局關鍵幀進行閉環檢測和優化,為視覺SLAM系統提供了一個更加魯棒和準確的解決方案。
2.4 動態環境中視覺SLAM優化方法
文獻[27]提出一種融合光流和實例分割技術的SLAM方法。針對動態物體與靜態背景在光流方向上的差異,提出一種能夠實時檢測動態區域的掩模算法。該算法在ORB-SLAM2的基礎上,能夠迅速排除動態區域的特征點,去除與相機移動相關的光流,留下與動態物體自身運動相關的光流信息,并通過聚類分析光流大小,準確檢測出動態區域。利用動態掩模進一步篩選出與動態物體關聯的特征點,結合對極幾何約束,去除局部建圖過程中的動態路標點,在動態環境中提高了視覺SLAM系統的性能,確保更為準確和穩定的地圖構建和相機定位。
文獻[28]提出一種多焦距動態立體視覺SLAM方法,框架圖如圖3所示。
與傳統立體相機只能固定在一種焦距模式下工作不同,該方法能夠同時兼顧遠距離的景物和寬廣的視場,增強對不同距離和方向物體的感知能力。不同于對整幅圖像進行修正,其只調整特征點的位置,因此立體匹配更加準確且計算效率更高。同時設計了一種自適應的特征提取與匹配算法,針對多焦距圖像,增加了特征匹配的數量和準確性。結合多視圖幾何、區域特征流和相對距離判定來識別并剔除動態物體的特征點,從而確保視覺SLAM的準確性和魯棒性。
文獻[29]提出一種具備動態區域剔除能力的雙目視覺SLAM方法。該方法的核心思想是檢測并剔除受動態目標影響的特征點。利用立體視覺的幾何約束來鑒別場景中的動態稀疏特征點,結合場景的深度信息和顏色特征,實現場景區域的高效分割。通過已標識的動態點與場景分割結果,標出場景內的動態區塊。針對雙目ORB-SLAM策略,從算法中移除動態區域中的特征點,減少動態物體對SLAM精度的不良影響,為復雜動態環境中的高精度定位和建圖提供了有效策略。
文獻[30]提出一種在線構建視覺詞典的閉環檢測方法。該方法優先考慮與已有單詞Surf描述之間歐式距離最大的特征點。為了使詞典更具代表性并降低量化誤差,對特征點與單詞Surf描述之間的最近鄰約束條件進行改進,不僅可以更準確地描述和捕獲場景中的關鍵信息,還能避免因視覺混淆引入的誤差。
文獻[31]提出面向場景變化的SLAM框架—SceneSLAM。該框架支持場景檢測與SLAM算法的智能切換,實現對環境的動態自適應。依據場景判定,SceneSLAM自動選擇適宜傳感器驅動的SLAM方法,增強環境的適應性。設計了可以檢測室內、室外和低光環境的場景識別模型,并為各種光線變化提供自適應的SLAM模型。在算法切換時,系統能自動進行坐標和尺度轉換,確保定位與地圖構建結果具備全局一致性和尺度一致性。
2.5 回環檢測和后端優化方法
文獻[32]提出一種結合詞袋模型、圖像結構校驗及跟蹤預測模型的算法,算法流程圖如圖4所示。
首先,通過整合局部和全局特征,構建一個詞袋模型,該模型對比不同圖像的視覺單詞,能有效地篩選出可能形成閉環的候選幀;然后,采用圖像結構校驗模塊對當前圖像和閉環候選圖像進行灰度化和歸一化處理,處理后的圖像可作為局部特征的上下文,計算全局描述符;最后,設計跟蹤預測模塊,避免隨著圖像數量增加傳統的回環檢測計算時間大幅上升的問題,加快閉環檢測的計算速度,確保回環檢測實時性與準確性的平衡。
文獻[33]提出一種結合2個視覺里程計的后端位姿圖優化策略,系統框架如圖5所示。采用一個運行頻率高但精度稍低的端到端視覺里程計和一個運行頻率較低但精度更高的視覺里程計同時工作,提供的數據約束是局部優化的基礎,通過高斯-牛頓方法對其進行迭代優化。在進行全局優化時,基于關鍵幀進行場景匹配,同時與局部優化同步進行,確保高效和準確的軌跡估計。
3 結論
深度學習在視覺SLAM領域已經展現出較大的潛力和價值。盡管這是一個相對較新且不斷進化的研究領域,但它已經得到了廣大研究者的關注。深度學習與視覺SLAM的結合已在視覺里程計、場景識別及全局優化等多個任務上具有突出的表現。深度神經網絡以其出色的非線性擬合能力,在處理傳統方法難以模擬的復雜非線性關系時,表現出了優越的魯棒性。此外,將語義信息納入傳統的視覺SLAM可以進一步增強對圖像特征的理解,為創建語義豐富的高精度地圖開辟了新途徑。
參考文獻
[1] CHEN M, TANG Y, ZOU X, et al. 3D global mapping of large-scale unstructured orchard integrating eye-in-hand stereo vision and SLAM[J]. Computers and Electronics in Agriculture, 2021,187:106237.
[2] 曹軍,曾碧,何元烈.基于路標觀測的改進EKF-SLAM算法[J].自動化與信息工程,2014,35(1):21-26.
[3] 李旗,倪江南.一種運用計算機視覺和光學導航技術的采摘機器人[J].電子世界,2021(22):52-53.
[4] 楊筱慧.獼猴桃采摘機器人視覺導航路徑方法研究[J].科技風,2021(15):23-24.
[5] 倪江楠,石新龍.基于光學導航的采摘機器人系統設計及定位方法研究[J].農機化研究,2021,43(3):221-225.
[6] 張曉亮.基于圖像融合技術的采摘機器人自主導航技術研究[J].農機化研究,2020,42(11):193-196.
[7] 郭素娜,張麗,劉志剛.一種高精度自主導航定位的葡萄采摘機器人設計[J].農機化研究,2016,38(7):20-24.
[8] VINCENT P, LAROCHELLE H, LAJOIE I, et al. Stacked denoising autoencoders: Learning useful representations in a deep network with a local denoising criterion[J]. Journal of machine learning research, 2010, 11(12).
[9] GU J, WANG Z, KUEN J, et al. Recent advances in convolutional neural networks[J]. Pattern recognition, 2018,77: 354-377.
[10] ZHANG C, BENGIO S, HARDT M, et al. Understanding deep learning (still) requires rethinking generalization[J]. Communications of the ACM, 2021,64(3):107-115.
[11] 劉金輝,陳孟元,韓朋朋,等.面向移動機器人大視角運動的圖神經網絡視覺SLAM算法[J/OL].系統仿真學報:1-15. [2023-10-08].DOI:10.16182/j.issn1004731x.joss.23-0053.
[12]?史藍兮,顏文旭,倪宏宇,等.基于改進目標檢測的動態場景SLAM研究[J/OL].系統仿真學報:1-13.[2023-10-08].http://?kns.cnki.net/kcms/detail/11.3092.V.20230215.1438.005.html.
[13] 陳文峰,張學習,蔡述庭,等.基于YOLO v3和傳感器融合的機器人定位建圖系統[J].自動化與信息工程,2021,42(2):34-38;48.
[14] CREMONA J, CIVERA J, KOFMAN E, et al. GNSS-stereo-inertial SLAM for arable farming[J]. Journal of Field Robotics, 2023.
[15] 蔣暢江,劉朋,舒鵬.基于改進YOLOv5s的動態視覺SLAM算法[J/OL].北京航空航天大學學報:1-10.?https://doi.org/ 10.13700/j.bh.1001-5965.2023.0154.
[16] 郭烈,葛平淑,王肖,等.基于卷積神經網絡優化回環檢測的視覺SLAM算法[J].西南交通大學學報,2021,56(4):706-712;768.
[17] 鄭冰清,劉啟漢,趙凡,等.一種融合語義地圖與回環檢測的視覺SLAM方法[J].中國慣性技術學報,2020,28(5):629-637.
[18] 張云洲,胡航,秦操,等.基于棧式卷積自編碼的視覺SLAM閉環檢測[J].控制與決策,2019,34(5):981-988.
[19] XIONG J, LIANG J, ZHUANG Y, et al. Real-time locali- zation and 3D semantic map reconstruction for unstructured citrus orchards[J]. Computers and Electronics in Agriculture, 2023, 213: 108217.
[20] 馬鑫,梁新武,蔡紀源.基于點線特征的快速視覺SLAM方法[J].浙江大學學報(工學版),2021,55(2):402-409.
[21] 陳興華,蔡云飛,唐印.一種基于點線不變量的視覺SLAM算法[J].機器人,2020,42(4):485-493.
[22] 賈松敏,丁明超,張國梁.RTM框架下基于點線特征的視覺SLAM算法[J].機器人,2019,41(3):384-391.
[23] 李海豐,胡遵河,陳新偉.PLP-SLAM:基于點、線、面特征融合的視覺SLAM方法[J].機器人,2017,39(2):214-220;229.
[24] 林凱,梁新武,蔡紀源.基于重投影深度差累積圖與靜態概率的動態RGB-D SLAM算法[J].浙江大學學報(工學版),2022,56(6):1062-1070.
[25] 王浩,盧德玖,方寶富.動態環境下基于增強分割的RGB-D SLAM方法[J].機器人,2022,44(4):418-430.
[26] 谷曉琳,楊敏,張燚,等.一種基于半直接視覺里程計的RGB-D SLAM算法[J].機器人,2020,42(1):39-48.
[27] 徐陳,周怡君,羅晨.動態場景下基于光流和實例分割的視覺SLAM方法[J].光學學報,2022,42(14):147-159.
[28] 馮明馳,劉景林,李成南,等.一種多焦距動態立體視覺SLAM[J].儀器儀表學報,2021,42(11):200-209.
[29] 魏彤,李緒.動態環境下基于動態區域剔除的雙目視覺SLAM算法[J].機器人,2020,42(3):336-345.
[30] 王云峰,翁秀玲,吳煒,等.基于貪心策略的視覺SLAM閉環檢測算法[J].天津大學學報(自然科學與工程技術版),?2017,50(12):1262-1270.
[31] 史殿習,童哲航,楊紹武,等.面向場景變化的動態自適應同時定位與地圖構建[J].中國科學:技術科學,2018,48(12):?1373-1391.
[32] 安平,王國平,余佳東,等.一種高效準確的視覺SLAM閉環檢測算法[J].北京航空航天大學學報,2021,47(1):24-30.
[33] 曹劍飛,余金城,潘尚杰,等.采用雙視覺里程計的SLAM位姿圖優化方法[J].計算機輔助設計與圖形學學報,2021,?33(8):1264-1272.
作者簡介:
孟繁,男,1998年生,碩士研究生,主要研究方向:農業電氣化與自動化。E-mail:?3270530377@qq.com
周馨曌,女,1997年生,博士,主要研究方向:智慧農業、機器視覺、農業電氣化與自動化。E-mail: zxinzhao@126.com
吳烽云(通信作者),女,1988年生,博士,主要研究方向:智慧農業、機器視覺。E-mail: fyseagull@163.com
鄒天龍,男,1986年生,大專,主要研究方向:測控系統集成應用。E-mail:?84174619@qq.com