張笑宇
(西安工程大學(xué)電子信息學(xué)院,西安 710600)
隨著智能移動(dòng)設(shè)備的廣泛普及和硬件配置的不斷提高,混合現(xiàn)實(shí)技術(shù)受到越來越多人的重視,成為了當(dāng)下研究的熱點(diǎn)。目前混合現(xiàn)實(shí)技術(shù)在識(shí)別二維圖像或標(biāo)志物方面效果不錯(cuò),可在被識(shí)別的圖像上生成虛擬的模型、文字、視頻等,但是在識(shí)別三維物體上效果不是很好,而且識(shí)別的距離較短。這些問題都亟待解決,需要一個(gè)新的方案來改變混合現(xiàn)實(shí)識(shí)別技術(shù)的現(xiàn)狀。隨著神經(jīng)網(wǎng)絡(luò)的出現(xiàn),深度學(xué)習(xí)在圖像識(shí)別領(lǐng)域有了迅猛的發(fā)展,人們對(duì)深度學(xué)習(xí)的研究也日益深入。文獻(xiàn)[1]中針對(duì)混合現(xiàn)實(shí)技術(shù)識(shí)別距離短的缺點(diǎn),使用ARToolKit 增強(qiáng)現(xiàn)實(shí)系統(tǒng),提出了基于輪廓特征點(diǎn)的目標(biāo)識(shí)別方法,增加了識(shí)別距離,但其所使用的是有標(biāo)志物的識(shí)別方式,應(yīng)用的場(chǎng)景比較有限;文獻(xiàn)[2]中構(gòu)建了基于深度傳感器的遠(yuǎn)距離跟蹤技術(shù),把Kinect 傳感器的坐標(biāo)系和攝像頭的坐標(biāo)系相匹配,協(xié)調(diào)兩者作為追蹤系統(tǒng),為增強(qiáng)現(xiàn)實(shí)的遠(yuǎn)距離識(shí)別提供了一種思路,但需要借助Kinect設(shè)備,在目前的智能手機(jī)上無法推廣使用;文獻(xiàn)[3]在LeNet-5 模型的基礎(chǔ)上,提出一種基于深度卷積神經(jīng)網(wǎng)絡(luò),識(shí)別現(xiàn)實(shí)場(chǎng)景里的目標(biāo)物體,接著在物體上渲染虛擬模型的方法,成功識(shí)別了三維物體,解決了混合現(xiàn)實(shí)不能識(shí)別三維物體的問題,但是虛擬模型和目標(biāo)物體的契合度不夠好;文獻(xiàn)[4]搭建了AR+深度學(xué)習(xí)的平臺(tái),為在線學(xué)習(xí)提供了新的形式,也為混合現(xiàn)實(shí)技術(shù)和深度學(xué)習(xí)相結(jié)合提供了一種新思路,但是平臺(tái)的擴(kuò)展性不夠好,每加入新的內(nèi)容都需要重新開發(fā);文獻(xiàn)[5]使用深度學(xué)習(xí)來增加圖像識(shí)別的準(zhǔn)確度,使用SIFT 算法提取校園景點(diǎn)的特征,把它保存為一維向量并和數(shù)據(jù)庫里保存的信息進(jìn)行匹配,結(jié)合AR 技術(shù)制作了一個(gè)校園導(dǎo)航應(yīng)用,把深度學(xué)習(xí)和AR 完美的融合在了一起,但是卷積過程花費(fèi)了太多時(shí)間,在移動(dòng)設(shè)備上運(yùn)行CNN 時(shí),使用3D模型出現(xiàn)了明顯的延遲;文獻(xiàn)[6]提出了一種基于YOLO 和SIFT 的貓鼻子識(shí)別系統(tǒng),首先在Darknet中使用YOLO 檢測(cè)貓鼻子,檢測(cè)成功后從圖像中裁剪鼻子,以數(shù)據(jù)庫中的貓鼻子圖像為參考,利用SIFT 方法和k-NN 算法進(jìn)行識(shí)別,平均精度達(dá)到95.87%,這種方法為混合現(xiàn)實(shí)中特征點(diǎn)的提取提供了思路;文獻(xiàn)[7]使用YOLO 進(jìn)行實(shí)時(shí)的行李檢測(cè),給出了一個(gè)支持參數(shù)設(shè)置的GUI,有了這個(gè)GUI,監(jiān)測(cè)系統(tǒng)可以不受光照和攝像機(jī)位置的影響,同時(shí)使用GUI 界面可以設(shè)置事件,用于某些特定的情況,大大增加了YOLO 的功能;文獻(xiàn)[8]將YOLO 網(wǎng)絡(luò)模型用于行人檢測(cè),在深度網(wǎng)絡(luò)前增加了三個(gè)透層,并將原YOLO 網(wǎng)絡(luò)中的透層連接數(shù)由16 層改為12層,提高了網(wǎng)絡(luò)讀取淺層行人特征的能力,有效提高了YOLO 檢測(cè)行人的精度,降低了誤檢率和漏檢率,但對(duì)部分距離較近的人的識(shí)別效果不太好。
基于上述研究成果,通過對(duì)YOLO 算法和混合現(xiàn)實(shí)進(jìn)行一系列對(duì)比實(shí)驗(yàn),可提出一種新設(shè)想,利用YOLO 算法來改進(jìn)混合現(xiàn)實(shí)的不足。首先對(duì)混合現(xiàn)實(shí)技術(shù)和YOLO 的原理及發(fā)展現(xiàn)狀進(jìn)行介紹,在此基礎(chǔ)上,分別對(duì)混合現(xiàn)實(shí)技術(shù)和YOLO 在目標(biāo)識(shí)別方面的效果進(jìn)行實(shí)驗(yàn)。
混合現(xiàn)實(shí)技術(shù)是利用攝像頭拍攝真實(shí)場(chǎng)景,結(jié)合移動(dòng)終端里傳感器的數(shù)據(jù),實(shí)時(shí)地把虛擬物體疊加到真實(shí)場(chǎng)景中,并進(jìn)行數(shù)據(jù)交互的一項(xiàng)技術(shù),其交互的形式有很多種,如文字,視頻,模型,音頻等[9]?;旌犀F(xiàn)實(shí)有三大關(guān)鍵技術(shù):目標(biāo)識(shí)別、跟蹤注冊(cè)以及高效渲染。目標(biāo)識(shí)別技術(shù)指的是迅速在場(chǎng)景里找到需要被識(shí)別的目標(biāo),達(dá)到快速理解現(xiàn)實(shí)場(chǎng)景的效果;目標(biāo)跟蹤技術(shù)在應(yīng)用中有兩種形式,第一種用檢測(cè)和分類的方式,使用機(jī)器學(xué)習(xí)算法訓(xùn)練識(shí)別目標(biāo),以生成對(duì)應(yīng)的模型;第二種是用圖像識(shí)別的方式,提取識(shí)別目標(biāo)圖像中所包含的特征信息,在系統(tǒng)運(yùn)行時(shí)實(shí)時(shí)地提取數(shù)據(jù)流圖像特征,同時(shí)與目標(biāo)圖像相匹配,以實(shí)現(xiàn)快速定位被識(shí)別目標(biāo)[10]。
早期的混合現(xiàn)實(shí)系統(tǒng)受移動(dòng)設(shè)備存儲(chǔ)計(jì)算能力的限制,主流方法是使用有標(biāo)志物的識(shí)別方式[11],首先使用黑白兩種顏色來制作正方形模板,它的灰度直方圖分布只有兩個(gè)峰值,然后采用最大類間方差法來對(duì)圖像二值化處理,首先識(shí)別出黑色邊框,接著提取四個(gè)角點(diǎn)跟蹤監(jiān)測(cè),以實(shí)現(xiàn)對(duì)攝像頭位姿的估計(jì)。但這種模板存儲(chǔ)的特征比較少,而且支持的模式有限,在實(shí)際的場(chǎng)景中應(yīng)用起來有些笨重。所以混合現(xiàn)實(shí)的趨勢(shì)是向無標(biāo)志物的識(shí)別[12]上發(fā)展,無標(biāo)志物的識(shí)別以場(chǎng)景的特征描述為重點(diǎn)識(shí)別途徑,比如顏色、紋理、形狀、自然特征點(diǎn)。這些特征都能夠用一個(gè)一位的特征向量來描述,在檢索階段都要選用對(duì)應(yīng)的相似度匹配方法。比較常見的相似度計(jì)算方法有漢明距離、歐幾里得距離、皮爾森相關(guān)系數(shù)等。
在神經(jīng)網(wǎng)絡(luò)出現(xiàn)后,深度學(xué)習(xí)在圖像識(shí)別領(lǐng)域迅猛發(fā)展。它使用TensorFlow 的深度學(xué)習(xí)框架,與LeNet-5 的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)相結(jié)合,能自動(dòng)學(xué)習(xí)和提取圖像里的特征。此方法在對(duì)大量圖片的識(shí)別、分類的情況下尤為有效。深度學(xué)習(xí)的缺點(diǎn)是它只適用于大量圖片的情況,若圖像集過少就難以發(fā)揮作用。
使用混合現(xiàn)實(shí)技術(shù)的基于標(biāo)記和基于內(nèi)容的圖像識(shí)別方法跟新產(chǎn)生的基于深度學(xué)習(xí)的圖像識(shí)別方法進(jìn)行比較,選取其中具有代表性的SIFT[13]和YOLO算法進(jìn)行介紹和對(duì)比。
為獲取不同尺度且尺度連續(xù)的眾多圖片,要以高斯金字塔為圖片進(jìn)行高斯濾波。高斯金字塔為一個(gè)原始的圖像,產(chǎn)生不同組,每一組中又包含不同層。尺度不變特征變換匹配算法,即SIFT,通過引入尺度空間的概念引入尺度不變性,把一張圖片使用高斯卷積操作生成了多個(gè)尺度的圖片,然后加入多分辨率框架,每次都把采樣寬高降為原圖的1/2。接下來對(duì)同層的相鄰圖片進(jìn)行差分操作,可以生成高斯差分金字塔(DoG)。在DoG 中,采用了區(qū)域搜索算法來尋找最大值或最小值點(diǎn),考察其中每個(gè)點(diǎn)的領(lǐng)域點(diǎn),包括周圍的8 個(gè)點(diǎn)和上下相鄰尺度的18 個(gè)點(diǎn),共26 點(diǎn)。一個(gè)點(diǎn)若是在26 個(gè)領(lǐng)域點(diǎn)中是最大值或者是最小值,則可認(rèn)為其是圖像在對(duì)應(yīng)尺度下的一個(gè)特征點(diǎn)。檢測(cè)完所有點(diǎn)后,使用相應(yīng)的算法來去掉其中不好的點(diǎn)及邊緣的特征點(diǎn),以此更穩(wěn)定地提取特征點(diǎn)。
SIFT 算法首先計(jì)算特征點(diǎn)周圍鄰域像素的梯度方向,然后把方向累積直方圖統(tǒng)計(jì)出來,接著設(shè)置累計(jì)值最大的方向當(dāng)作該特征點(diǎn)的主方向,把后面特征點(diǎn)描述的坐標(biāo)軸方向旋轉(zhuǎn)成和特征點(diǎn)的主方向一致。所以旋轉(zhuǎn)過的圖片也會(huì)和原圖片里的特征描述一致,從而實(shí)現(xiàn)旋轉(zhuǎn)不變性。
提取完特征點(diǎn)后,需要建立關(guān)鍵點(diǎn)之間的映射關(guān)系,從而把同一個(gè)空間點(diǎn)在不同的圖像里的映像點(diǎn)對(duì)應(yīng)起來,也就是尋找?guī)瑘D像與幀圖像之間對(duì)應(yīng)部分的一個(gè)過程。確定目標(biāo)圖像和圖像特征點(diǎn)集是否相匹配,可大致分為以下幾步進(jìn)行[14]:
1)假設(shè)目標(biāo)的特征點(diǎn)集和它的圖像特征點(diǎn)集存在一個(gè)對(duì)應(yīng)關(guān)系;
2)通過這個(gè)關(guān)系來計(jì)算兩者之間發(fā)生的變換;
3)應(yīng)用該變換到目標(biāo)點(diǎn)上,獲得變換以后的目標(biāo)點(diǎn)集;
4)比較變換后的目標(biāo)點(diǎn)集與圖像的特征點(diǎn)集,以驗(yàn)證假設(shè)是否正確。
一般情況下匹配算法基于歐式距離,達(dá)到所設(shè)置的距離閾值,即為所接受的匹配點(diǎn)對(duì)。特征點(diǎn)匹配完成后,需要確定真實(shí)環(huán)境和目標(biāo)圖像之間的位置關(guān)系,為三維注冊(cè)做好準(zhǔn)備[15]?;旌犀F(xiàn)實(shí)的效果好壞主要由三維注冊(cè)決定,它把虛擬物體的大小、位置等信息與真實(shí)場(chǎng)景的標(biāo)志物進(jìn)行對(duì)位匹配,匹配程度越高,混合現(xiàn)實(shí)的效果越好,這便是混合現(xiàn)實(shí)技術(shù)的工作原理[16]。
實(shí)時(shí)目標(biāo)檢測(cè)算法,即YOLO,其CNN 網(wǎng)絡(luò)把要輸入的圖像分為S×S 的網(wǎng)格,網(wǎng)格里每個(gè)單元負(fù)責(zé)檢測(cè)中心點(diǎn)落在網(wǎng)格里的位置。每個(gè)單元格需要預(yù)測(cè)B 個(gè)邊界框的值,包括坐標(biāo)、寬高、置信度[17]。
每個(gè)網(wǎng)格在輸出邊界框值時(shí)要給出其存在物體的類型,記為Pr(Classi|Object),這是條件概率。輸出的種類概率值只和網(wǎng)格有關(guān),和邊界框無關(guān),所以一個(gè)網(wǎng)格只能輸出C 個(gè)種類信息。在檢測(cè)目標(biāo)時(shí),通過有關(guān)算法可得到每個(gè)單元格的每個(gè)種類的置信度得分,包括預(yù)測(cè)的類別信息和對(duì)邊界框值的準(zhǔn)確度判斷。隨之可設(shè)置一個(gè)閾值,濾掉低得分單元格,把剩下的進(jìn)行非極大值抑制,從而得到最終的標(biāo)定框。
根據(jù)對(duì)混合現(xiàn)實(shí)特征點(diǎn)匹配技術(shù)中SIFT 算法和YOLO 算法的原理分析,可知SIFT 算法對(duì)尺度縮放、旋轉(zhuǎn)等具有魯棒性,是一種非常穩(wěn)定的局部特征算法。但其生成的描述子維度太高,且時(shí)間復(fù)雜度很高,在實(shí)際應(yīng)用中效率不夠高。另外,使用SIFT 在圖像配準(zhǔn)中有著誤匹配和漏掉正確匹配對(duì)的問題,算法的匹配效果對(duì)閾值非常敏感,效果不太理想。YOLO 算法有著速度快、準(zhǔn)確度高的優(yōu)點(diǎn),但YOLO的每個(gè)單元格只預(yù)測(cè)兩個(gè)邊界框,且屬于同一種類別,即是說每個(gè)單元格只能預(yù)測(cè)一類物體,所以在識(shí)別小物體上的效果不盡如人意。在測(cè)試圖像中,同一種物體若是出現(xiàn)不常見的比例等特殊情況,YOLO的泛化能力較弱。在損失函數(shù)方面,定位誤差是影響檢測(cè)效果的關(guān)鍵原因,YOLO 在處理大小不同的物體的方法還需要改進(jìn)。
由此可以看出,混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)中的SIFT 算法還存在著許多不足之處,這在很大程度上決定著混合現(xiàn)實(shí)的識(shí)別效果,目前的混合現(xiàn)實(shí)技術(shù)識(shí)別中,許多問題與此有關(guān),比如:識(shí)別速度較慢,通常要2 秒鐘才能成功顯示虛擬信息;識(shí)別出來的虛擬信息不穩(wěn)定,容易出現(xiàn)抖動(dòng)、變形等現(xiàn)象;識(shí)別的距離太短,通常只可在2 米范圍內(nèi)進(jìn)行識(shí)別等。而YOLO 算法在識(shí)別方面有著極大的優(yōu)勢(shì),它識(shí)別速度快,準(zhǔn)確度高的優(yōu)點(diǎn)正好彌補(bǔ)了混合現(xiàn)實(shí)技術(shù)最大的不足。所以可以把YOLO 算法和混合現(xiàn)實(shí)技術(shù)在目標(biāo)識(shí)別方面結(jié)合起來,從而改進(jìn)混合現(xiàn)實(shí)識(shí)別速度慢、不穩(wěn)定的現(xiàn)狀。
為此,對(duì)混合現(xiàn)實(shí)技術(shù)進(jìn)行如下兩組實(shí)驗(yàn):首先進(jìn)行混合現(xiàn)實(shí)有標(biāo)志物和無標(biāo)志物的識(shí)別比較;再對(duì)混合現(xiàn)實(shí)的識(shí)別距離進(jìn)行測(cè)試;接著測(cè)試混合現(xiàn)實(shí)的多目標(biāo)識(shí)別效果;然后通過對(duì)三維物體的全方位拍照,組成一個(gè)三維的特征點(diǎn)集,從而實(shí)現(xiàn)對(duì)三維物體的識(shí)別;最后改變?nèi)S物體的角度,測(cè)試混合現(xiàn)實(shí)對(duì)三維物體的識(shí)別效果。
再對(duì)YOLO 算法進(jìn)行如下實(shí)驗(yàn):首先測(cè)試YOLO的識(shí)別距離;然后測(cè)試YOLO 對(duì)多目標(biāo)的識(shí)別效果;最后測(cè)試YOLO 對(duì)不同角度的物體識(shí)別效果。
在兩組實(shí)驗(yàn)完成后,對(duì)各組結(jié)果進(jìn)行比較,為兩者的結(jié)合做好準(zhǔn)備工作。方案的流程見圖1。
圖1 新方案流程圖
經(jīng)實(shí)驗(yàn),混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)與YOLO在目標(biāo)檢測(cè)方面的效果對(duì)比可歸納為表1。
表1 混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)與YOLO 對(duì)比
從表中可見,混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)在表現(xiàn)形式上很有優(yōu)勢(shì),可以準(zhǔn)確識(shí)別物體,并用多樣的方式表現(xiàn)出來,生動(dòng)而直觀;YOLO 則只能用單一的邊界框和注釋來表現(xiàn),有時(shí)還會(huì)產(chǎn)生誤識(shí)別。但在識(shí)別距離、速度、穩(wěn)定性以及識(shí)別物體個(gè)數(shù)上YOLO有很明顯的優(yōu)勢(shì);要想識(shí)別一個(gè)物體,1m 的距離顯然遠(yuǎn)遠(yuǎn)不夠,很有必要增加識(shí)別距離;混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)追求虛實(shí)融合,要盡量貼近真實(shí)的環(huán)境,如果識(shí)別速度過慢、識(shí)別出來的虛擬物體不穩(wěn)定,會(huì)給用戶一種不真實(shí)的感覺,極大影響了用戶的體驗(yàn);混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)要為每個(gè)將被識(shí)別的物體添加虛擬信息,如果物體太多工作量會(huì)很大,而YOLO 通過對(duì)一組圖片進(jìn)行訓(xùn)練來學(xué)習(xí)圖片特征,很適合大數(shù)據(jù)集的工作,但如果數(shù)據(jù)集過小,則無法提取足夠的特征,很難成功識(shí)別。
實(shí)驗(yàn)在移動(dòng)端使用Android 9 手機(jī),在電腦端使用Windows 10 筆記本電腦。混合現(xiàn)實(shí)是通過Unity3D引擎搭配Wikitude SDK 來搭建框架。將搜集到的相關(guān)fbx 格式模型導(dǎo)入U(xiǎn)nity3D 中,再把準(zhǔn)備好作為標(biāo)志物的圖片上傳到Wikitude Studio 中,并下載所生成的wtc 格式文件。把包含標(biāo)志物信息的文件導(dǎo)入U(xiǎn)nity 中,搭配下載好的模型便可成功運(yùn)行有標(biāo)志物的識(shí)別,如圖2(a)所示。無標(biāo)志物的識(shí)別和上述方式類似,但不需要預(yù)先準(zhǔn)備好標(biāo)注物,只需把模型直接手動(dòng)拖拽至指定位置便可,如圖2(b)所示。
圖2 混合現(xiàn)實(shí)的兩種識(shí)別方式
混合現(xiàn)實(shí)還可以同時(shí)識(shí)別多個(gè)標(biāo)志物,但識(shí)別距離較短過程較慢,實(shí)驗(yàn)結(jié)果如圖3所示。
圖3 混合現(xiàn)實(shí)多標(biāo)志物的識(shí)別
由圖3可看出,當(dāng)攝像頭距離標(biāo)注物1 米(左圖)時(shí)可以同時(shí)識(shí)別多個(gè)標(biāo)志物,但當(dāng)攝像頭距離標(biāo)志物2 米(右圖)時(shí)就很難再順利識(shí)別。
目前混合現(xiàn)實(shí)在識(shí)別圖像上已經(jīng)越來越穩(wěn)定,技術(shù)也日漸成熟,但在識(shí)別三維物體的方面,混合現(xiàn)實(shí)技術(shù)還不夠完善。如何更好地識(shí)別三維物體是當(dāng)下混合現(xiàn)實(shí)技術(shù)的一項(xiàng)難題。把識(shí)別二維圖像的思路應(yīng)用到識(shí)別三維物體上,擬對(duì)三維物體拍一張照片并把照片作為標(biāo)志物進(jìn)行識(shí)別,實(shí)驗(yàn)發(fā)現(xiàn)僅使用一張照片無法成功識(shí)別該物體。接下來對(duì)三維物體進(jìn)行全方位拍照,共拍攝十張照片,并將照片上傳到Wikitude Studio 中,如圖4所示。
圖4 Wikitude Studio 界面
由Wikitude Studio 提取圖像中的特征點(diǎn),并把所有圖像中的特征點(diǎn)組合起來,搭建成一個(gè)三維的特征點(diǎn)集,下載所生成的wto 格式文件,再把下載的含有被識(shí)別物體信息的文件導(dǎo)入U(xiǎn)nity3D 中再次實(shí)驗(yàn)。結(jié)果表明用十張照片提取特征點(diǎn)后能夠成功識(shí)別,效果圖5所示。
圖5 混合現(xiàn)實(shí)物體識(shí)別實(shí)驗(yàn)效果圖
對(duì)比圖5中的兩幅圖可明顯看出,使用混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)對(duì)物體進(jìn)行識(shí)別的效果不太穩(wěn)定。當(dāng)被識(shí)別的物體進(jìn)行稍微的移動(dòng)或旋轉(zhuǎn)時(shí),為物體添加的虛擬信息會(huì)產(chǎn)生大幅度的偏移或扭曲,這在實(shí)際應(yīng)用中很難給用戶良好的體驗(yàn)。除此之外在實(shí)驗(yàn)中還暴露了混合現(xiàn)實(shí)特征點(diǎn)匹配的識(shí)別技術(shù)存在的許多問題,比如識(shí)別距離過短,用戶必須把攝像頭置于距物體一米以內(nèi)才能成功識(shí)別該物體;識(shí)別時(shí)間稍長,用戶必須把物體和攝像頭都穩(wěn)定住至少兩秒鐘,才能順利識(shí)別,物體或攝像頭的輕微移動(dòng)都可能會(huì)終止識(shí)別等。
隨后使用DarkFlow 框架,Python 3.6+TensorFlow 1.11+NumPy1.15.2+OpenCV 3.4.3 的環(huán)境運(yùn)行深度學(xué)習(xí)的YOLO,實(shí)驗(yàn)效果如圖6所示。
圖6 YOLO 實(shí)驗(yàn)效果圖
從圖6的實(shí)驗(yàn)中能夠發(fā)現(xiàn),YOLO 具有很多優(yōu)點(diǎn),比如:YOLO 的識(shí)別距離很長,能準(zhǔn)確識(shí)別5 米以外的物體;YOLO 可以同時(shí)識(shí)別多個(gè)物體;YOLO的識(shí)別速度特別快,只需要不到1 秒就可成功識(shí)別;YOLO 識(shí)別物體非常穩(wěn)定,邊界框始終緊緊地圍繞著被識(shí)別物體,沒有漂移變形的現(xiàn)象發(fā)生等。但是YOLO 也有一些缺點(diǎn),比如可能會(huì)誤識(shí)別一些物體,這很可能會(huì)對(duì)用戶造成誤導(dǎo)。
同樣是目標(biāo)識(shí)別,混合現(xiàn)實(shí)的特征點(diǎn)匹配識(shí)別和YOLO 識(shí)別結(jié)果的表現(xiàn)形式還是大不相同的。比較兩者對(duì)二維圖像的識(shí)別效果,如圖7所示。
圖7 用兩種方法識(shí)別二維圖片
由圖6和圖7(a)可知,YOLO 在成功識(shí)別后只可標(biāo)記識(shí)別到的物體并標(biāo)記上邊界框和注釋,表現(xiàn)形式單一;而由圖5和圖7(b)可知,混合現(xiàn)實(shí)在識(shí)別成功后可以有多種表現(xiàn)形式,如文字,模型等,而且還可以為模型添加事件,如點(diǎn)擊模型便可展示注釋、音頻等交互內(nèi)容,表現(xiàn)形式非常豐富。
最后,比較兩者對(duì)三維物體的識(shí)別效果,實(shí)驗(yàn)效果如圖8所示。
圖8 用兩種方識(shí)別三維物體
可見,相比YOLO,混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)在識(shí)別三維物體上還有很大的進(jìn)步空間。由圖7(a)可見,YOLO 識(shí)別出來的邊界框就好像是鑲在物體邊緣一樣,緊緊地與物體融為一體;而由圖5和圖7(b)可知,混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)識(shí)別不夠穩(wěn)定,識(shí)別出來的虛擬信息經(jīng)常出現(xiàn)抖動(dòng)、變形、消失等現(xiàn)象,無法給人一種理想的虛實(shí)結(jié)合的感覺。由圖3和圖6(b)可知,混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)的識(shí)別距離太短,無法實(shí)現(xiàn)大場(chǎng)景遠(yuǎn)距離的識(shí)別,而YOLO 可以輕易實(shí)現(xiàn)。
以兩者的識(shí)別速度做比較,當(dāng)物體出現(xiàn)在攝像頭前時(shí),混合現(xiàn)實(shí)要等2~3 秒才能順利識(shí)別,而YOLO 只需要1 秒便可成功識(shí)別。
比較兩者對(duì)三維物體的識(shí)別情況,由圖8可知,當(dāng)混合現(xiàn)實(shí)識(shí)別的物體旋轉(zhuǎn)時(shí),上面添加的虛擬物體也會(huì)隨之旋轉(zhuǎn),而YOLO 識(shí)別的物體旋轉(zhuǎn)時(shí),邊界框保持原樣,可見YOLO 識(shí)別的表現(xiàn)形式?jīng)]有混合現(xiàn)實(shí)好。
由此可知混合現(xiàn)實(shí)技術(shù)在成功識(shí)別物體后可以有很多種表現(xiàn)形式,但存在著識(shí)別距離短,識(shí)別時(shí)間長,識(shí)別不穩(wěn)定的問題。而YOLO 算法有著識(shí)別距離長,識(shí)別時(shí)間短,且識(shí)別穩(wěn)定的優(yōu)勢(shì),可彌補(bǔ)混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)的不足。
通過介紹混合現(xiàn)實(shí)技術(shù)以及YOLO 算法的發(fā)展現(xiàn)狀和原理,把兩者在目標(biāo)識(shí)別方面進(jìn)行了對(duì)比實(shí)驗(yàn)。從實(shí)驗(yàn)可以看到Y(jié)OLO 在目標(biāo)識(shí)別方面有著很大的優(yōu)勢(shì),而混合現(xiàn)實(shí)的特征點(diǎn)匹配技術(shù)在這一塊還存在著許多不足,所以很有必要把YOLO 結(jié)合到混合現(xiàn)實(shí)中去,取長補(bǔ)短,增加混合現(xiàn)實(shí)的識(shí)別距離、識(shí)別速度、穩(wěn)定性,同時(shí)擴(kuò)展混合現(xiàn)實(shí)的識(shí)別范圍,讓混合現(xiàn)實(shí)能夠識(shí)別三維物體。這樣才能讓混合現(xiàn)實(shí)技術(shù)達(dá)到更加逼真的效果,帶來更好的用戶體驗(yàn),從而大大增加混合現(xiàn)實(shí)技術(shù)的應(yīng)用范圍和領(lǐng)域。