方錦浩?韓旭龍?盧一凡?梁毅強
摘要:本文首先對比了選取的ORB-SLAM算法與其余AR效果算法,總結了其優勢和缺點;簡述了項目實現所用到的關鍵技術,即在ORB-SLAM2下運行ros例程,并在其上疊加虛擬物體;同時將目前已有的地下管道實時顯示成果中使用SLAM算法的與使用ARToolkit工具做對比,說明SLAM算法更適用于本項目的戶外環境。
關鍵詞:增強現實;ORB-SLAM
引言:
增強現實技術(AR),也被稱為混合現實技術。它通過計算機程序,將真實的環境和虛擬的信息實時地疊加,在同一個畫面或空間同時存在。增強現實技術可以提供超過人類感知的信息,將現實世界信息與虛擬信息相互補充、相互疊加[1]。ORB-SLAM是2015年出的比較完整的基于關鍵幀的單目SLAM算法,其定位精確度很高,且可以實時運行[2],其最大的優點是計算速度快,但構建的特征點云圖相對稀疏。
本論文主要針對地下管線的虛擬增強現實監控技術的實現討論ORB-SLAM在AR領域的優勢。該技術是一種將管道信息和真實環境融合到同一個屏幕空間的實時顯示技術。其需要研究的核心問題是如何準確的將管道信息和真實環境融合以及如何實現增強現實管道圖像疊加的實時性。
一、AR底層算法選取。
首先在AR效果實現算法的選取上,現有的技術有使用ARToolkit的AR工具包、使用OpenCV和c++結合、利用python的BAR4Py框架實現或使用我們項目中使用的SLAM算法。接下來我們就這幾種實現方式做討論。
(一)ARToolKit與ORB-SLAM對比
ARtoolkit的實現步驟是:程序初始化----抓取一幀進行視頻的輸入----然后探測標示卡----計算攝像頭的轉移矩陣----繪制虛擬物體----關閉視頻捕捉[8]。首先在平臺的選取方面,ARToolKit擁有方便快捷,支持面廣,可以提供的快速和準確的標記跟蹤等優點,但是ARToolKit是基于計算機視覺的注冊方式,依賴于形狀規則的標志物,在復雜環境下很難適應[3],不適合直接應用于戶外增強系統的開發,需要做進一步的改進,所以需要與GPS RTK和INS結合合進行精確定位,保證一定的定位精度[5]。
ORB-SLAM算法中特征的提取與匹配、稀疏地圖的創建、位置識別都是基于ORB特征,屬于無標志的三維注冊,其定位精確度很高,且可以實時運行[6],相對于ARToolKit可以更好的適應戶外檢測管道的實際情況。
(二)OpenCV和c++結合與ORB-SLAM對比
據了解,一些項目通過OpenCV實現對圖像中的Marker(特定標識)的識別和定位,然后通過OpenGL將虛擬物體疊加到攝像頭圖像下,實現增強現實。實際上這種Marker的選取很大程度上類似與SLAM中特征點的選取,其過程都是先轉化成灰度圖在對現有圖像進行掃描滿足條件則選為特征點。在我們查閱到的相關項目中,在計算特征點后還需要利用C++算法提取Marker的輪廓并二值化,再計算攝像機位置,最后利用復雜的矩陣算法計算物體投影姿態,利用OpenGL將虛擬物體投影在Marker上。
這無疑增加了巨大的代碼工作量,其算法的快速性也有待提高,不足以成該項目要求的實時顯示。這再次體現了稀疏點云圖創建的ORB-SLAM算法快速、實時的優點。同時ORB-SLAM中可以調用pangolin庫在攝像頭畫面上疊加虛擬物體,直接調用封裝好的函數也可以提高該項目的工作效率。
(三)python的BAR4Py框架與ORB-SLAM對比
用Python來實現AR效果,首先需要運用到兩個工具包----PyGame與PyOpenGL。PyGame是非常流行的游戲開發工具包,它可以非常簡單的處理顯示窗口,輸入設備,事件以及其他內容。PyOpenGL是OpenGL圖形編程的Python綁定接口。在實現的過程中,我們需要獲取照相機矩陣并轉換到OpenGL格式,并以平面和標記物進行姿態估計,然后在圖像中放置虛擬物體。但是這種實現方法對于這個項目來說,同OpenCV和c++結合一樣有增加大量代碼工作量的缺點。
二、實現實時提取特征點的方法
本項目使用ORB-SLAM系統是基于ROS運行的。我們之前的檢測特征點的方式是將視頻裁剪成的圖片集載入,通過FAST特征點檢測法逐幀解算獲取圖像的特征點,從而獲得攝像頭的初始姿態,在初始化完成之后,根據后續圖片的特征信息一方面進行姿態優化,并不是實時的運行方式。
在項目的實現中,為了實現實時提取特征點,若采用ORB-SLAM與ROS Kinect結合的方法,雖然在調用攝像頭初始化的過程中需要一點時間,但在初始化調用SLAM后具有跟蹤特征點的效果,并將生成的特征點疊加在圖像上。我們,利用pangolin代碼在例程運行時,將一個可變化位置的三維物體疊加在攝像頭的畫面上,并可以使用圖形界面的按鈕改變三維物體的大小和位置。這樣的提取特征點的方法與我們項目之前使用的調用圖片集的方式相比更具有實時性。
三、地下管道實時顯示成果對比分析
據了解,現如今對于地下管道的實時顯示的研究成果仍然較少,做出完整的成果更是屈指可數,所以本項目的研究具有一定開拓性與創新性,同時城市地下管道是城市的重要基礎設施,它的安全運行是現代化城市高效率、高質量運轉的保證。目前實現地下管道信息的增強現實技術主要有以下兩種方法:(一)利用ARToolKit作為編寫增強現實應用程序的工具,結合GPS RTK和INS實現城市地下管道的三維可視化。(二)將AR技術與GIS技術結合將傳統的靜態的人機交互轉變為戶外的動態的交互,用AR建立的虛擬世界與客觀真實世界合二為一[4],用于適應戶外復雜的環境的情況。在利用ORB算法進行特征點選取等一系列工作。
我們在前文指出了ORB-SLAM相對于ARToolKit的優點,但ORB_SLAM構建的點云圖比較稀疏,不能直觀的看出構建的三維地圖形狀。點云圖是實際圖像的抽象提取,雖然并不直觀,但是卻已足夠用來進行管道匹配。而且點云圖在最終成果中并不直接展示,最終顯示畫面會是實際圖像和三維管道的疊加。所以這不影響此項目的運行效果。
參考文獻:
[1]朱淼良,姚遠,蔣云良.增強現實綜述[J].中國圖象圖形學報,2004,9(7):767-774.
[2]權美香,樸松昊,李國.視覺SLAM綜述[J].智能系統學報,2016,11(6):768-776. DOI:10.11992/tis.201607026.
[3]常勇,何宗宜.基于ARToolKit的地下管網增強現實系統研究[J].計算機工程與應用,2005(29):196-199.
[4]王涌天,劉越,胡曉明.戶外增強現實系統關鍵技術及其應用的研究[J].系統仿真學報,2003(03):329-333+337.
[5]王珂.增強現實技術的發展狀況及其在地下傳輸管網上的應用[J].中國管理信息化,2016,19(20):62-63.
[6]郝東升.移動終端地下管線透視探查系統[D].中國海洋大學,2015.
作者簡介:
方錦浩(1998-11-),男,漢族,重慶涪陵人,本科,研究方向:計算機視覺。
作者單位:東南大學