向姍姍 陳永輝 王賦攀 王葉冰
(西南科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 綿陽 621010)
移動增強(qiáng)現(xiàn)實(shí)的目標(biāo)是將增強(qiáng)現(xiàn)實(shí)技術(shù)有效地應(yīng)用于移動設(shè)備終端,可分為兩種主要應(yīng)用形式:基于APP的增強(qiáng)現(xiàn)實(shí)和基于瀏覽器的增強(qiáng)現(xiàn)實(shí)(WebAR)[1~2]。以APP為載體的增強(qiáng)現(xiàn)實(shí)需要安裝特定APP,存在跨平臺難的問題,而運(yùn)行在瀏覽器端的WebAR,用戶通過訪問網(wǎng)頁即可使用AR 應(yīng)用,將虛擬物體疊加到真實(shí)場景中,并能夠隨著用戶位置和視線方向變化而實(shí)時變化,從而將交互擴(kuò)展到整個環(huán)境,將自己自然地融合于周圍的空間與對象,具有輕量級、跨平臺、易傳播等優(yōu)勢。WebAR可以廣泛應(yīng)用于廣告、游戲、教育、娛樂等多個領(lǐng)域[3~4]。
WebAR 系統(tǒng)可分為三大功能模塊:三維跟蹤注冊、虛實(shí)結(jié)合、實(shí)時交互。其中三維跟蹤注冊是關(guān)鍵技術(shù),用于實(shí)現(xiàn)對現(xiàn)實(shí)場景中的圖像或物體進(jìn)行跟蹤與定位[5~6]。WebAR系統(tǒng)的三維跟蹤注冊屬于基于計(jì)算機(jī)視覺的跟蹤注冊技術(shù),主要分為以下方法:1)基于標(biāo)志物的三維跟蹤注冊方法:需要預(yù)先在現(xiàn)實(shí)場景中放置特定標(biāo)志物,該方法對硬件要求不高,不需要先驗(yàn)知識,計(jì)算復(fù)雜度低,且具有較高的魯棒性。2)無標(biāo)志物的三維跟蹤注冊方法,該類方法又可分為基于自然特征的跟蹤注冊技術(shù)和基于模型的跟蹤注冊技術(shù)?;谧匀惶卣鞯母欁约夹g(shù)通過計(jì)算場景的自然特征完成跟蹤注冊,不需要標(biāo)志物,計(jì)算復(fù)雜度高[7];基于模型的跟蹤注冊技術(shù)需要使用目標(biāo)的虛擬模型信息作為先驗(yàn)知識,該方法主要用于解決缺少紋理或無紋理環(huán)境中無標(biāo)志物的三維跟蹤注冊問題。
為了更自然地與現(xiàn)實(shí)場景融合,無標(biāo)志物的三維跟蹤注冊方法是WebAR 系統(tǒng)發(fā)展的趨勢,該類方法需要預(yù)先建立圖像特征庫。自然特征處理時間和圖像匹配的準(zhǔn)確率是影響用戶體驗(yàn)的關(guān)鍵因素。常見的自然特征提取算法有SIFT[8]、SURF[9]、ORB[10]及AKAZE[11]等算法。SIFT、SURF 使用線性高斯金字塔構(gòu)建圖像尺度空間提取顯著特征點(diǎn),會損失局部精度,并且時間復(fù)雜度較高,不宜用于實(shí)時性較高的場景;ORB 算法使用基于模板的FAST算法快速提取特征點(diǎn),執(zhí)行速度快,但在旋轉(zhuǎn)魯棒性、模糊魯棒性和尺度變化等方面匹配效果不理想。AKAZE 算法采用非線性擴(kuò)散濾波策略建立尺度空間,不僅能夠有效保持物體和目標(biāo)的細(xì)節(jié)特征,而且在檢測準(zhǔn)確率和運(yùn)算速度上具有較好的平衡性。2018年閆興亞等[12]使用AKAZE算法提升了原有增強(qiáng)現(xiàn)實(shí)系統(tǒng)的實(shí)時性;2018 年閆興亞和范瑤等[13]提出的一種改進(jìn)ORB-SLAM 系統(tǒng),提高了特征點(diǎn)檢測和匹配的速度以及定位跟蹤的穩(wěn)定性。2020 年秦雪洲等[14]使用自然特征匹配估計(jì)相機(jī)運(yùn)動,以檢測平面作為參照物,實(shí)現(xiàn)虛擬物體的最終渲染。AR 模型首次加載時間的理想延遲是1秒,傳統(tǒng)的圖像檢索方法較難滿足用戶可接受的延遲性要求[15]。2018 年張南等[16]將顏色融入詞袋特征以提高圖像檢索的正確率。2019 年P(guān)ei 等[17]采用基于自然特征的改進(jìn)詞匯樹將模型的首次加載時間縮短了0.26s。
WebAR 在博物館、美術(shù)館、圖書館等領(lǐng)域有著廣闊的應(yīng)用前景,但受到光照、拍照角度、拍照距離、待識別物大小等客觀因素影響,目標(biāo)識別的準(zhǔn)確率和識別速度難以得到保障。針對WebAR 在圖書館和藝術(shù)館中的應(yīng)用問題,本文利用AKAZE 算法提取圖像局部特征,提出了一種融合空間位置信息的視覺詞匯樹檢索方法,增強(qiáng)了圖像局部特征的辨識度,從而提高了圖像檢索的準(zhǔn)確率。以此為基礎(chǔ),構(gòu)建了面向圖書館和藝術(shù)館的WebAR 系統(tǒng),實(shí)驗(yàn)表明該系統(tǒng)具有良好的實(shí)時性和魯棒性。
基于視覺詞袋模型[18]的圖像檢索方法是目前圖像檢索領(lǐng)域的主流方法,通過對訓(xùn)練集圖像的局部特征(通常使用SIFT 算法提?。┻M(jìn)行聚類,將聚類中心定義為視覺詞匯,生成“詞袋”,再將圖像局部特征量化為與其最相似的視覺詞匯,并統(tǒng)計(jì)出現(xiàn)頻數(shù),生成出視覺詞匯直方圖,以此作為圖像的檢索特征。查詢時,計(jì)算查詢圖像和圖像庫圖像的相似度,由高至低排序,生成檢索結(jié)果。
基于AKAZE 算法提取訓(xùn)練集圖像(即圖像庫中所有圖像)的局部特征。
AKAZE 算法構(gòu)建的非線性尺度空間,每層圖像的分辨率等同于原始圖像,共有O組,每組S層,每層的尺度參數(shù)計(jì)算公式為式(1):
其中δ0為尺度參數(shù)的初始基準(zhǔn)值,P=O*S是整個尺度空間中圖像總數(shù)。將σi轉(zhuǎn)化為時間單位,以表示尺度參數(shù),映射公式可表示為式(2):
AKAZE算法計(jì)算不同尺度歸一化后的Hessian值,以各個尺度下Hessian 局部極大值點(diǎn)作為穩(wěn)定的特征點(diǎn)。當(dāng)前尺度下Li利用Hessian 矩陣檢測方法為式(3):
特征點(diǎn)檢測完成后,AKAZE 算法引入M-LDB特征描述算法生成描述子,M-LDB 描述子以網(wǎng)格為子區(qū)域,以尺度δ為間隔重采樣,將采樣點(diǎn)的導(dǎo)數(shù)均值信息作為子區(qū)域的導(dǎo)數(shù)信息,增強(qiáng)描述子的可區(qū)分性和尺度不變性。
視覺詞匯樹的兩個重要參數(shù),即樹的深度L和樹的分支數(shù)K,詞匯樹的每個節(jié)點(diǎn)對應(yīng)一個視覺詞匯,具體的構(gòu)建過程如下:
1)采用K-Means 聚類方法將所有特征劃分成k個簇,使簇類具有較高的相似度而簇間相似度較低。
2)對每個簇類再進(jìn)行K-Means聚類,重復(fù)此過程,直到一個簇中的局部特征數(shù)量小于給定的閾值或樹的深度達(dá)到第L層時,聚類結(jié)束。
詞匯樹的葉節(jié)點(diǎn)即為視覺詞匯。視覺詞匯樹構(gòu)建過程如圖1所示。
圖1 構(gòu)建詞匯樹
在實(shí)際應(yīng)用中,為了達(dá)到較好的效果,單詞表中的詞匯數(shù)量K往往非常龐大,一般情況下,K的取值在幾百到上千,目標(biāo)類數(shù)目越多,對應(yīng)的K值也越大。
圖像經(jīng)過詞匯樹的映射,其局部特征可以量化為視覺詞典中與其最相似的視覺單詞,通過統(tǒng)計(jì)視覺詞匯在該圖像中出現(xiàn)的頻率(即:視覺詞匯直方圖),可將圖像表示為一個K維數(shù)值向量,該向量即為圖像的最終表示形式,其本質(zhì)是圖像局部特征量化的全局統(tǒng)計(jì)結(jié)果。
由于視覺詞匯樹中每個視覺詞匯的重要性不同,需要采用TF-IDF[19](Term Frequency-Inverse Document Frequency)方法為視覺詞匯賦予權(quán)重,進(jìn)一步強(qiáng)化重要性高的視覺詞匯。TF-IDF 是一種用以評估某個語料庫中一個詞匯對于其中一份文檔的重要程度的統(tǒng)計(jì)方法。將該方法應(yīng)用到視覺詞匯樹中,TF表示視覺詞匯xi在圖像dj中出現(xiàn)的頻率,若一個視覺詞匯在某圖像中出現(xiàn)頻率高并在其他圖像中出現(xiàn)頻率較低,則表示該視覺詞匯在這個圖像中的重要性越高,能夠較好表示該圖像的內(nèi)容,計(jì)算公式為式(4):
IDF 是逆文件頻率,表示視覺詞匯xi在整個圖像訓(xùn)練集中的重要程度,在圖像中認(rèn)定一個詞匯是重要的詞匯,則不應(yīng)該經(jīng)常出現(xiàn)在其他圖像中。因此,想要IDF 高,該圖的圖像頻率就必須低,可表示為式(5):
其中|D|表示訓(xùn)練集圖像的總數(shù)量,1+|j:xi∈dj|表示至少有一個包含詞匯xi的圖像的數(shù)量。
TF-IDF的計(jì)算公式為式(6):
但傳統(tǒng)TD-IDF算法沒有考慮視覺詞匯的位置信息,無法有效區(qū)分具有以下特征的圖像,如圖2所示。兩幅圖像的視覺詞匯直方圖完全一致,而兩幅圖的呈現(xiàn)內(nèi)容可能是完全不同的。
圖2 具有相同視覺詞匯直方圖的不同圖像
同時,通過藝術(shù)類常用的構(gòu)圖法可知,圖像中的每個元素的重要性與其在圖像中的位置有較密切的關(guān)系,用戶最感興趣的區(qū)域往往在中心位置,可將其當(dāng)看作圖像最重要部分,與中心區(qū)域相鄰的圖像區(qū)域,則被當(dāng)作次要部分;偏離中心區(qū)域最遠(yuǎn)的圖像區(qū)域,可作為不重要部分。
根據(jù)藝術(shù)類構(gòu)圖法,本文在TF-IDF的基礎(chǔ)上,提出了一種融合位置信息的非均勻分塊加權(quán)TF-IDF 算法,能夠?qū)D畫的重點(diǎn)區(qū)域賦予相對較大的權(quán)重,而相對邊緣部分賦予較小的權(quán)重,從而有利于突出重點(diǎn)特征值,圖像分塊策略如圖3(a)所示。對應(yīng)權(quán)值分配為
圖3 圖像非均勻分塊策略
融合位置信息的TF-IDF計(jì)算公式為式(7):
如圖3(b)所示,油畫的特征點(diǎn)主要集中在中心區(qū)域的建筑物和右側(cè)區(qū)域的樹木,其中邊緣區(qū)域特征點(diǎn)明顯多于中心區(qū)域的特征點(diǎn),會對圖像的視覺詞匯直方圖帶來較大的偏差,采用本文提出的非均勻分塊加權(quán)策略后,能夠較明顯地降低邊緣區(qū)域特征對視覺詞匯直方圖的影響,從而提高后續(xù)識別的準(zhǔn)確率和速度。
本文設(shè)計(jì)并實(shí)現(xiàn)了一個面向圖書館和藝術(shù)館的WebAR 系統(tǒng),系統(tǒng)的訓(xùn)練集圖像數(shù)據(jù)來源于搜集到的圖書館和藝術(shù)館中的書本和畫作,共800幅,使用基于AKAZE 的融合位置信息的視覺詞匯樹建立視覺詞匯字典。
系統(tǒng)采用混合編程實(shí)現(xiàn)。交互時,用戶通過瀏覽器打開手機(jī)攝像頭,獲取實(shí)時視頻流,使用opencv4nodejs庫從實(shí)時視頻流中捕捉關(guān)鍵幀,計(jì)算關(guān)鍵幀的特征點(diǎn);利用視覺詞匯樹進(jìn)行檢索,返回匹配度最高的圖像作為匹配結(jié)果;根據(jù)匹配的結(jié)果,前端使用three.js 生成帶有嵌入式網(wǎng)頁的AR 模型,而不是從后端或移動邊緣傳輸AR模型[20],能夠有效減少傳輸延遲;AR模型實(shí)時渲染時,根據(jù)視頻幀與訓(xùn)練集圖像匹配成功的特征點(diǎn),實(shí)時計(jì)算攝像機(jī)坐標(biāo)系與視頻幀中目標(biāo)的圖像坐標(biāo)系之間對應(yīng)關(guān)系,求解渲染模型變換矩陣,實(shí)現(xiàn)真實(shí)場景中的三維注冊。該系統(tǒng)的處理流程圖如圖4 所示,并可以將可視化結(jié)果直接作為增強(qiáng)現(xiàn)實(shí)模型進(jìn)行高效的交互和展示。
圖4 系統(tǒng)流程圖
當(dāng)圖像識別成功后會顯示增強(qiáng)現(xiàn)實(shí)效果。圖5(a)會顯示相關(guān)書畫的圖片,可以放大縮小圖片尺寸以更好展示書畫的信息獲得高質(zhì)量的體驗(yàn);圖5(b)會顯示相應(yīng)書畫的相關(guān)信息,如出版年、書名、作者、出版社和摘要等信息。在交互方式方面,用戶可以通過縮放、拖動、旋轉(zhuǎn)的方式進(jìn)行交互,其視覺效果和交互如圖5(a)、(b)所示。
圖5 視覺效果和交互圖
測試設(shè)備主要包括智能手機(jī)GLK-AL00(安卓手機(jī),運(yùn)行內(nèi)存8GB)、電腦(運(yùn)行內(nèi)存32GB)和阿里云服務(wù)器,測試過程中使用的瀏覽器是火狐瀏覽器。
在測試中,視頻流中截取的視頻幀的大小是320*240 像素,訓(xùn)練集是100 張圖片,測試為50 張圖片,對照組分別采用ORB、SIFT、SURF 算法。實(shí)驗(yàn)?zāi)J(rèn)情況是在實(shí)驗(yàn)室的室內(nèi),光照良好、場景寬闊、手機(jī)攝像頭距離識別目標(biāo)1m 以內(nèi)和拍攝時垂直于識別目標(biāo)。在進(jìn)行光照的對比實(shí)驗(yàn)時,通過開關(guān)燈控制光照的改變且其余條件不變。尺度變化實(shí)驗(yàn)時只改變圖片的像素大小,其余保持不變。分別對四種算法在實(shí)驗(yàn)?zāi)J(rèn)情況、尺度和亮度變化的情況下,對比平均檢索時間和檢索準(zhǔn)確率,平均檢索時間以微秒為單位,實(shí)驗(yàn)結(jié)果如表1和表2所示。
表1 亮度變化(訓(xùn)練集100片,測試50張)
表2 尺度變化(訓(xùn)練集100片,測試50張)
實(shí)驗(yàn)結(jié)果表明,在亮度變化時,本文提出的算法檢索準(zhǔn)確率高于ORB、SIFT、SURF 算法,平均檢索時間穩(wěn)定,低于ORB 算法,明顯高于SIFT、SURF算法。在測試圖像和訓(xùn)練圖像特征匹配的過程中本算法的匹配率最高,其次是ORB 算法;SIFT 算法和SURF 算法的匹配率相對其他兩種算法較低。表1表明了圖像亮度的變化對圖像識別率的影響。
實(shí)驗(yàn)結(jié)果表明,當(dāng)圖像尺度變化時,本算法平均檢索時間優(yōu)于SURF 和SIFT 算法,平均在48ms左右,ORB 算法的運(yùn)行時間最短,但在相同情況下ORB的檢索精度低于本文算法。
再將本算法和ORB 算法進(jìn)行單獨(dú)對比,隨著圖片數(shù)量增加,準(zhǔn)確率、識別時間變化如表3所示。
表3 不同圖像數(shù)量下平均檢索時間、準(zhǔn)確率變化
實(shí)驗(yàn)結(jié)果表明,本文算法在光照、尺寸變化的情況下,平均檢索時間和檢索正確率上達(dá)到了很好的平衡,并且隨著訓(xùn)練集數(shù)量的增加,性能沒有出現(xiàn)明顯下降。為后續(xù)增強(qiáng)現(xiàn)實(shí)系統(tǒng)中的跟蹤注冊、實(shí)時渲染提供了良好基礎(chǔ)。
為驗(yàn)證系統(tǒng)的有效性,邀請40 名測試人員,均是西南科技大學(xué)的學(xué)生,通過圖書館和藝術(shù)館中書畫的作者姓名、創(chuàng)作時間(出版年)、書畫名稱、出版社和摘要(歷史意義)等方面和首次加載AR 模型的響應(yīng)時間、識別書畫的準(zhǔn)確性、交互效率和界面布局等來評估系統(tǒng)的有效性(系統(tǒng)是否能幫助用戶快速理解圖書館和藝術(shù)館中書畫的相關(guān)信息)。得分越高,表示滿意度就越高,分?jǐn)?shù)從0~10 表示。評分結(jié)果如表4所示。
表4 用戶滿意度評估
表4 的統(tǒng)計(jì)結(jié)果說明了該系統(tǒng)可以有效地幫助用戶快速理解內(nèi)容,提升對書畫的了解程度。不僅符合用戶在觀看書畫時搜索作者、書本摘要(歷史意義)的習(xí)慣,也體現(xiàn)出系統(tǒng)滿足了用戶對于實(shí)時性和交互效率方面的需求,因此該評估間接驗(yàn)證了系統(tǒng)的有效性。
本文面向圖書館、藝術(shù)館、美術(shù)館等應(yīng)用場景,提出了一種基于AKAZE的融合位置信息的視覺詞匯樹檢索算法,在平均檢索時間和檢索正確率上達(dá)到了很好的平衡,對于較大規(guī)模的數(shù)據(jù)集,仍具有良好的適用性。以此為基礎(chǔ)構(gòu)建了WebAR 展示系統(tǒng),實(shí)驗(yàn)結(jié)果表明,本系統(tǒng)在明暗變化、尺度縮放等情況下能保持很高的檢索準(zhǔn)確率和較低的平均檢索時間,具有良好的實(shí)時性和魯棒性,提升了WebAR的互動性,可以進(jìn)一步應(yīng)用在室內(nèi)外以及更復(fù)雜的交互環(huán)境中。