小螞蟻說。
增強現(xiàn)實是一種新穎的交互方式,它比傳統(tǒng)的交互方式更能讓用戶更深入地參與交互,給用戶帶來新的體驗。
春節(jié)期間,支付寶的“掃地祝福”活動也異?;鸨?。支付寶把AR和游戲、紅包結(jié)合起來,探索新的玩法。
AR領域雖然發(fā)展了很多年,但是在技術(shù)成熟度和用戶普及度方面還是有很大進步空。支付寶這個領域的前排,背后有哪些技術(shù)架構(gòu)和研究故事?今天,請邀請我們的支付寶AR團隊與您詳細分享。
1.前言
首先,我們回顧一下網(wǎng)上對AR技術(shù)的定義:增強現(xiàn)實(Augmented Reality,簡稱AR)是一種實時計算相機圖像的位置和角度,并添加相應的圖像、視頻和3D模型的技術(shù)。這項技術(shù)的目標是將虛擬世界放在屏幕上,與現(xiàn)實世界互動。
從這個定義來看,AR包含兩個關鍵要素:相機姿態(tài)估計和虛實交互。
但是,在目前流行的ar應用中,這兩個要素可能無法滿足。比如一些簡單的AR應用主要是識別某個素材,識別成功后播放一個廣告視頻,然后發(fā)放優(yōu)惠券。這個過程并不估算相機姿態(tài),但已經(jīng)滿足了最初的AR營銷需求。所以我們可以把現(xiàn)在的很多AR應用叫做泛AR應用。
2.增強現(xiàn)實技術(shù)概述
ar技術(shù)本身可以從各個維度進行分類,比如根據(jù)硬件載體的不同,可以分為一般的基于移動設備的ar(比如手機ar)和特殊的基于設備的AR(比如Hololens)。這里主要關注基于手機的AR,因為手機的普及推動了AR技術(shù)的普及。具體到手機AR,可以細分為很多種:
基于NFT(Natural Feature Tracking)的AR:掃描紋理豐富的平面物體,可以實時估計相機姿態(tài),并將三維模型疊加在平面物體上;
基于SLAM(同時定位和映射)技術(shù)的AR:同時估計相機姿態(tài)和周圍環(huán)境地圖,在周圍環(huán)境中疊加虛擬物體;
基于LBS的AR:主要利用GPS信息和陀螺儀信息來實現(xiàn)AR效果,比如PokemonGo;
基于三維物體的AR:通常需要預先對三維物體進行建模,然后對三維物體進行任意角度的掃描來估計相機姿態(tài);
基于AI的AR主要結(jié)合模式識別技術(shù)實現(xiàn)對象分類識別、對象特征點定位和對象分割,然后在此基礎上疊加虛擬對象。隨著AI技術(shù)的蓬勃發(fā)展,這個方向會受到更多的關注。
2.1增強現(xiàn)實平臺識別算法
對于大多數(shù)增強現(xiàn)實應用程序,通常有以下三個模塊:
識別:具體包括圖像識別、跟蹤和3D姿態(tài)估計;
渲染:結(jié)合成像模型,利用渲染引擎將三維虛擬物體疊加在圖像上
交互:手機主要通過觸摸與虛擬物體進行交互,Hololens則通過手勢和聲音進行多模態(tài)交互
支付寶AR平臺作為一個平臺系統(tǒng),不僅包含以上基本模塊,還擁有在線活動運營管理系統(tǒng)。這里主要介紹識別模塊,包括基于自然特征點的圖像識別、跟蹤和姿態(tài)估計,以及基于AI技術(shù)的目標識別。
2.2識別算法框架
識別核心層由AR客戶端識別引擎和服務器端識別引擎組成,兩者都基于核心算法,有機結(jié)合、互補、協(xié)同完成識別任務。
AR業(yè)務層還包括客戶端和服務器,負責視頻采集、交互渲染、業(yè)務路由和后臺管理。另一個模塊是身份識別內(nèi)容的管理,包括身份識別模型的培訓和評估、身份識別內(nèi)容的發(fā)布和監(jiān)控。本文主要介紹核心識別算法。
3.NFT識別算法
3.1 NFT算法流程
從數(shù)據(jù)流來看,我們的NFT核識別算法的流程如下圖所示。
整個過程包括客戶端和服務器端。對于輸入圖像的每一幀,將首先識別客戶端。如果客戶端識別失敗,滿足靜態(tài)判斷條件,則上傳到服務器進行識別。
3.2客戶NFT身份證明
客戶端識別包括局部特征點檢測、特征點描述、快速檢索、圖片1對1匹配、單應性驗證等。每一步都有很多方法可以選擇。比如SIFT、SURF、Fast、ORB等等,其中前兩者具有尺度不變性,后兩者沒有尺度不變性,需要從不同分辨率的圖像中提取特征。
局部特征點描述為SIFT、SURF、BRISK、FREAK、ORB等。,他們的時間消耗是sift >: SURF >的;BRISK = FREAK & gtORB,精度和時間消耗基本相反,后三個特性是手機上常用的。
為了快速檢索,有兩種思路:
采用FLANN最近鄰搜索:從所有候選圖像的所有特征點中找到最相似的特征點,然后根據(jù)每個匹配圖像上的點數(shù)進行排序,得到候選匹配圖像。
采用BOW(詞袋)檢索方法:可以讓我們像查字典一樣快速地搜索到候選匹配圖片。
快速檢索只是從眾多圖片中檢索出最近的N張候選圖片。對于這N張候選圖片,我們需要進一步篩選,給出明確的答案,確定匹配哪張圖片,沒有歧義。
最后做一個單應性檢查:基于平面素材的假設,素材模板圖片和實際拍攝的素材圖片之間有一個單應性變換,可以利用匹配上的特征點來估計一個單應性變換矩陣,最后根據(jù)內(nèi)部點數(shù)來判斷是否真的匹配。至此,簡單的圖片識別過程完成。
3.3客戶NFT跟蹤
對于需要跟蹤的場景,比如我們最初的Costa活動,我們需要實時跟蹤估計Costa版紙的姿態(tài),讓虛擬的花朵始終無縫貼合在版紙上,如下圖所示:
跟蹤的最終目的是實時給出相機姿態(tài),讓3D虛擬物體實時疊加在真實場景上。
事實上,如果每一幀中特征點檢測、匹配、標定和姿態(tài)估計的速度足夠快,足夠準確,就不需要跟蹤。但是現(xiàn)有的特征點檢測和匹配算法在客戶端速度不夠快,所以通常的做法是檢測后跟蹤。
在跟蹤過程中,我們還需要實時估計攝像機姿態(tài),因此基于整個物體感興趣區(qū)域的跟蹤方法,如KCF(kernel ized Correlation Filters)在這里不適用。我們需要通過特征點跟蹤的方法來估計姿態(tài)。
最常用的特征點跟蹤算法是KLT算法。當運動幅度不是很劇烈的時候,效果還是很好的。對于相對劇烈的運動,很容易跟蹤失敗。
因此,我們使用局部塊模板匹配來跟蹤特征點。當然,為了加速,采用了很多加速策略。跟蹤完成后,還需要做單應性檢查,確認跟蹤是否正確。如果跟蹤正確,繼續(xù)進行后續(xù)的3D姿態(tài)估計。
已知2D點和3D點之間的對應關系來求解姿態(tài),我們可以使用非線性束調(diào)整方法或線性PnP(透視-n點)方法。與束調(diào)整法相比,PnP法速度更快,但精度稍低,抖動更大。為了減少抖動,我們可以平滑幀間的姿態(tài)。
3.4服務器NFT識別
與客戶端的本地識別相比,我們的服務器可以識別更多種類的圖片,識別能力越來越強。服務器具有海量圖像檢索和熱點圖像檢索的能力,融合這兩種檢索結(jié)果進行進一步的精細匹配,確定最終的匹配結(jié)果。
3.5 AI識別算法
除了常規(guī)的NFT圖像識別,我們還提供了其他基于模式識別的算法,如Adaboost目標檢測、SSD目標檢測、xFuNet識別、自定義圓形目標檢測、顏色識別、HogSVM識別等。
其中,基于固態(tài)硬盤的目標檢測方法通用性好,速度快,能夠處理各種復雜情況。在支付寶強大的客戶端深度學習引擎xNN的幫助下,它登陸了很多商業(yè)場景:
在AR平臺上,SSD目標檢測最初用于解決弱紋理商家的logo識別問題。
很多商家希望通過掃描自己的品牌logos來參與活動。但是有些品牌logo確實沒有質(zhì)感,比如耐克的logo。之前介紹的NFT圖像識別算法對這個場景基本無能為力。因此,我們迫切需要找到一種新的方法來滿足這種場景的需要。
在此期間,我們嘗試了很多方案:密集SIFT、深度特征學習、目標檢測等。在比較了各種方案后,結(jié)合AR平臺的業(yè)務場景,選擇了目標檢測方法。具體到目標檢測,fast-RCNN、YOLO、SSD等都比較常見。
發(fā)現(xiàn)固態(tài)硬盤檢測速度最快,準確率能夠滿足業(yè)務需求。最后,選擇固態(tài)硬盤目標檢測方法識別弱紋理商家標志。
主方案確定后,還有一個問題需要解決,就是商家通常只提供幾個logo圖,對于深度學習來說,確實是杯水車薪。我們的解決方案是將少量的商業(yè)標志圖像數(shù)據(jù)進行相乘。具體的乘法方法有面內(nèi)旋轉(zhuǎn)、縮放、平移、背景替換、顏色變化等。
此外,特別將容易被誤檢的樣本加入樣本集中,參與樣本乘法合成。最后,我們的SSD目標檢測訓練流程如下圖所示:
除SSD目標檢測外,基于Adaboost的目標檢測算法因其模型覆蓋全、計算量小的優(yōu)點,被用于春節(jié)紅包掃描和手勢掃描活動。此外,還有之前掃中秋月和脈動瓶蓋的定制模式識別算法。
3.6績效指標
AR平臺識別算法的基本性能如下:
1.客戶NFT識別時間:
2.客戶NFT跟蹤時間:
3.NFT識別數(shù)據(jù)包大小:
5.客戶端SSD檢測+驗證:
4.附言
經(jīng)過長時間的打磨,支付寶AR平臺的基本功能越來越完善。同時,我們也歡迎AR和AI愛好者加入我們的團隊,共同把支付寶AR平臺做得更好!
代表產(chǎn)品包括支付寶AR掃描、2017年春節(jié)AR紅包、2018年春節(jié)掃符字、掃描“到”手勢、支付寶小程序支付通、創(chuàng)建支付寶銀行卡身份綁定、聲波支付等。
如果你對我們的工作感興趣,請加入我們的簡歷!我們目前正在招聘目標檢測和圖像識別方面的專業(yè)人員。如果你感興趣,你可以發(fā)電子郵件到mingcai.zmc@antfin.com
—結(jié)束—
1.《支付寶ar 分享 | 帶來全新交互體驗的『支付寶AR』技術(shù)大解密》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡信息知識,僅代表作者本人觀點,與本網(wǎng)站無關,侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《支付寶ar 分享 | 帶來全新交互體驗的『支付寶AR』技術(shù)大解密》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/guoji/1269408.html