蘭建雄,焦興華,潘 勇,韓俊杰
(1.廣東省南粵交通仁新高速公路管理處,廣東 韶關 512600;2.廣州天勤數字科技有限公司,廣州 510620)
隨著我國高速公路網里程的不斷增加,高速公路養護巡檢工作量也隨之增大。傳統的人工巡檢方式,效率低,成本高,視角受限,已逐漸被新技術所取代。近年來,無人機技術因其體積小、高空視角、飛行靈活、機動性強等優點已經逐漸被深入應用到高速公路養護巡檢工作中。但由于無人機巡檢過程中存在諸多不可預測的障礙物,如樹木、建筑物等,給無人機操作帶來了巨大的困難。時常因環境復雜,巡檢過程中無法及時識別和躲避障礙物,而造成無法完成巡檢任務,甚至出現墜機現象,造成生命財產損失。因此,研究如何實現無人機在高速公路養護巡檢過程中自主避障能力非常必要。
目前,深度學習已經被廣泛應用到自然語言處理、車輛自動駕駛、人臉識別、虛擬助手及地震預報等方面。深度學習采用數據驅動方式進行特征提取,通過對大量圖像目標樣本的訓練,獲得數據集特定的特征表示,其對數據集的表達更加高效和準確,是實現無人機在復雜環境下對障礙物進行快速精準識別的重要技術手段[1]。郭潤蘭等人[2],結合機器人的工作原理以及卷積神經網絡(CNN)在圖像分類中的應用,提出了一種基于卷積神經網絡的壁面障礙物檢測識別算法。張崟等人[3],針對因霧霾、夜間等視線不佳環境下難以識別行人、車輛、涵洞和隧道等各類障礙物的難題,提出了一種基于神經網絡的車輔系統障礙物識別技術。陳成坤等人[4],針對果園自動駕駛車輛中的障礙物檢測問題,設計了一種雙目視覺結合YOLOv4的果園障礙物檢測與定位系統。毛先胤等人[5],采用了雙目視覺的方法,實現了電力線路上障礙物的定位測距。白麗娟等人[6],構建了障礙物檢測與車輛視覺定位的一體化系統,實現了對立體匹配結果的雙重利用。可見,在障礙物識別和定位方面,深度學習和雙目視覺技術已日漸成熟,成為了三維場景視覺識別和定位領域中極具代表性的技術方法。但目前主要應用還是在車輛自動駕駛方面,在無人機自主飛行方面相對較少,特別是在高速公路養護無人機自動巡檢方面。
結合高速公路養護巡檢管理的特點和管理要求,本文以YOLOv5算法為核心,構建障礙物識別模型。YOLO是單階段目標檢測的算法[7],其模型由Input(輸入端)、Backbone(主干網絡)、Neck(網絡)、Prediction(輸出預測端)四個部分組成。
首先將無人機采集到的視覺圖像進行標注。將標注完成的數據集作為樣本數據,輸入到障礙物識別模型中進行訓練,不斷優化模型參數,最終識別出典型障礙物(樹木、建筑物)的類型。接著以無人機為原點,構建獨立坐標系,通過RTK/INS技術和雙目視覺技術分別對無人機空間位置和障礙物空間位置進行計算,得出障礙物距無人機的長度和方位。并根據長度量和方位量制定無人機避障策略。最后將一整套算法部署于機載的高性能邊緣計算平臺中。詳細的技術思路如下。
首先通過人工對無人機視覺圖像樣本數據進行采集,主要的障礙物圖像包括樹木(道路兩旁的樹木、橋底兩旁的樹木)、建筑物(房屋、橋梁等)。接著對采集到的無人機視覺圖像進行標注,使用labelme工具對無人機視覺圖像中待識別的物體予以標注,標注文件以.“json”格式保存,并將無人機視覺圖像劃分為訓練集和驗證集,為接下來的障礙物識別做準備。
構建基于YOLOv5的障礙物識別模型,將標注好的障礙物樣本圖像作為輸入數據,輸入到YOLOv5網絡中進行目標識別,并根據識別結果,對模型的參數和結構進行調整,不斷地優化模型,提高障礙物的識別精度。
(1)坐標系建立
為了確定障礙物與無人機之間的相對位置,首先需建立空間坐標系,將無人機和障礙物的空間位置轉化到同一坐標系中。以無人機中心作為空間坐標系原點O,無人機前端方向作為y軸正方向,無人機右側作為s軸正方向,垂直于機體朝上作為z軸正方向建立空間坐標系。如圖1所示。
圖1 空間坐標系建立
(2)基于RTK/INS技術的無人機定位
無人機定位則通過安裝在無人機機身中心位置的RTK模組實現精準定位。RTK定位技術是一種實時接收觀測衛星載波相位值的動態相對定位技術[8],定位精度可達厘米級,其基本原理是設置基準站和移動站,將基準站架設在已知或未知坐標的參考點上,動態接收所有可視GNSS衛星信號,并將相關信息傳輸給移動站。移動站接收來自基準站的數據時,同步觀測采集GNSS衛星載波相位數據,以差分的方式剔除誤差,最終得出移動站的坐標(x,y,z)。而安裝在無人機上的RTK模組就相當于一個移動站。
為了獲得無人機的高精度的動態信息,除了通過RTK技術獲得具有高精度的速度和位置信息外,還需通過INS慣性導航系統,獲取無人機的姿態角等信息。利用慣性導航系統對加速度計和陀螺儀數據積分可獲得無人機的速度和姿態角等信息[9]。慣性導航系統不需要外部信息即可獲得位姿信息。但其誤差與時間相關,短時間內可獲得高精度的位姿信息,隨著時間推移,INS誤差也隨之越來越大。
(3)障礙物定位
障礙物的位置則是基于雙目視覺技術進行求解。雙目視覺技術通過模擬人眼從兩個不同的方向拍攝同一物點,而該物點在左右兩相機成像時會形成視覺差異,根據這一差異,利用三角測量法[10],可以計算出障礙物的三維坐標(x,y,z)。具體原理如圖2所示。
圖2 雙目立體視覺成像原理
障礙物的準確識別與定位是制定避障策略的關鍵。本文根據障礙物的種類、大小、方位、距離等信息,設計了一套復雜環境下無人機的避障策略。根據飛行路徑上障礙物與無人機之間的相對距離,將二者之間的區域劃分為安全區、預警減速區和避障區。
具體情況主要分以下幾種。
當無人機處于安全區(即無碰撞風險或碰撞風險極低的區域),無人機正常執行飛行任務。
當障礙物與無人機距離達到設定閾值,則進入預警減速區,無人機根據障礙物類別與屬性,做出減速飛行并進行拉升避障、下降越障、繞飛越障的飛行策略判斷。具體分以下幾種情況。
(1)當無人機識別出障礙物左右兩邊一定范圍內有一邊無其他障礙物時,便會優先向無障礙物的一邊執行繞飛越障策略。左右兩邊一定范圍內都無障礙物時,便會隨機選擇一邊執行繞飛越障策略。
(2)當無人機識別出障礙物左右兩邊一定范圍內都有其他障礙物,但上方無其他障礙物(如樹木)時,便會執行拉升避讓。拉升越障時,始終與障礙物保持一定距離。
(3)當無人機識別出障礙物左右兩邊一定范圍內都有障礙物,且上方有其他障礙物,而障礙物下方無其他障礙物時,便會執行下降避障,下降避讓時,始終與障礙物保持一定距離。
(4)當無人機遇到上下左右都有障礙物時,無人機會嘗試原地上升一定高度,再重新判斷障礙物分布情況。若原地抬升三次,上下左右仍有障礙物,則會向后臺發送請求,遠程人工進行輔助避障。
當減速到安全飛行速度并進入避障區,無人機執行相應避障策略,避障飛行期間,根據深度信息持續判斷碰撞風險,當觸發高風險碰撞警報,則懸停請求人工接管,降低撞機造成的無人機損壞和人員傷害風險。最后通過仿真和試驗,對整個系統進行優化,提升無人機在復雜環境下的感知與避障能力。
當巡查任務下達時,無人機飛控系統接到任務信息后便會執行相應的巡查任務。當無人機在執行飛行任務時,可通過邊緣計算進行障礙物障礙物識別,制定相應的避障策略。遇到復雜環境時,若無人機無法連續3次通過避障動作完成避障,則可以通過5G網絡向后臺發送信息,進行遠程人工輔助飛行。
將基于Python語言的障礙物識別、定位和避障算法部署在機載邊緣計算平臺上進行測試。
邊緣計算平臺相關參數見表1。
表1 邊緣計算平臺相關參數
通過損失函數可以清晰看出,訓練過程中,模型的預測偏差的降低。隨著訓練過程的進行,其預測能力與實際結果的偏差降低到一定程度不再降低。說明障礙物的識別準確率在不斷提高,見圖3。
圖3 損失函數
2021年12月~2022年7月,先后利用基于邊緣計算的無人機自主巡檢系統對仁新(武深高速公路仁化至新豐段)高速公路的85處重點邊坡和92座橋梁進行了巡查,共計發現邊坡沖刷31處,排水溝堵塞19處,橋梁地基沖刷70處,并及時處置了這些病害。
為了提升高速公路養護無人機自主巡檢能力,本文以多旋翼無人機為研究對象,結合實際高速公路養護巡檢場景,基于機載高性能邊緣計算平臺,研發了一套高速公路養護無人機自主巡檢系統,有效節約了人力成本,提高了高速公路養護巡檢效率。
真實場景下測試表明,本系統的避障能力具有較高的成功率,但目前對一些較為茂密的樹冠識別準確率有待提高,且對某些特殊的障礙物(如飛鳥等)仍無法實現準確識別和避障,需通過遠程人工輔助完成避障。