肖敏,郭美,蘇美珍
(湘南學(xué)院軟件與通信工程學(xué)院,湖南 郴州 423000)
AR(augmented reality)增強現(xiàn)實技術(shù)是建立在真實世界的基礎(chǔ)之上,擴展出虛擬的場景,使得真實世界與虛擬場景相結(jié)合,這樣增強了用戶的體驗感和交互性。AR技術(shù)的研究是近些年來研究的熱點,國內(nèi)和國外很多知名的公司都提供了AR開發(fā)的軟件開發(fā)工具包。在AR技術(shù)的研究中,二維圖像的特征識別算法是其中的關(guān)鍵技術(shù)之一。
圖像特征是能夠唯一識別圖像的標(biāo)志。在AR的圖像特征識別中應(yīng)該在圖像發(fā)生角度,光線明暗變化和位移的情況下,算法計算得出的特征應(yīng)該是不變的。特征識別算法中,SURF(加速穩(wěn)健特征)算法具有較高計算效率且具有尺度不變的特征;SIFT(尺度不變特征轉(zhuǎn)換——算法在空間和尺度上定位更加精確[1];FAST(加速分割測試獲得特征)算法專門用來快速檢測關(guān)鍵點[2];Harris特征檢測是檢測角點的經(jīng)典方法[3]。但各種算法都具備不同的優(yōu)缺點。
目前AR系統(tǒng)的開發(fā)流程主要步驟為,首先通過二維圖像或三維物體的特征來構(gòu)建特定的模型數(shù)據(jù)庫并保存在云端或者本地存儲中,然后通過特征識別算法匹配真實物體的特征與模型數(shù)據(jù)庫進行比較,如果真實物體的特征匹配,最后將構(gòu)造設(shè)計好的虛擬場景添加到真實世界中,進行三維展示,并且虛擬場景能夠隨著真實場景的變動和運動,進行準(zhǔn)確的定位。開發(fā)流程如圖1所示:
圖1 AR開發(fā)流程
從AR的開發(fā)流程圖可得,在AR技術(shù)的研究中,如何識別物體的特征是AR應(yīng)用的關(guān)鍵環(huán)節(jié),識別的方式可以是識別二維圖像特征然后把虛擬場景定位至準(zhǔn)確的三維世界位置;也可以是識別三維物體的特征然后把虛擬場景定位至準(zhǔn)備的三維世界位置[4-5]。虛擬場景的定位技術(shù)涉及到注冊跟蹤技術(shù)的研究,而物體的特征識別往往是實現(xiàn)AR應(yīng)用的第一步,本文主要研究二維圖像的特征識別算法,是目前最常用的AR實現(xiàn)方式之一。
普通圖像的特征識別,可以通過圖象的指紋信息進行識別,通常的識別方法為,首先將彩色RGB圖像進行轉(zhuǎn)換變換為灰度圖像,然后對各個像素的灰度值進行安全Hash運算,生成固定長度的圖片指紋信息。選擇好的安全Hash函數(shù)能夠讓圖片的指紋具有唯一性,能夠很好的實現(xiàn)圖片的特征識別[6-7]。但是這種方式不能適應(yīng)圖像的光線明暗變化與圖像的角度位移,也不適合在攝像頭的圖像下AR系統(tǒng)的特征識別。
圖像的空間域可以直觀的反應(yīng)的特征,圖像的特征點很可能出現(xiàn)在亮度變化較大的區(qū)域,這樣可以通過計算相鄰像素點之間的亮度差來確定圖像的特征點。在空間域比較相鄰像素點之間的亮度關(guān)系,對于彩色RGB圖像,亮度的計算公式為:
首先計算原始圖像中各像素點的亮度,構(gòu)建圖像的亮度矩陣,然后比較相鄰像素點的亮度差,相鄰相素點為Xi+1和Xi,如果相鄰相素點的差(Xi+1-Xi)>20,則確定此Xi為圖像的一個特征點,原如圖像的全部相素點進行相同的運算,并且選取出所有滿足條件的這樣的特征點,構(gòu)造成特征矩陣1.算法的流程圖如圖2所示:
圖2 空間域構(gòu)造特征矩陣流程圖
在對圖像的研究中,圖像的空間域和頻率域二者之間存在著必然的聯(lián)系,空間域中圖像信息的主要成分,在頻率域表現(xiàn)為低頻的信息;而空間域中圖像的非主要成分,在頻率域表現(xiàn)為高頻的信息[8-10]。這樣可以通過比較變換域的圖像低頻系數(shù),來確定圖像的特征。頻率域的特征識別算法步驟如下:
(1)把原始圖像的彩色RGB圖像轉(zhuǎn)化為256階的灰度圖,彩色圖像有R,G,B三個通道,可以使用對三個通道進行平均值求法,也可以使用加權(quán)平均值法。
(2)對256階的灰度圖像計算離散余弦變換DCT,把圖像從空間域轉(zhuǎn)換的頻率域。DCT變換相比離散傅立葉變換能夠更好的把圖像重要的信息聚集在一起,通過DCT變換能夠?qū)⑵淠芰康拇蟛糠旨杏陬l率域的一個小范圍內(nèi),這樣一來,描述不重要的分量,而在圖像的相似性比較中,需要的是圖像的主要信息,通過DCT變換正好能滿足算法的需求[11]。
(3)保留計算DCT之后的左上角系數(shù),這些代表的圖像的最低頻率。在通過DCT變換以后,左上角的系數(shù)是圖像的低頻,是圖像的主要信息,右下角的系數(shù)為圖像的高頻,表示圖像的細(xì)節(jié),是圖像不重要的成分[12]。
(4)因圖像在環(huán)境和明暗變化時,其DCT變換具有相似性,說明變換后的低頻部分矩陣只發(fā)生緩慢變化,用低頻矩陣確定為特征矩陣2。
(5)特征矩陣2包含圖片的低頻系數(shù),在AR系統(tǒng)進行圖像識別中,對識別的圖像做相同的變換,并比較不同圖片低頻系數(shù)的比值。如果得到的比值相同,可以確定圖像的相似性,如果得到的比值不同,可以確定圖像不匹配。頻率域的特征識別算法流程圖如圖3所示:
圖3 頻率域圖像相似判斷流程圖
為了測試算法的有效性,本次實驗選取20張不同的圖像,作為特征識別的數(shù)據(jù)集。然后對每張圖片進行光線變換,角度變換,共計生成20×5=100張圖片。
算法的測試基于這100張圖。測試的步驟為首先對所有的圖片首先構(gòu)造特征矩陣1進行匹配,如果能夠匹配再進行特征矩陣2的相似性匹配,當(dāng)2個特征矩陣都能匹配時,認(rèn)定AR系統(tǒng)識別的圖像和原始圖像具有一致性,滿足特征識別算法。
為了描述算法的實驗,僅選擇一個4×4的矩陣說明算法的操作步驟,采用上述方法對大量復(fù)雜背景的圖像進行了實驗。第一步:在空間域?qū)⒘炼炔钶^大的像素加入特征矩陣1,對不同圖像的特征點進行比較,確定圖像的匹配性如圖4所示:
圖4 特征矩陣1匹配圖
第二步:在頻率域進行低頻系數(shù)加入特征矩陣2,對不同圖像的低頻系數(shù)求比值,確定圖像的相似性,如果各低頻系數(shù)的比值相同,確定圖像與原始圖像是相似的,確定圖像的相似性如圖5所示:
圖5 特征矩陣2匹配圖
實驗結(jié)果表明,通過2個步驟確定的特征點識別算法,能較好的識別出指定圖像,并且在不同角度和光照的情況下識別效果也比較好,但是在實際應(yīng)用中AR的特征匹配算法除了考慮算法的識別度和精確度,還需考慮匹配算法的效率與響應(yīng)時間[13-14]。這是算法還需要進一步改進的方向。
對二維圖像或三維物體進行特征點識別,是AR系統(tǒng)設(shè)計的關(guān)鍵步驟,良好的特征識別才能準(zhǔn)確的把虛擬場景擴展到真實的世界中[15]。本文提出的變換域特征識別方法通過在不同域進行特征匹配,具有較好的性能,為AR系統(tǒng)的研究與設(shè)計提供了參考。