Google 開發(fā)者大會 (Google Developer Summit) 是谷歌面向開發(fā)者展示最新產(chǎn)品和平臺的年度盛會。2020 Google 開發(fā)者大會于 11 月 16 日 至 21 日舉行,這是谷歌首次以全線上大會的形式與中國開發(fā)者相聚。
本次大會以“代碼不止”為主題,介紹了相關(guān)產(chǎn)品更新以及一系列面向本地開發(fā)者的技術(shù)支持內(nèi)容,旨在賦能開發(fā)者高效創(chuàng)新、持續(xù)不斷地創(chuàng)造愉悅的產(chǎn)品體驗(yàn)。
目前AR已經(jīng)從只是暢想發(fā)展到今天的技術(shù)相對成熟的狀態(tài),應(yīng)用也不斷推陳出新。加上5G的帶動,越來越多的AR體驗(yàn)走進(jìn)生活,被更多人了解和使用。
隨著科技的不斷演進(jìn),人機(jī)交互的方式也不斷變更。攝像頭成為了數(shù)字世界的眼睛,能看懂并感知這個世界,再結(jié)合IMU、GPS算力集成及深度學(xué)習(xí)后,AR技術(shù)開始在最需要的位置和時(shí)空中無縫聯(lián)結(jié),并響應(yīng)現(xiàn)實(shí)世界。
AR提供了一種體驗(yàn)信息以及獲得答案的新方法,吸引了人們的注意力,最終幫助推動了用戶行動起來。無論是應(yīng)用的下載、互動,還是應(yīng)用內(nèi)購買,都看到了顯著的提升。
此次大會與AR/VR相關(guān)重點(diǎn)集中在ARCore的講解與介紹,谷歌軟件工程總監(jiān)王啟文(Leon Wang)、大中華區(qū)AR/VR負(fù)責(zé)人熊子青、Google 技術(shù)布道師周克忠與Google 軟件工程師Eric Turner圍繞ARcore從多個角度進(jìn)行了主題分享。
ARCore新增功能上線:更方便的設(shè)置、更真實(shí)的交互
AR作為一種視覺沉浸式媒介,能夠吸引人們的注意力,是一種體驗(yàn)信息的新方式,并最終推動用戶的行動。而谷歌發(fā)布于2018年的ARCore是AR開發(fā)者平臺,提供了簡單而強(qiáng)大的工具,為Android和iOS用戶創(chuàng)造有效的AR體驗(yàn)。目前已被應(yīng)用在7億臺設(shè)備和成千上萬款app上,并且已獲得一系列更新。
整體上,ARCore能被適用于多種場景,離不開以下幾個核心功能:
1、運(yùn)動追蹤。用來幫助用戶實(shí)現(xiàn)虛擬現(xiàn)實(shí)的映射關(guān)系。
2、環(huán)境理解。對現(xiàn)實(shí)環(huán)境中的平面信息進(jìn)行評估,利用特征點(diǎn)來估算位置、大小以及朝向。
3、光估測。ARCore可以分析估算當(dāng)前環(huán)境中的光照信息,對渲染的虛擬內(nèi)容進(jìn)行光照色彩的校正,使其與手機(jī)攝像頭拍到的真實(shí)畫面結(jié)合得更加自然。
另外ARCore還有許多延伸的功能:
1、增強(qiáng)面部識別。提供了高精度468點(diǎn)的3D Mesh。可以精準(zhǔn)地追蹤臉部細(xì)微表情,不需要深度傳感器,而是運(yùn)用機(jī)器學(xué)習(xí)(ML)中的深度學(xué)習(xí),以達(dá)到這樣的功能。同時(shí)支持安卓及IOS用戶。
2、環(huán)境光HDR。要讓虛擬物品看起來更逼真,更融入實(shí)景,其中最重要的功能之一就是要有正確的光照呈現(xiàn)。運(yùn)用了ARCore所提供的360度全景光照信息,圖中的虛擬小火箭,就可以有了對應(yīng)的反光及影子。
3、Scene Viewer場景觀測器。讓開發(fā)者可以直接在網(wǎng)頁上向用戶提供方便、好用的3D內(nèi)容及AR瀏覽功能。
4、Agumented Image增強(qiáng)圖像??梢詸z測手機(jī)拍攝到的圖像信息,并與預(yù)先設(shè)置在數(shù)據(jù)庫中的圖像進(jìn)行匹配??删_匹配包括移動中的圖像,或是同時(shí)檢測多個圖像。
11月16日,谷歌軟件工程總監(jiān)王啟文(Leon Wang)發(fā)表了關(guān)于“ARCore為用戶創(chuàng)造有效的AR體驗(yàn)”的主題演講,介紹了Google熱門的AR開發(fā)工具ARCore的新增功能。
新增功能如下:
迅速放置API(Instant Placement API)
一般來說,用戶在空間中放置過AR對象時(shí),需要先用手機(jī)掃描周圍的環(huán)境,完成3D表面檢測。但這個過程將耗費(fèi)一些時(shí)間和精力。實(shí)際上,在大多數(shù)情況下,我們不需要知道AR對象確切的3D位置也可以正確地呈現(xiàn)它。
借助迅速放置API和幾行代碼,開發(fā)人員可讓用戶將AR對象錨定到2D圖像中,而不需要確切知道AR對象具體的3D位置。如果需要更精確的比例,可以針對3D位置進(jìn)行三角測量。
景深應(yīng)用API(Depth API)
景深A(yù)PI可以從單個RGB相機(jī)生成地圖。原理是通過不同角度拍攝多張圖像,并在移動手機(jī)時(shí)進(jìn)行比較,以估計(jì)到每個像素的距離。盡管只有一個RGB相機(jī),但是添加了景深傳感器(如飛行時(shí)間傳感器)會讓景深地圖效果更好。
景深可以通過多種方式增強(qiáng)AR真實(shí)感,“遮擋”是其中一種景深應(yīng)用,即隱藏?cái)?shù)字物體在現(xiàn)實(shí)世界中被遮擋的部分,從而使它們看上去像是在現(xiàn)實(shí)場景中真實(shí)存在。
另一種是“表面交互”,即在設(shè)備中的世界里,添加3D層面的計(jì)算,可以實(shí)現(xiàn)與現(xiàn)實(shí)物品表面的交互,比如創(chuàng)意AR對象,并在其表面設(shè)計(jì)反彈和飛濺的動作。此功能可以用于開發(fā)新的交互式游戲機(jī)制,使玩家能夠躲在真實(shí)物體的后面。Snapchat的Dancing Hotdog和Undersea World Lens效果都使用了景深。
持久云錨點(diǎn)Persistent Cloud Anchors API
Cloud Anchors API可用于與多個用戶共享AR對象。在相同物理空間中的不同位置同時(shí)查看這些對象并與之交互,AR內(nèi)容也因此可使用更長時(shí)間。
這相當(dāng)于一個“保存按鈕”,人們可以基于相同的AR體驗(yàn)進(jìn)行創(chuàng)作并進(jìn)行反復(fù)修改。比如,Sybo和iDreamSky的Mark應(yīng)用采用了該功能,人們可以在現(xiàn)實(shí)世界中與朋友一起創(chuàng)建、發(fā)現(xiàn)和共享AR藝術(shù)。
AR技術(shù)大神講解ARCore深度API運(yùn)作方式
Google 技術(shù)布道師周克忠與Google 軟件工程師Eric Turner主要針對了ARCore 核心功能中的深度API技術(shù)進(jìn)行演講。ARCore 1.18 中發(fā)布的深度 API,賦能數(shù)以億計(jì)的 Android 設(shè)備,在只是使用一個 RGB 攝像頭的情況下,生成深度圖。
以“使用深度 API 提升 AR 的真實(shí)性”為主題演講的前半部分,周克忠介紹了ARCore的最新功能,包括深度API是什么,它可以解決什么問題等;后半部分,Eric介紹了ARCore如何實(shí)現(xiàn)深度API。
之前Google大中華區(qū)AR/VR負(fù)責(zé)人熊子青也曾講述,ARCore是Google為安卓平臺制作的AR開發(fā)平臺,目前在全球支持超過5億臺設(shè)備。其核心能力是運(yùn)動追蹤、環(huán)境理解和光估測。現(xiàn)在已經(jīng)有很多APP使用ARCore制作出各種各樣的豐富體驗(yàn)。
通過ARCore制作的應(yīng)用看上去很逼真,但是實(shí)際體驗(yàn)上,這些虛擬內(nèi)容看起來好像他們就是手機(jī)膜一樣被貼到手機(jī)屏幕上,他們并不是真的在現(xiàn)實(shí)世界里面,這里缺少的就是遮擋,會破壞ARCore應(yīng)用的真實(shí)感。
深度API的加入,可以解決虛擬對象缺乏真實(shí)感的問題,能夠消除違和感。
首先我們需要定義深度。如圖C點(diǎn)是攝像機(jī)的位置,Z軸是攝像機(jī)的主軸,A點(diǎn)表示一個現(xiàn)實(shí)的物體,從C到A的深度則被定義為線段CA在Z軸的投影。此為場景物體的深度軸。
根據(jù)深度信息,智能手機(jī)就能夠渲染虛擬物體。在著色渲染器里面計(jì)算每一個像素點(diǎn)的時(shí)候,我們將當(dāng)前像素點(diǎn)的深度值,和之前在這個像素點(diǎn)所渲染過的顏色的深度值進(jìn)行對比。
如果之前的像素點(diǎn)深度值更低,那么就意味著它更近;相反,則更遠(yuǎn)。就這樣便可以實(shí)現(xiàn)基于深度的遮擋效果。
三、除了遮擋,深度API增強(qiáng)真實(shí)感的其他方式
1.AR光標(biāo)。在AR應(yīng)用里面,用戶可以把定點(diǎn)的光標(biāo)貼合深度API生成的網(wǎng)格,此時(shí)光標(biāo)就變成了在現(xiàn)實(shí)世界存在的AR光標(biāo)。目的是更好地幫助用戶理解現(xiàn)在所看到、所對準(zhǔn)的具體位置,以及這個位置的形狀。
2.物理交互。比如如圖所示,將一個虛擬物體丟到健身自行車上面,讓AR物體和真實(shí)世界的物體發(fā)生物理碰撞,進(jìn)行物理模擬。
周克忠還介紹了目前團(tuán)隊(duì)發(fā)表的論文《Depth Lab:Real-time 3D Interaction with Depth Maps for Mobile Augmented Reality》(UIST,2020),論文主要關(guān)于如何從深度信息實(shí)現(xiàn)以上功能,以及深度信息可以開啟怎樣的應(yīng)用場景。
四、如何實(shí)現(xiàn)復(fù)雜的用法?
團(tuán)隊(duì)利用了三種輔助數(shù)據(jù)結(jié)構(gòu)來幫助計(jì)算。
第一種數(shù)據(jù)結(jié)構(gòu)就是一個深度數(shù)組,可以在屏幕上進(jìn)行局部坐標(biāo)的深度信息查詢。
第二種是深度網(wǎng)格,可以用來和真實(shí)物體的表面進(jìn)行交互。注意這里是平面坐標(biāo)系的網(wǎng)格,畢竟世界坐標(biāo)系的網(wǎng)格運(yùn)算量過大,一般手機(jī)無法承載。
第三種是深度貼圖,對GPU能處理的每一個像素都提供對應(yīng)的深度值。
這三種結(jié)構(gòu)在Depth Lab(深度API應(yīng)用程序)都有提供代碼,是一個開源項(xiàng)目,提供給開發(fā)者進(jìn)行自主設(shè)計(jì)。
五、關(guān)于局部、表面和密集深度貼圖的方法
通過使用深度數(shù)組,用戶可以查詢局部點(diǎn)的信息,以及這個點(diǎn)周圍局部區(qū)域的深度信息。
局部深度用法中,只通過某些點(diǎn)的深度估測值,可以用于測量、3D資源的放置和碰撞檢測。也可以配合多點(diǎn)的深度,實(shí)現(xiàn)簡單的AR角色障礙規(guī)避。比如說通過深度信息查詢環(huán)境中一個點(diǎn)與另一個點(diǎn)的實(shí)際距離。
表面深度用法,是基于深度信息快速構(gòu)建屏幕空間的網(wǎng)格模型,利用游戲引擎進(jìn)行網(wǎng)格交互。表面深度算法讓我們可以在3D網(wǎng)格上面實(shí)現(xiàn)光照、物理效果、陰影等功能。
密集深度用法,即通過在深度貼圖上直接進(jìn)行操作,以實(shí)現(xiàn)復(fù)雜的逐幀像素特效。由于深度貼圖上的每個像素都有深度值,使得計(jì)算量特別大。一般的屏幕空間網(wǎng)格,其實(shí)是經(jīng)過相當(dāng)?shù)暮喕蟮木W(wǎng)格,而ARCore把計(jì)算量移到了GPU上,減小了手機(jī)的計(jì)算負(fù)擔(dān)。
第二部分里,在周克忠介紹深度API實(shí)際運(yùn)作方式的基礎(chǔ)上,Eric通過具體例子進(jìn)行了補(bǔ)充。
六、深度API原理剖析
一般而言,手機(jī)需要配備特殊的深度硬件才能實(shí)現(xiàn)深度識別,比如ToF深度傳感器。但實(shí)際上,現(xiàn)階段的ARCore并不需要特殊設(shè)備,只需要有攝像頭,就可以實(shí)現(xiàn)深度API功能。
如圖,左邊是手機(jī)相機(jī)拍攝的原始圖像,右邊是深度API為此場景生成的深度。用戶可以近距離觀察單車,也可以遠(yuǎn)距離觀察遠(yuǎn)處的門和走廊,分別對應(yīng)的顏色是紅色和藍(lán)色,表示近處和遠(yuǎn)處。
這意味著無論AR應(yīng)用在做什么,它都可以獲取整個場景中的每個幀的深度信息。根據(jù)相機(jī)的運(yùn)動生成深度信息,如藍(lán)色幀為遠(yuǎn)處,紅色幀為近處,這些幀會被最后的相機(jī)畫面幀(黑色)引用為立體匹配關(guān)鍵幀。過去的幀與當(dāng)前的幀之間的基線,可用來估算場景的立體深度。
但Eric提到,基于用戶自然移動的規(guī)則,團(tuán)隊(duì)為此添加了一些限制。因此與傳統(tǒng)的并行立體匹配相比,設(shè)計(jì)基于自然移動的深度API則存在一些挑戰(zhàn)。
傳統(tǒng)的并行立體匹配可以全面控制相機(jī)之間的相對位置。而在典型AR應(yīng)用中,對于隨機(jī)相機(jī)移動,團(tuán)隊(duì)無法控制相機(jī)的位置,即用戶在進(jìn)行自由移動時(shí),相機(jī)可能在任何方向。
而目前,ARCore深度API添加了智能圖像處理功能,以確保整個圖像都具有準(zhǔn)確的深度。除此之外,還能夠補(bǔ)償速度匹配錯誤、運(yùn)動模糊、自動聚集聚焦變化或自然移動導(dǎo)致的小于正?;€的問題等。
深度API的完整流程是:
實(shí)時(shí)圖像-形成關(guān)鍵幀池-篩選出關(guān)鍵幀-根據(jù)智能算法剔除無效關(guān)鍵幀-立體匹配-使關(guān)鍵幀平滑-調(diào)用深度API-實(shí)現(xiàn)渲染遮擋。
其亮點(diǎn)在于,即使是一面空白無特征的墻,ARCore的深度API仍然能夠生成正確表示該空白墻的深度圖像。
其原理是,如圖所示,白墻是黃色幀,箱子是橙色幀。在圖二的中間,可以看到偽色深度圖像,正確呈現(xiàn)了場景中的物體的遠(yuǎn)近位置。而圖三則是以點(diǎn)云代替顏色,進(jìn)行了側(cè)面視角觀察,但同樣能以垂直點(diǎn)表示墻面、水平點(diǎn)表示箱子,準(zhǔn)確判斷出墻和箱子的相對距離。
演講的最后,周克忠總結(jié),實(shí)現(xiàn)深度API最大的難點(diǎn)是怎么擴(kuò)展這個能力。為裝備到數(shù)以億計(jì)的安卓設(shè)備上而設(shè)計(jì)深度API的時(shí)候,一方面我們需要盡可能的讓它的結(jié)果精確,另外我們需要盡量去減少它的計(jì)算量,以盡量支持更多的已有設(shè)備。
而近年來,Google一直在進(jìn)行深度API的優(yōu)化,以減少它的計(jì)算量。
不止于此,ARCore已具有豐富的應(yīng)用場景
總體上,王啟文將ARCore的核心功能進(jìn)行了詳細(xì)介紹,周克忠和Eric剖析了ARCore最受矚目的深度API的運(yùn)作原理。有了底層技術(shù)支撐,ARCore也被廣泛應(yīng)用在豐富的場景中,并受YouTube、美圖、滴滴等多個企業(yè)青睞。
此前,王啟文在演講上還介紹了中國地區(qū)ARCore的應(yīng)用情況。在此基礎(chǔ)上,大中華區(qū)AR/VR負(fù)責(zé)人熊子青補(bǔ)充ARCore應(yīng)用案例,她以“ARCore新近更新及應(yīng)用實(shí)例”為主題,從AR近期發(fā)展、ARCore進(jìn)程、2020新近更新三個方面介紹了ARCore產(chǎn)品動態(tài)。
關(guān)于中國地區(qū)的應(yīng)用案例,王啟文介紹了包括美圖、滴滴、有道少兒詞典的中國開發(fā)者如何使用ARCore提高產(chǎn)品的性能和體驗(yàn)。
美圖公司利用ARCore的增強(qiáng)面孔API(Augmented Faces API)構(gòu)建了100多個自拍濾鏡,就是現(xiàn)在我們在BeautyPlus上可以體驗(yàn)到的AR特效,用戶可以拍攝照片和視頻與朋友分享。
增強(qiáng)面孔API(Augmented Faces API)從2D圖像中生成3D網(wǎng)格,可追蹤嘴部動作、眨眼、點(diǎn)頭和一些復(fù)雜的細(xì)節(jié)。
滴滴的ARCore導(dǎo)航功能幫助乘客在火車站、商場和機(jī)場等大型公共區(qū)域找到司機(jī)。滴滴地圖中加入了AR路標(biāo),15%的用戶使用AR來引導(dǎo)他們找到訂單司機(jī),80%的用戶給出好評。
有道少兒詞典應(yīng)用使用AR來幫助孩子們以一種有趣和吸引人的方式學(xué)習(xí)新單詞。該應(yīng)用將“三角龍Triceratops ”等單詞與其3D模型在AR中配對,父母可以把AR畫面錄制或拍照,方便日后成為孩子們可參考的學(xué)習(xí)材料。
關(guān)于更豐富的應(yīng)用場景的應(yīng)用,熊子青介紹了目前AR技術(shù)主要應(yīng)用在學(xué)習(xí)、娛樂、出行、社交等場景,以此闡明AR技術(shù)正幫助將人們的生活變得更便利、更有趣。
例如,在Google search中,設(shè)計(jì)了許多3D模型,老虎、獅子,甚至是數(shù)學(xué)公式,讓用戶在搜尋時(shí)能360度觀看,也可以用AR方式投射到家中,立體化地了解信息。疫情期間,獲得了全球使用者的廣大回響。
關(guān)于Google lens智慧鏡頭應(yīng)用,用戶打開攝像頭就可以識別花草、文字、電視、地標(biāo)、菜單。
在YouTube中的應(yīng)用。用戶可以一邊看美妝博主示范化妝方式,一邊可以使用AR功能進(jìn)行實(shí)時(shí)試妝。
Google Map中也應(yīng)用了AR戶型導(dǎo)航。用戶可以看到方向指示牌和導(dǎo)覽提示,仿佛一個專屬的私人導(dǎo)游。該應(yīng)用是目前GoogleAR應(yīng)用中使用者最多的應(yīng)用之一。
隨著手機(jī)的普及,營銷媒介也發(fā)展出基于手機(jī)相機(jī)的新應(yīng)用。運(yùn)用AR將人們帶入沉浸式體驗(yàn),將人們帶入品牌世界。Google display network中,Google推出了3D Swirl營銷工具,該營銷應(yīng)用在今年下半年正式完成了beta測試版,并且已經(jīng)看到了用戶參與度及品牌影響力的顯著提升。
5G實(shí)踐前沿。隨著5G商用化,ARCore與LG Uplus合作,在韓國首爾進(jìn)行了AR+5G的實(shí)踐嘗試。在首爾地鐵站布建了AR藝術(shù)長廊和展示車廂,5G加持能夠克服地鐵站人多信號差的缺陷,人們能夠順暢地體驗(yàn)到豐富的AR藝術(shù)內(nèi)容。
昌德宮。聯(lián)合國教科文組織世界遺產(chǎn)站點(diǎn)。Google與SK Telecom和文化遺產(chǎn)管理局合作,創(chuàng)建了全球首個5G賦能的AR文旅體驗(yàn)。AR導(dǎo)覽由一個活化的石獅子帶領(lǐng),游客可以穿越到朝鮮王朝,體驗(yàn)傳統(tǒng)習(xí)俗和體會朝鮮貴族生活。
總結(jié)
通過2020 Google 開發(fā)者大會,我們看到了谷歌基于算法API方面對于ARCore的進(jìn)一步升級。讓手機(jī)會“看”、能“懂”的需求已經(jīng)隨著機(jī)器學(xué)習(xí)、深度API的更新進(jìn)程不再是困擾AR體驗(yàn)的攔路虎。
值得一體的是,谷歌正加大力度將人工智能算法整合到ARCore底層,以確保盡可能多的支持市場上參差不齊的手機(jī)品類。應(yīng)用方面,谷歌ARCore采用廣撒網(wǎng)的方式,與國內(nèi)出行、教育、醫(yī)療、文化等領(lǐng)域的領(lǐng)先企業(yè)進(jìn)行合作,通過催生越來越多的AR應(yīng)用場景的誕生,隨著量變到質(zhì)變的轉(zhuǎn)換,爆款A(yù)R應(yīng)用的誕生值得期待。
投稿/爆料:tougao@youxituoluo.com
稿件/商務(wù)合作: 六六(微信 13138755620)
加入行業(yè)交流群:六六(微信 13138755620)
元宇宙數(shù)字產(chǎn)業(yè)服務(wù)平臺
下載「陀螺科技」APP,獲取前沿深度元宇宙訊息