武 濤 ,楊文旺 ,蘇 勇 ,趙玉華
(1.北礦機電科技有限責(zé)任公司,北京 100160;2.礦冶科技集團有限公司,北京 100160)
傳統(tǒng)選礦車間人工巡檢量大,且高速運轉(zhuǎn)設(shè)備多、噪音大、藥劑味道濃烈、粉塵多,給操作人員的安全和健康帶來較大威脅。機器人是人工智能技術(shù)的重要應(yīng)用領(lǐng)域,自21 世紀(jì)以來,已經(jīng)成為前沿高新技術(shù)研究最活躍的領(lǐng)域之一,對經(jīng)濟和社會發(fā)展產(chǎn)生了巨大推動作用[1]。目前在金屬礦山領(lǐng)域已經(jīng)出現(xiàn)了選礦過程智能巡檢機器人替代人工巡檢的技術(shù)。通過選礦車間定位導(dǎo)航技術(shù)、機器人機械結(jié)構(gòu)與測控技術(shù)、多傳感器信息融合的智能分析決策技術(shù),形成了一臺具備智能行走、智能感知、智能決策,云端監(jiān)控等功能的智能巡檢機器人,實現(xiàn)對選礦車間全天候、全方位、全自主智能巡檢和監(jiān)控,有效降低勞動強度和運維成本,提高巡檢效率和管理智能化水平[2]。
定位導(dǎo)航技術(shù)是選礦機器人實現(xiàn)自主化和智能化的核心,常見的機器人定位導(dǎo)航方式包含地磁導(dǎo)航、慣性導(dǎo)航、激光雷達(dá)導(dǎo)航等[3]。其中地磁導(dǎo)航和慣性導(dǎo)航均需要在地面敷設(shè)引導(dǎo)物,存在線路固定、靈活性差、易破損等問題[4]。圖1 是礦冶科技集團研制的全球首臺套搖床巡檢機器人,并在云南某選礦廠成功應(yīng)用,其導(dǎo)航方式屬于地磁導(dǎo)航。激光導(dǎo)航雷達(dá)導(dǎo)航方式雖然定位精度較高,但激光掃描傳感器成本高昂且體積較大。
圖1 搖床巡檢機器人工業(yè)應(yīng)用
針對以上問題,本文擬研究基于雙目視覺傳感器和深度傳感器融合的VSLAM(基于視覺的即時定位與地圖構(gòu)建)導(dǎo)航技術(shù),通過研究點云地圖的構(gòu)建與路徑規(guī)劃方法,形成選礦巡檢機器人視覺導(dǎo)航技術(shù)及控制軟件產(chǎn)品,解決機器人在選礦復(fù)雜工業(yè)環(huán)境內(nèi)定位不準(zhǔn)的難題。
VSLAM (Visual Simultaneous Localization and Mapping),是指機器人在位置環(huán)境中通過視覺傳感器信息確定自身空間位置,并建立所處空間的環(huán)境模型[5]。它通過傳感器數(shù)據(jù)預(yù)處理方法、前端視覺里程計算方法、回環(huán)檢測和點云建圖定位和規(guī)劃路徑方法,形成三維地圖構(gòu)建和導(dǎo)航技術(shù)。主要的技術(shù)框架如圖2 所示。
圖2 VSLAM 技術(shù)框架圖
傳感器數(shù)據(jù)預(yù)處理:VSLAM 傳感器主要的組成功能模塊有工業(yè)相機、慣性測量單元等,在進行應(yīng)用過程中可以對數(shù)據(jù)進行標(biāo)定處理以及數(shù)據(jù)的同步。
前端(視覺里程計):主要根據(jù)相鄰兩幀圖像數(shù)據(jù)來分析相機運動進行研究。通過把相機采集到的幀數(shù)據(jù)串聯(lián)起來形成一個完整的運動軌跡,就可以比較好地解決定位問題。通過對串聯(lián)起來的幀數(shù)據(jù)進行分析可以得到像素空間位置,在處理中主要采用了視覺相關(guān)算法。
后端(非線性優(yōu)化):主要是對前端傳輸?shù)臄?shù)據(jù)進行優(yōu)化和處理,得到比較精準(zhǔn)的數(shù)據(jù)。主要有兩種方法:一種是基于濾波理論來對位姿數(shù)據(jù)進行優(yōu)化,常用的方法有EKF、PF、RBPF、UKF 等。在早期的系統(tǒng)應(yīng)用中以EKF 方法為主,在實際應(yīng)用中主要是把獲取到的狀態(tài)數(shù)據(jù)進行線性化處理,然后采用高斯分布的方法來對系統(tǒng)中的噪聲進行處理,通過采用卡爾曼濾波方法來對這些數(shù)據(jù)進行更新。但在實際應(yīng)用過程中,對噪聲較高的數(shù)據(jù)無法有效處理,所以在線性化處理的過程中會丟失高階項。另一種是非線性優(yōu)化,這種方法在應(yīng)用中是把變量作為圖像中的一個節(jié)點,通過迭代更新使精度得到保障。
回環(huán)檢測:在系統(tǒng)中主要完成機器人路徑規(guī)劃數(shù)據(jù)的識別,機器人能夠識別到自己走過的數(shù)據(jù),可以有效解決位置漂移問題。在系統(tǒng)中通過采用視覺回環(huán)檢測的功能可以對相機捕獲圖像的相似性進行分析,達(dá)到與人眼直接判斷位置數(shù)據(jù)一致的效果。由于系統(tǒng)采集的圖像數(shù)據(jù)比較豐富,因此應(yīng)用VSLAM 系統(tǒng)有比較大優(yōu)勢。在完成數(shù)據(jù)的檢測后會把這些數(shù)據(jù)回傳到后端調(diào)用算法來進行處理,從而最大限度地消除累積誤差。
建立地圖:VSLAM 在進行應(yīng)用中可以根據(jù)傳感器類型的不同來建立不同的地圖模型,通常在應(yīng)用中建立的地圖有2D 柵格地圖、2D 拓?fù)涞貓D和3D點云地圖等。
VSLAM 算法根據(jù)不同的原理可以分為直接法、間接法和混合法[6]。這些不同的方法應(yīng)用場景存在一定的差異,直接法主要針對圖像中的每個像素進行計算,然后通過分析求得相機的位姿數(shù)據(jù)。因為在進行數(shù)據(jù)的獲取過程中會存在紋理稀疏區(qū)域的差異,所以要考慮算法的魯棒性。這種算法在實際應(yīng)用過程中比較容易受到外部光線變化的影響。間接方法則依賴于特征的匹配,一方面這些數(shù)據(jù)要具有特異性,在進行數(shù)據(jù)提取過程中對光線變化不敏感,同時也可以比較精準(zhǔn)地提取特征數(shù)據(jù)。這兩者需求很難兼顧,因此在實際應(yīng)用的過程中,需要在特征數(shù)據(jù)提取速度與提取精度之間取得平衡。
特征算子和描述符:特征算子在整個系統(tǒng)中主要是完成對特征信息的提取,對所提取的特征數(shù)據(jù)還要進行描述,這樣就可以根據(jù)不同的特征數(shù)據(jù)的描述來分析出相似度。為了減小系統(tǒng)數(shù)據(jù)分析的誤差,會采用FAST 算子來完成對特征數(shù)據(jù)的檢測。
初始化:單目VSLAM 系統(tǒng)在應(yīng)用的過程中需要對環(huán)境信息進行初始化處理。
位姿估計:因為數(shù)據(jù)組織存在比較大的計算量,目前所有的SLAM 系統(tǒng)應(yīng)用的過程中都會采用位姿數(shù)據(jù)進行校驗。MONO-SLAM 在應(yīng)用的過程中會首先假設(shè)相機的位置信息,然后通過兩個幀數(shù)據(jù)之間的運動模型分析出位姿的詳細(xì)信息,但是需要系統(tǒng)對位姿變化有比較敏感的功能。LSD-SLAM 和SVO在進行高幀頻率數(shù)據(jù)的處理過程中并不是非常明顯,所以會采用當(dāng)前幀數(shù)據(jù)進行校驗和分析。
地圖生成:在地圖的應(yīng)用中主要有尺度地圖和拓?fù)涞貓D。在實際應(yīng)用過程中對地圖深度信息提取中可以比較直接地獲取到位置信息。尺度地圖在數(shù)據(jù)繪制中主要是通過不同稠密程度的點云數(shù)據(jù)進行描述。拓?fù)涞貓D可以很好的克服這一缺點。在VSLAM 的應(yīng)用過程中會采用節(jié)點關(guān)鍵幀數(shù)據(jù)來完成地圖的拓?fù)鋽?shù)據(jù)繪制,這樣可以對大規(guī)模場景進行模擬,比較準(zhǔn)確地獲取到相機的位置數(shù)據(jù)信息。
地圖維護:地圖優(yōu)化應(yīng)用過程中主要是采用位姿優(yōu)化的方法,在具體過程中可以采用非線性優(yōu)化處理。
錯誤恢復(fù):在系統(tǒng)實際運行的過程中存在比較多的問題,比如相機在劇烈運動的情況下會導(dǎo)致特征點的提取出現(xiàn)錯誤。為了有效提高整個系統(tǒng)運行的魯棒性,需要在系統(tǒng)設(shè)計中增加錯誤恢復(fù)能力,可以對不同的丟失數(shù)據(jù)進行追蹤。
選礦車間需要機器人智能巡檢的設(shè)備種類較多,例如磨機、浮選機和攪拌槽等多個設(shè)備。同時設(shè)備之間連接管道空間排布也較為復(fù)雜,這些復(fù)雜場景需要機器人所建點云地圖自適應(yīng)能力強,同時定位精準(zhǔn)才能達(dá)到智能巡檢要求。
由于視覺特征在應(yīng)用過程中更傾向?qū)嵨镞吘壍臋z測,容易導(dǎo)致數(shù)據(jù)測量過程中受到噪聲干擾,在具體應(yīng)用的過程中為了減小誤差,本文采用可靠的深度數(shù)值來完成特征數(shù)據(jù)提取,應(yīng)用中基于RGB-D SLAM 算法。在基于RGB-D 相機的三維重建中,輸入有深度信息和彩色信息,并且深度信息起主導(dǎo)作用,而在SLAM 和SFM 算法中輸入的主要是彩色信息。通過應(yīng)用平面特征提取的方法可以有效提高整個系統(tǒng)的精度以及魯棒性,同時在應(yīng)用過程中也可以使數(shù)據(jù)的測量更加合理。在這個過程匯總與ICP方法進行榮惡化可以實現(xiàn)視覺測量的精度,同時在應(yīng)用中構(gòu)建點云地圖,但是需要計算機設(shè)備具有GPU 加速。因為構(gòu)建的是點云地圖,所以在應(yīng)用的過程匯總會消耗一定計算資源,導(dǎo)致不容易進行維護,不利于機器人導(dǎo)航系統(tǒng)的應(yīng)用。
在本文研究過程中提出ORB-SLAM(Oriented FAST and Rotated BRIEFSLAM)方案,ORB-SLAM 基于PTAM 架構(gòu),增加了地圖初始化和閉環(huán)檢測功能,優(yōu)化了關(guān)鍵幀選取和地圖構(gòu)建的方法,在處理速度、追蹤效果和地圖精度上都取得了成效。實際應(yīng)用中主要是根據(jù)圖像的序列來對具體的位姿進行實時計算,系統(tǒng)計算的魯棒性和精度都要優(yōu)于之前所選擇的方法,這種方案還支持單目、雙目和RGB-D 攝像機。ORB-SLAM 在實際應(yīng)用的過程中可以對小尺度、大尺度等這些環(huán)境物體位姿進行實時的檢測,并提取物體特征數(shù)據(jù)來構(gòu)建特征點地圖,同時還可以支持自動化的初始化功能。這種技術(shù)方案相比RGB-D SLAM,會存在構(gòu)建稀疏特征點在實際應(yīng)用領(lǐng)域有限,該方案更加側(cè)重于點位功能,在機器人應(yīng)用過程中無法進行有效的避障以及路徑規(guī)劃。
為了解決存在的這些問題,在本文中將采用基于八叉樹結(jié)構(gòu)的高效、緊湊的地圖構(gòu)建算法。八叉樹的基本思想是,遞歸地把空間分成八個方塊,這些方塊在內(nèi)存中以八叉樹的形式組織起來,每個樹的節(jié)點對應(yīng)于空間中的一個方塊。用一個0~1 之間的浮點數(shù)來描述這個節(jié)點被(障礙物)占據(jù)的概率,0 表示未占據(jù),1 表示空閑,0.5 表示不確定。當(dāng)某個節(jié)點下所有子節(jié)點的概率都相同時(如都被占據(jù),都是空閑或都是不確定),則將這些子節(jié)點通過剪枝修剪掉,只保留父節(jié)點,從而節(jié)省內(nèi)存。通過八叉數(shù)算法可以高效完成對深度數(shù)據(jù)的采集,同時也可以構(gòu)建點云地圖,大大減少了內(nèi)存占用,通過該技術(shù)可以構(gòu)建適合選礦機器人系統(tǒng)應(yīng)用的數(shù)據(jù)地圖。選礦機器人VSLAM 巡檢系統(tǒng)方案圖如圖3 所示。
圖3 選礦機器人VSLAM 巡檢系統(tǒng)方案圖
本文提出了一種基于雙目視覺傳感器和深度傳感器融合的VSLAM 導(dǎo)航技術(shù),集成在選礦巡檢機器人系統(tǒng)中較好解決了長期存在的定位精度差、構(gòu)建地圖不準(zhǔn)等問題。同時該技術(shù)將會豐富機器人定位導(dǎo)航產(chǎn)品,促進有色行業(yè)人工智能與實體經(jīng)濟結(jié)合,具有較大經(jīng)濟效益和良好社會效益。
圖4 搖床設(shè)備巡檢機器人構(gòu)建地圖