畢金強,許家?guī)?辛全波,尚東方
(交通運輸部天津水運工程科學研究所,天津 300456)
增強現(xiàn)實技術(Augmented Reality, AR)是在用戶觀察到的真實自然環(huán)境中添加計算機生成的文字、3D模型等信息的技術[1]。在綜合計算機圖形、光電成像、多傳感器、融合顯示、圖像處理和計算機視覺等學科知識的基礎上,實時地計算攝像機的位置及角度將虛擬世界套在現(xiàn)實世界并進行互動,已經(jīng)成功應用到醫(yī)療手術、工業(yè)設計、市政規(guī)劃、軍事仿真、教育培訓和文化娛樂等領域。圖像識別與匹配作為增強現(xiàn)實圖像信息提取與目標匹配的基礎,是現(xiàn)實世界場景匹配到虛擬對象的關鍵環(huán)節(jié)。1999年Lowe提出的SIFT(Scale-Invariant Feature Transform)尺度不變特征轉(zhuǎn)換算法,通過偵測與描述影像中的局部性特征,在空間尺度中尋找極值點來提取出其位置、尺度、旋轉(zhuǎn)不變量,成為圖像識別與匹配的典型算法,但是該算法在灰度變化相似的區(qū)域易產(chǎn)生誤匹配且特征提取及匹配速度效率較低[2]。因此,國內(nèi)外學者們開展了大量研究和算法改進,如Rosten等[3]提出的FAST(Features from Accelerated Segment Test)特征點檢測算法、Bay等[4]提出的SURF(Speeded-Up Robust Features)算法、Wanger等[5]提出的基于自然特征的6自由度跟蹤注冊算法、李楊等[6]提出的自然特征注冊方法等,通過檢測中心與周圍像素點的明暗程度來確定特征點,不僅穩(wěn)定高效,還降低了算法復雜度,提高了特征檢測和匹配的實時性。但是,上述算法的研究通常局限在室內(nèi)或戶外小范圍環(huán)境,所以無法適用于戶外大規(guī)模圖像的實時跟蹤注冊,以北京理工大學為代表的團隊開展了三維注冊、光照模型、深度檢測等方法研究并利用相關技術在重建圓明園的實驗中取得重要進展,開創(chuàng)戶外增強現(xiàn)實領域的先河[7]。
對于室內(nèi)小范圍場景或者單一精細場景而言,可定義圖像中的多個方向上的極大變化點,采用基于線性搜索和基于機器學習的特征分類等識別算法進行特征識別[8-9],在戶外場景識別方面,范志強等[10]和秦磊等[11]分別從數(shù)據(jù)聚類和內(nèi)容相關性方面進行了特征匹配方法的研究并取得進展。戶外增強現(xiàn)實一方面擁有更加復雜的地物信息,如場景圖像數(shù)量較大、相似建筑結構的紋理信息不易區(qū)分等,增加了圖像識別與匹配的難度;另一方面存在空間范圍廣、場景識別隨機性大等問題,加上手機的運算和存儲能力有限,難以進行大規(guī)模運算且效率較低。針對上述問題,本文提出的方法克服戶外場景圖像數(shù)量大、相似性多的難點,運用地理格網(wǎng)分割區(qū)域并建立空間索引提升運算處理效率,構建了智能端+服務端相結合的移動增強現(xiàn)實系統(tǒng),實現(xiàn)了戶外場景移動增強現(xiàn)實效果。
本文方法主要由4個部分組成:1)采集場景目標圖像,提取特征點; 2)基于地理格網(wǎng)構建空間四叉樹索引,建立樣本庫; 3)目標場景與位置信息集成,生成特征圖像; 4)特征圖像與樣本庫中的特征點進行訓練和匹配。
圖1展示了該方法的總體設計流程,整個流程分為2個分支:1)靜態(tài)樣本庫的建立,采集增強目標圖像進行特征點的提取,在此基礎上建立基于地理格網(wǎng)單元的空間索引并完成入庫;2)動態(tài)特征的生成,將獲取的實時圖像場景和位置角度信息進行集成。最后將動態(tài)特征與靜態(tài)樣本庫進行匹配訓練,提取滿足閾值要求的匹配信息,將增強信息渲染繪制在屏幕上,達到增強顯示效果。
圖1 總體設計流程圖
圖像特征檢測是近年來計算機視覺領域的研究熱點,孫世宇等[12]總結了特征檢測子目前存在問題及指出可能的發(fā)展方向,對比分析了當前普遍使用的特征檢測子的魯棒性與速度。文獻[4]中的圖像特征檢測算法在降低描述器維數(shù)和增強描述器魯棒性方面進行了優(yōu)化,惠記莊等[13]在此算法基礎上提出了一種基于SURF-BRISK的目標識別匹配與定位方法。本文對文獻[4]中的算法做了進一步改進,集成場景圖像的地理位置信息,提取并生成Location-SURF圖像特征描述,不僅提高了圖像識別與匹配的準確率,同時,能根據(jù)位置區(qū)分具有相似紋理的圖像特征。具體步驟為:
1)采集場景圖像。準備一張矢量化地圖,利用攝像機拍攝建筑不同方位的圖像,存儲建筑圖像并標記位置信息及相關屬性信息。
2)提取像素值點。利用Hessian[14]矩陣H(x,σ)檢測特征點,其中x表示特征點坐標,σ表示尺度。選取圖像后依次讀取像素點值I(x,y),將像素點值代替Hessian矩陣公式中的函數(shù)值f(x,y),計算出Hessian矩陣的3個矩陣元素。公式(1)表示在圖像中的一個點x(i,j)處尺度為σ的Hessian矩陣H(x,σ)。
(1)
c(x,y,σ)=DxxDyy-(0.9Dxy)2
(2)
比較求出的值c(x,y,σ)與設定的閾值的大小,如果大于閾值則標記該點像素值為關鍵點。
3)特征點定位。為了更精細表達圖像特征,構建金字塔式的圖像尺度空間,確保金字塔層中的每一層圖像大小保持不變,避免圖像二次抽樣,通過改變?yōu)V波器大小的方式按照上述步驟進行像素值的提取,標記出所有符合像素值的關鍵點。在以關鍵點為中心3×3×3的像素鄰域內(nèi)進行比較計算,即與同一尺度層中相鄰的8個點以及上下2層尺度的9個點分別進行比較計算,如圖2(a)所示。根據(jù)計算結果,丟棄小于預設極值的取值,依次調(diào)整閾值逐步減少檢測特征點的數(shù)量,最終確定以特征值大于周圍像素的點為關鍵特征點。接下來確定關鍵特征點的主方向,如圖2(b)所示,以關鍵特征點為中心,6S(S為特征點所在的尺度值)為半徑繪制圓形,在60°扇形范圍內(nèi)按照距離特征點的遠近貢獻大小,統(tǒng)計覆蓋區(qū)域內(nèi)所有點X、Y方向的特征并計算矢量方向,然后遍歷整個圓形區(qū)域,以最長矢量方向作為該特征點的主方向。按照上述步驟,逐個計算出關鍵特征點的主方向,如圖2(c)所示。
(a) 關鍵特征點提取
(b) 主方向計算
(c) 定位結果
4)特征點描述。根據(jù)關鍵特征點和主方向計算關鍵特征點的描述算子,以關鍵特征點為中心,沿主方向繪制長度20S(S為特征點所在的尺度值)的正方形窗格,將該正方形窗格劃分成4×4的子區(qū)域,每個子區(qū)域再分為25個像素分別計算水平方向和垂直方向的Haar小波特征,最后計算出水平方向值之和∑dx、水平方向絕對值之和∑|dx|、垂直方向之和∑dy、垂直方向絕對值之和∑|dy|,由此得出每個特征點的64維特征描述算子。
5)結合步驟1中記錄的位置信息,提取經(jīng)緯度坐標數(shù)據(jù),融合到特征描述算子中,生成Location-SURF圖像特征描述。
通過上述5步即可檢測提取出圖像的所有關鍵特征點和描述信息。
圖像特征點檢測提取生成海量的樣本特征點數(shù)據(jù),地理格網(wǎng)具有準確表達位置,可根據(jù)實際需要控制格網(wǎng)精度等優(yōu)點,已廣泛應用于位置服務以及地理國情監(jiān)測等諸多方面[15-16]。本文結合地理格網(wǎng)理論[17]在區(qū)域范圍進行地理格網(wǎng)單元的劃分,通過位置建立地理格網(wǎng)單元與圖像特征點的索引機制,進而提高數(shù)據(jù)的集成匹配速率。地理格網(wǎng)是指按一定的數(shù)學法則對地球表面進行劃分形成的格網(wǎng),基于小范圍區(qū)域的網(wǎng)格劃分方法有3種:按照方網(wǎng)格劃分的規(guī)則格網(wǎng)、按道路街區(qū)劃分的不規(guī)則格網(wǎng)和按行政區(qū)劃劃分的地理格網(wǎng)。結合本文研究的區(qū)域范圍,采用方網(wǎng)格劃分的方式構建地理格網(wǎng)模型,過程如下:
1)地圖處理。將研究區(qū)域范圍的地形圖進行坐標配準,建立WGS84空間參考系統(tǒng)并開展矢量化操作。
2)地理格網(wǎng)分級。以同一緯度上相鄰2條格網(wǎng)點的經(jīng)度坐標A(α1,β1),B(α2,β2),根據(jù)公式(3)計算距離D:
D=R×arccos(cos β1cos β2cos (α1-α2)+sin β1sin β2)
(3)
其中,R代表地球半徑。
(a) 地理格網(wǎng)劃分圖
(b) 目標分割示意圖圖3 試驗區(qū)域地圖
按照2″格網(wǎng)間隔進行計算經(jīng)度方向約為57 m,緯度方向距離約為62 m,確保設備在格網(wǎng)單元中采集圖像可獲取目標的整體性,圖3(a)表示戶外場景試驗區(qū)地理格網(wǎng)劃分圖。
3)地理格網(wǎng)編碼。單元格網(wǎng)代碼由象限代碼、格網(wǎng)間距代碼、間隔單位代碼、緯經(jīng)度代碼和秒緯、經(jīng)度格網(wǎng)代碼共18位組成,如圖4所示。
圖4 格網(wǎng)編碼規(guī)則
以圖3中左上角網(wǎng)格坐標計算出單元網(wǎng)格代碼為NE02S2912100181242,依次類推,形成該區(qū)域地理網(wǎng)格劃分編碼,上述過程完成了試驗區(qū)域地理網(wǎng)格的分級與編碼。
基于空間地理位置,將特征點與地理單元網(wǎng)格按空間四叉樹索引[18-19]的機制,將區(qū)域遞歸劃分區(qū)域→單元格網(wǎng)→目標場景→特征點層次的樹形結構,圖5表示本文建立的四叉樹結構,右圖自上而下根節(jié)點表示由ABCD這4個單元格網(wǎng)構成的區(qū)域,中間節(jié)點表示單元網(wǎng)格,葉子節(jié)點表示包含的建筑實體,每一個建筑實體包含若干特征點,通過樹形結構建立索引關系,具有較高的區(qū)域空間數(shù)據(jù)查詢檢索效率。
圖5 四叉樹索引示意圖
對于場景目標橫跨格網(wǎng)單元來說,如圖5中目標場景③橫跨A、B這2個單元格網(wǎng),傳統(tǒng)的四叉樹索引會造成數(shù)據(jù)的冗余,計算機會遍歷目標物的所有特征點進行查詢,每次查詢的數(shù)據(jù)量將增多,導致查詢效率下降。本文基于Location-SURF圖像特征描述中的位置信息,將此類目標場景進行分割,按照圖像的位置與格網(wǎng)單元建立索引,這樣在查詢計算時匹配所在單元網(wǎng)格中的特征點。如圖3(b)所示,目標場景劃分為區(qū)域1和區(qū)域2,對應的特征點分別與各自的單元格網(wǎng)建立索引,減少特征點的冗余。按照空間四叉樹索引規(guī)則,建立樣本數(shù)據(jù)庫表,將1.1節(jié)中提取的特征點存儲,構建目標特征點的樣本庫。
特征圖像是指采用二進制編碼將位置、角度信息和視頻幀數(shù)據(jù)嵌入,生成的具有唯一標識的特征圖像信息數(shù)據(jù)。數(shù)據(jù)包括文件頭和文件體2個部分信息,文件頭存放拍攝經(jīng)緯度坐標、方向角度、分辨率等信息,文件體存放視頻幀數(shù)據(jù)信息。其中視頻幀的獲取可調(diào)用Android手機的onPreviewFrame()接口,實時截取每一幀視頻流生成圖像。在增強現(xiàn)實表達過程中,需要保證設備的穩(wěn)定性,避免終端姿態(tài)變換等因素的干擾[20]。圖6表示手機豎直靜止狀態(tài)下的方位特征,X軸水平向右,Y軸垂直向上,Z軸指向屏幕正面,Pitch表示頂?shù)撞柯N起的角度,Roll表示左右側翹起的角度,Azimuth表示頂部朝向與正北方向的角度。拍攝過程中分別設置XYZ方向上的運動閾值,在一定時間內(nèi)不超過閾值則可采集圖像,同時記錄Azimuth和GPS坐標數(shù)據(jù),寫入編碼數(shù)據(jù)中。
圖6 傳感器方位示意圖
訓練匹配是方法的關鍵一步,也是評價本文方法是否成功的最主要依據(jù)。將特征圖像信息數(shù)據(jù)進行解析,按照1.1節(jié)圖像特征點檢測方法,首先根據(jù)特征圖像解析的經(jīng)緯度坐標確定采集點所在的單元網(wǎng)格,查詢該網(wǎng)格內(nèi)所包含的目標元素特征點集合,結合方位角計算可進一步縮小查詢的目標范圍。其次取某個關鍵點,采用歐氏距離與樣本庫的特征點向量進行相似性度量匹配,求出歐氏距離最近的前2個關鍵點,如果2個點最近的距離除以次近的距離小于比例閾值,則記錄這一對匹配點。針對圖像特征點與樣本庫的特征點數(shù)量達到萬級別的點集,采用線性搜索依次遍歷點集的方式非常耗時,本文采用k-d樹算法[21-22]查找每個特征點的近似最近鄰特征點,匹配效果如圖7所示。
圖7 訓練匹配效果圖
上述4節(jié)論述了本文方法,在顯示過程中求出匹配的特征點的中心點并掛接虛擬增強信息,返回到智能終端進行三維注冊。
本文選取寧波環(huán)球航運廣場戶外場景區(qū)域,面積約為0.376 km2。為確保移動設備在某一格網(wǎng)單元中傾斜攝影可獲取目標的整體,試驗區(qū)域按2″×2″劃分成28個網(wǎng)格,共采集270余幅增強現(xiàn)實目標圖像,建立20余萬樣本特征數(shù)據(jù)記錄。為了驗證本文所提方法的有效性和正確性,開展了2組試驗。
1)可行性試驗。
表1 目標與樣本特征點匹配表
名稱特征點數(shù)量匹配點數(shù)(樣本1)匹配點數(shù)(樣本2)匹配點數(shù)(樣本n)匹配成功圖像1113610…否圖像271101…否圖像3116314…否圖像411241177…是圖像5647134…否圖像6141800…否圖像777563…否圖像8856491…是圖像992000…否
利用智能終端在戶外不同位置采集了9幅室外場景圖像(其中2幅圖像與樣本庫采集圖像接近),提取特征點共計8750個,與樣本庫中270幅圖像樣本特征點(指圖像特征點檢測提取生成的特征描述信息的集合)進行匹配。表1記錄了匹配成功的特征點數(shù),結論為采集的圖像與樣本庫中樣本相近可匹配成功;圖8展示了圖像與樣本1進行訓練匹配的效果。試驗結果表明本文方法是正確、可行的。
圖8 目標與樣本特征點匹配圖
2)準確性試驗。
由于特征點空間具有高維性,相似的距離可能有大量的錯誤匹配問題。該試驗在上一試驗的基礎上,通過調(diào)整匹配成功點位(圖像4與樣本2、圖像8與樣本1)的比例閾值,逐步排除錯誤的匹配點,圖9顯示了不同比例閾值范圍內(nèi)的樣本匹配數(shù)量。當閾值設置較高時,匹配點數(shù)量多但錯誤率高,閾值設置較低時,匹配準確度高但數(shù)量少。綜合匹配數(shù)量與準確性2個方面因素得出,比例閾值設置為0.5~0.6之間時,既滿足匹配的數(shù)量又滿足匹配準確程度,可以得到良好的訓練匹配結果。
(a) 圖像4與樣本2匹配
(b) 圖像8與樣本1匹配圖9 比例閾值與匹配數(shù)量關系
3)對比分析。
在2組試驗的基礎上進行匹配率計算和時間復雜度的對比,進一步分析本文所提方法的效率。設置匹配點位的比例閾值為0.5,采用SURF算法和本文方法分別計算9幅圖像的正確匹配點數(shù)和所用的時間,匹配率計算結果如圖10(a)所示,時間復雜度對比結果如圖10(b)所示。
(a) 算法匹配率統(tǒng)計
(b) 時間復雜度分析圖10 算法對比分析
從匹配率結果看,圖像4和圖像8匹配成功,匹配率在95%以上,得出本文方法與SURF在匹配效果上基本保持一致。從時間復雜度結果看,本文方法可快速進行地理格網(wǎng)定位并進行匹配,耗費時間較短。綜上,本文方法具有更高的匹配效率。
基于本文提出的方法,采用感知采集、網(wǎng)絡傳輸、數(shù)據(jù)分析、增強展示四層技術架構,利用空間數(shù)據(jù)庫進行樣本數(shù)據(jù)存儲,開發(fā)了移動增強現(xiàn)實系統(tǒng)(MARS),其中感知采集和增強展示數(shù)據(jù)利用Android智能終端系統(tǒng)完成,數(shù)據(jù)的分析與匹配計算在服務器端進行,通過4G網(wǎng)絡傳輸實時交換數(shù)據(jù)和結果,系統(tǒng)體系結構如圖11所示。在系統(tǒng)中構建虛實融合場景的2層視圖框架,一層是攝像機視圖,用于顯示真實場景視頻畫面;一層是模型視圖,用于繪制注冊的虛擬增強信息,通過2層視圖的疊加建立現(xiàn)實世界與虛擬物體的坐標系統(tǒng)關聯(lián),達到增強顯示效果。
圖11 系統(tǒng)體系結構
模型采用Unity3D軟件制作,將模型設計在軟件中的坐標軸原點,以物體對象中心為軸心,建立模型面和點,制作完成后進行紋理貼圖,生成增強顯示模型文件,如圖12所示。
圖12 增強顯示模型
對試驗區(qū)域戶外建筑物進行識別,開啟手機攝像頭和GPS傳感器,對準目標建筑物,生成特征圖像并上傳至服務端運算,匹配成功后將虛擬增強信息繪制于屏幕上,圖13(a)和圖13(b)分別為環(huán)球航運大廈和交通大廈的增強現(xiàn)實效果。
(a) 環(huán)球航運大廈 (b) 交通大廈圖13 增強現(xiàn)實應用效果圖
針對開展戶外增強現(xiàn)實存在空間范圍廣、相似紋理多等問題,本文提出一種基于SURF與地理格網(wǎng)的移動增強現(xiàn)實方法,該方法首先構建靜態(tài)樣本庫,劃分地理空間格網(wǎng),建立四叉樹空間索引機制存儲圖像特征點,其次采集圖像特征和位置角度信息利用二進制編碼生成特征圖像,最后通過計算特征點的歐氏距離,采用k-d樹算法完成特征點的訓練匹配。通過2組試驗的分析與評價,驗證了方法的有效性和正確性,并基于該方法開發(fā)了移動增強現(xiàn)實系統(tǒng),實現(xiàn)了戶外場景增強現(xiàn)實顯示,并且可以很好地應用于室內(nèi)小范圍場景和單一精細場景。
在戶外不同環(huán)境下進行場景識別時,受光照、陰雨天氣等因素影響導致識別匹配率較低,下一步將針對該方法考慮增加光照模型等內(nèi)容,提升匹配率。
參考文獻:
[1] 羅斌,王涌天,沈浩,等. 增強現(xiàn)實混合跟蹤技術綜述[J]. 自動化學報, 2013,39(8):1185-1201.
[2] Lowe D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004,60(2):91-110.
[3] Rosten E, Drummond T. Fusing points and lines for high performance tracking[C]// Proceedings of the 10th IEEE International Conference on Computer Vision. 2005,2:1508-1515.
[4] Bay H, Ess A, Tuytelaars T, et al. Speeded-up robust features (SURF)[J]. Computer Vision and Image Understanding(CVIU), 2008,110(3):346-359.
[5] Wagner D, Reitmayr G, Mulloni A, et al. Pose tracking from natural features on mobile phones[C]// Proceedings of the 7th IEEE/ACM International Symposium on Mixed and Augmented Reality(ISMAR ’08). 2008:15-18.
[6] 李揚,孫超,張明敏,等. 跟蹤與匹配并行的增強現(xiàn)實注冊方法[J]. 中國圖象圖形學報, 2011,16(4):680-685.
[7] 王涌天,林倞,劉越,等. 亦真亦幻的戶外增強現(xiàn)實系統(tǒng)-圓明園的數(shù)字重建[J]. 中國科學基金, 2006,20(2):76-80.
[8] Oliva A, Torralba A. Modeling the shape of the scene: A holistic representation of the spatial envelope[J]. International Journal on Computer Vision, 2001,42(3):145-175.
[9] Vogel J, Schiele B. Natural scene retrieval based on a semantic modeling step[C]// The 3rd International Conference on Image and Video Retrieval. 2004:207-215.
[10] 范志強,趙沁平. 一種基于數(shù)據(jù)聚類的魯棒SIFT特征匹配方法[J]. 計算機研究與發(fā)展, 2012,49(5):1123-1129.
[11] 秦磊,高文. 基于內(nèi)容相關性的場景圖像分類方法[J]. 計算機研究與發(fā)展, 2009,46(7):1198-1205.
[12] 孫世宇,張巖,李建增,等. 影響特征檢測子魯棒性與速度方法的對比分析[J]. 電光與控制, 2017(8):24-28.
[13] 惠記莊,羅麗,楊永奎,等. 基于SURF-BRISK的目標識別匹配與定位方法研究[J]. 長安大學學報(自然科學版), 2016,36(3):93-101.
[14] 羅菁,林樹忠,倪建云,等. 基于Hessian矩陣的指紋細節(jié)點提取方法[J]. 光電工程, 2008,35(11):134-138.
[15] 狄琳. 建立新國家地理格網(wǎng)服務地理國情監(jiān)測初探[J]. 測繪通報, 2011(12):1-2.
[16] 白鳳文,許華燕. 國家地理格網(wǎng)在數(shù)字城市建設中的應用[J]. 測繪通報, 2012(4):92-94.
[17] GB/T 12409-2009, 地理格網(wǎng)[S].
[18] 郭薇,郭菁,胡志勇. 空間數(shù)據(jù)庫索引技術[M]. 上海:上海交通大學出版社, 2006.
[19] 周玉科,周成虎,馬廷,等. 基于數(shù)據(jù)分治與雙層索引的并行點面疊加分析方法研究[J]. 地理與地理信息科學, 2015,31(2):1-6.
[20] 嚴雷,楊曉剛,郭鴻飛,等. 結合圖像識別的移動增強現(xiàn)實系統(tǒng)設計與應用[J]. 中國圖象圖形學報, 2016,21(2):184-191.
[21] 張貴安,袁志勇,童倩倩,等. 層次結構K-d樹的立體圖像快速匹配方法[J]. 軟件學報, 2016,27(10):2462-2472.
[22] 陳劍虹,韓小珍. 結合FAST-SURF和改進k-d樹最近鄰查找的圖像配準[J]. 西安理工大學學報, 2016,32(2):213-217.