蘋果AR/VR專利介紹一種在物理表面呈現(xiàn)虛擬對(duì)象的方法
查看引用/信息源請(qǐng)點(diǎn)擊:映維網(wǎng)Nweon
根據(jù)情況選擇平面表示和更精細(xì)的表示(即網(wǎng)格表示)
(映維網(wǎng)Nweon?2022年08月30日)如何在物理對(duì)象之上疊加呈現(xiàn)虛擬對(duì)象是AR增強(qiáng)現(xiàn)實(shí)技術(shù)必須重點(diǎn)考慮的一個(gè)挑戰(zhàn)。在名為“Xr preferred movement along planes”的專利申請(qǐng)中,蘋果就介紹了一種在物理表面呈現(xiàn)虛擬對(duì)象的方法。
具體地,電子設(shè)備可以初始化虛擬對(duì)象,使得當(dāng)通過(guò)顯示器查看時(shí),虛擬對(duì)象看起來(lái)好像是放置在環(huán)境中的物理表面之上。電子設(shè)備可以根據(jù)物理表面的物理幾何形狀來(lái)確定虛擬對(duì)象的初始化。
根據(jù)一個(gè)或多個(gè)實(shí)施例,電子設(shè)備可以獲得或以其他方式訪問真實(shí)環(huán)境的幾何信息,特別是真實(shí)環(huán)境中的一個(gè)或更多個(gè)物理表面。
在一個(gè)或多個(gè)實(shí)施例中,電子設(shè)備可以以不同的粒度級(jí)別獲得真實(shí)環(huán)境表面的兩個(gè)或更多個(gè)表示。作為示例,電子設(shè)備可以接收平面表示形式的第一表示,其指示真實(shí)環(huán)境的物理空間中與表面相關(guān)聯(lián)的平面。電子設(shè)備可以接收第二表示,第二表示包括表面的幾何形狀的更精細(xì)的表示,例如網(wǎng)格表示。
根據(jù)一個(gè)或多個(gè)實(shí)施例,利用物理表面的粒度較小的表示可能比使用粒度較大的表示更有效。在一個(gè)或多個(gè)實(shí)施例中,當(dāng)確定如何將虛擬對(duì)象呈現(xiàn)為物理表面之上時(shí),電子設(shè)備可以首先確定物理表面上的虛擬對(duì)象將被呈現(xiàn)的點(diǎn)。
然后,電子設(shè)備可以比較第一表示和第二表示。在一個(gè)或多個(gè)實(shí)施例中,電子設(shè)備可以在初始化點(diǎn)處比較粒度較小表示(即平面表示)的第一法線和粒度較大表示(即網(wǎng)格表示)的第二法線。
在一個(gè)或多個(gè)實(shí)施例中,如果第一法線和第二法線足夠相似,則電子設(shè)備使用粒度較小的表示(即平面表示)來(lái)渲染和顯示虛擬對(duì)象。如果第一法線和第二法線實(shí)質(zhì)上不同,則電子設(shè)備可以使用更細(xì)粒度的表示(即,網(wǎng)格表示)來(lái)渲染和顯示虛擬對(duì)象。在一個(gè)或多個(gè)實(shí)施例中,通過(guò)在法線基本相似的情況下利用粒度較小的表示,可以通過(guò)減少渲染和呈現(xiàn)虛擬對(duì)象所需的資源來(lái)優(yōu)化電子設(shè)備。
在一個(gè)或多個(gè)實(shí)施例中,如果網(wǎng)格表示用于初始化對(duì)象,則網(wǎng)格表示可用于確定虛擬對(duì)象如何在物理表面上移動(dòng)。作為示例,如果用戶使得虛擬對(duì)象看起來(lái)沿著表面移動(dòng),則電子設(shè)備可以基于所確定的表示來(lái)呈現(xiàn)移動(dòng)。
因此,如果第一法線與第二法線充分不同,則根據(jù)一個(gè)或多個(gè)實(shí)施例,可以確定物理表面不是基本平坦的,并且應(yīng)該使用更精細(xì)的表示來(lái)確定如何渲染和顯示虛擬對(duì)象。在一個(gè)或多個(gè)實(shí)施例中,當(dāng)虛擬對(duì)象移動(dòng)時(shí),電子設(shè)備可以在表示之間切換,以確定虛擬對(duì)象應(yīng)當(dāng)如何呈現(xiàn)。
電子設(shè)備最初可以僅獲得物理表面一部分的幾何表示。根據(jù)一個(gè)或多個(gè)實(shí)施例,當(dāng)使虛擬對(duì)象沿著表面移動(dòng)時(shí),電子設(shè)備在接收虛擬對(duì)象正在其上移動(dòng)的物理表面的更新表示時(shí)可能會(huì)經(jīng)歷延遲。
因此在一個(gè)或多個(gè)實(shí)施例中,當(dāng)虛擬對(duì)象接近物理表面的幾何表示的末端時(shí),則電子設(shè)備可以通過(guò)在移動(dòng)方向上延伸平面表示來(lái)推斷額外的幾何數(shù)據(jù),使得電子設(shè)備可以繼續(xù)呈現(xiàn)沿著表面移動(dòng)的虛擬對(duì)象。在一個(gè)或多個(gè)實(shí)施例中,在獲得更新的幾何表示之后,電子設(shè)備可以相應(yīng)地更新虛擬對(duì)象的渲染。

圖1示出了電子設(shè)備100的簡(jiǎn)化框圖。
根據(jù)一個(gè)或多個(gè)實(shí)施例,表示模塊132可以利用物理環(huán)境的圖像信息來(lái)識(shí)別物理環(huán)境的幾何表示。在一個(gè)或多個(gè)實(shí)施例中,表示模塊132可以獲得給定物理環(huán)境的不同粒度級(jí)別的多個(gè)幾何表示。
作為示例,表示模塊132可以基于從攝像頭105和深度傳感器110等其他組件獲得的數(shù)據(jù)來(lái)生成一個(gè)或多個(gè)幾何表示,表示模塊132可以識(shí)別電子設(shè)備所處的物理環(huán)境,并例如從幾何表示存儲(chǔ)142或電子設(shè)備100可通信地耦合到的其他存儲(chǔ)設(shè)備獲得物理環(huán)境的一個(gè)或多個(gè)預(yù)定幾何表示。幾何表示可以包括變化的粒度級(jí)別。
在一個(gè)或多個(gè)實(shí)施例中,幾何表示可以包括識(shí)別物理環(huán)境中的平面物理表面的平面表示。幾何表示還可以包括網(wǎng)格表示,網(wǎng)格表示可以包括物理環(huán)境中的對(duì)象(例如物理表面)的幾何的網(wǎng)格表示。
在一個(gè)或多個(gè)實(shí)施例中,虛擬化模塊134用于生成用于呈現(xiàn)的虛擬對(duì)象,使得它看起來(lái)像是放置在物理環(huán)境中一樣。虛擬化模塊可以生成虛擬對(duì)象,或者可以從虛擬對(duì)象存儲(chǔ)144或從網(wǎng)絡(luò)存儲(chǔ)中的其他地方獲得虛擬對(duì)象。
根據(jù)一個(gè)或多個(gè)實(shí)施例,虛擬化模塊134用于渲染和顯示給定的虛擬對(duì)象,使其看起來(lái)好像被放置在物理環(huán)境中的物理表面上和/或在物理表面上移動(dòng)。為了確定渲染和顯示虛擬對(duì)象的位置,虛擬化模塊可以利用一個(gè)或多個(gè)幾何表示來(lái)確定要在其上渲染虛擬對(duì)象的物理表面的幾何結(jié)構(gòu)。根據(jù)一個(gè)或多個(gè)實(shí)施例,當(dāng)可用時(shí),利用較少粒度的表示可能更有效。因此,虛擬化模塊可以基于虛擬對(duì)象將在其上呈現(xiàn)的表面的表示的特征從多個(gè)幾何表示中選擇。

圖2示出了操作環(huán)境。操作環(huán)境240包括第一物理環(huán)境,而操作環(huán)境250包括第二物理環(huán)境。
如圖2所示,第一環(huán)境240包括正在使用第一電子設(shè)備200的第一用戶220,第二環(huán)境250包括正在使用第二電子設(shè)備210的第二用戶232。在一個(gè)或多個(gè)實(shí)施例中,第一電子設(shè)備210和第二電子設(shè)備210包括移動(dòng)設(shè)備等等。
在一個(gè)或多個(gè)實(shí)施例中,第一電子設(shè)備200和第二電子設(shè)備210經(jīng)由網(wǎng)絡(luò)205彼此通信。網(wǎng)絡(luò)205的示例可以包括例如互聯(lián)網(wǎng)、廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)等。在一個(gè)或者多個(gè)實(shí)施方式中,第一電子設(shè)備200和第二電子設(shè)備210可以參與公共共現(xiàn)混合現(xiàn)實(shí)環(huán)境。
盡管電子設(shè)備200和電子設(shè)備210可能參與共同呈現(xiàn)的混合現(xiàn)實(shí)環(huán)境,但虛擬環(huán)境在每個(gè)設(shè)備呈現(xiàn)可以不同。電子設(shè)備200的顯示器242同時(shí)可以包括與物理環(huán)境250中的用戶232相對(duì)應(yīng)的Avatar化身226。

圖3示出了用于渲染虛擬對(duì)象的技術(shù)的流程圖。流程圖從305開始,其中表示模塊132檢測(cè)真實(shí)環(huán)境中的物理表面。根據(jù)一個(gè)或多個(gè)實(shí)施例,電子設(shè)備100可以通過(guò)掃描電子設(shè)備所處的物理環(huán)境的至少一部分來(lái)開始。作為示例,電子設(shè)備100可以利用攝像頭或其他傳感器來(lái)識(shí)別物理環(huán)境的特征。在一個(gè)或多個(gè)實(shí)施例中,電子設(shè)備100可以檢測(cè)環(huán)境中的物理表面,或者可以識(shí)別電子設(shè)備100處于具有已知物理表面的位置。
在310,虛擬化模塊134識(shí)別并初始化虛擬對(duì)象在物理表面上的位置。作為示例,虛擬化模塊134可以確定顯示器160的視圖內(nèi)的物理表面上的一般位置。例如,可以基于電子設(shè)備100與物理表面的相對(duì)位置來(lái)確定初始化位置,例如,在顯示器160的中心可見的物理表面的位置。作為另一示例,可以基于用戶輸入或其他技術(shù)來(lái)確定初始化位置。
在315,表示模塊132獲得物理表面的第一表示。在一個(gè)或多個(gè)實(shí)施例中,第一表示可以包括平面表示。然后在320,電子設(shè)備100可以獲得物理表面的第二表示。在一個(gè)或多個(gè)實(shí)施例中,第二表示可以包括物理表面的網(wǎng)格表示。第一表示和第二表示可以包括具有不同粒度級(jí)別的物理環(huán)境的相同部分的表示。作為示例,平面表示可能不如網(wǎng)格表示詳細(xì)。作為另一示例,第一表示可以是二維表示,而第二表示可以是物理表面的三維表示。
在325,虛擬化模塊134基于平面表示和網(wǎng)格表示確定渲染虛擬對(duì)象的位置。所述位置將是虛擬對(duì)象將出現(xiàn)在其上的物理環(huán)境的一部分。下面將參照?qǐng)D4更詳細(xì)地描述用于確定位置的技術(shù)。所確定的位置將標(biāo)識(shí)三維空間中虛擬對(duì)象應(yīng)該出現(xiàn)的區(qū)域。
在330,虛擬化模塊134根據(jù)確定的位置呈現(xiàn)虛擬對(duì)象??梢砸耘c三維空間中的確定位置一致的比例來(lái)渲染虛擬對(duì)象。另外,虛擬對(duì)象可以被顯示為通過(guò)電子設(shè)備的顯示器向用戶呈現(xiàn),好像虛擬對(duì)象位于物理環(huán)境中的物理表面之上。

圖4示出了根據(jù)一個(gè)或多個(gè)實(shí)施例的用于確定渲染虛擬對(duì)象的位置的技術(shù)的流程圖。具體地,圖4描繪了用于確定在渲染虛擬對(duì)象時(shí)使用物理表面的哪個(gè)幾何表示的技術(shù)。
在405,虛擬化模塊134確定初始化位置處的第一表示的第一法線。如上所述,第一表示可以與物理環(huán)境中的物理表面的較不精細(xì)或較不詳細(xì)的幾何表示相關(guān)聯(lián)。根據(jù)一個(gè)或多個(gè)實(shí)施例,可以確定物理表面上應(yīng)該呈現(xiàn)虛擬對(duì)象的點(diǎn)或區(qū)域。
然后,可以通過(guò)識(shí)別第一表示上的點(diǎn)或區(qū)域來(lái)確定第一法線,該點(diǎn)或區(qū)域?qū)?yīng)于物理表面上虛擬對(duì)象應(yīng)該呈現(xiàn)的點(diǎn)或位置。然后確定第一表示上的該點(diǎn)或區(qū)域的法線。在一個(gè)或多個(gè)實(shí)施例中,確定法線的特定點(diǎn)可以基于區(qū)域的中心、區(qū)域上的代表點(diǎn),或者可以確定為區(qū)域的代表法線等。
在410,其中虛擬化模塊134在初始化位置確定第二表示的第二法線。如上所述,第二表示可以與物理環(huán)境中的物理表面的比第一表示更細(xì)粒度或更詳細(xì)的幾何表示相關(guān)聯(lián)。根據(jù)一個(gè)或多個(gè)實(shí)施例,可以確定物理表面上應(yīng)該呈現(xiàn)虛擬對(duì)象的點(diǎn)或區(qū)域。
然后,可以通過(guò)識(shí)別第二表示上的點(diǎn)或區(qū)域來(lái)確定第二法線,該點(diǎn)或區(qū)域?qū)?yīng)于物理表面上虛擬對(duì)象應(yīng)該呈現(xiàn)的點(diǎn)或位置。然后確定第一表示上的該點(diǎn)或區(qū)域的法線。在一個(gè)或多個(gè)實(shí)施例中,確定法線的特定點(diǎn)可以基于區(qū)域的中心、區(qū)域上的代表點(diǎn),或者可以確定為區(qū)域的代表法線等。在一個(gè)或多個(gè)實(shí)施例中,第一法線和第二法線可以以一致的方式確定,例如每個(gè)表示上的點(diǎn)表示物理表面上的相同點(diǎn)。
在415,計(jì)算第一法線和第二法線之間的差。該差可以基于兩個(gè)法線之間的角度距離來(lái)確定。在420,確定所計(jì)算的差值是否滿足閾值。作為示例,可以確定第一法線和第二法線之間的差是否大于預(yù)定閾值差。在一個(gè)或多個(gè)實(shí)施例中,閾值可以是單個(gè)值,或者可以基于物理表面、虛擬對(duì)象、電子設(shè)備等的特性。例如,如果電子設(shè)備更接近物理表面,則可以使用較小的閾值來(lái)確保虛擬對(duì)象在XR環(huán)境中看起來(lái)真實(shí)。作為另一示例,特定類型的虛擬對(duì)象可以與更精細(xì)的視圖相關(guān)聯(lián),從而與更小的閾值相關(guān)聯(lián)。
如果在420確定第一法線和第二法線之間的差不滿足閾值(即法線基本上不不同),則流程圖轉(zhuǎn)向425,并確定初始化位置處的第一表示和第二表示之間的距離。所述另一種方式是,對(duì)于要顯示虛擬對(duì)象的物理表面上的給定點(diǎn)或區(qū)域,確定第一表示中的對(duì)應(yīng)點(diǎn)或區(qū)域與第二表示中的相應(yīng)點(diǎn)或區(qū)域之間的距離。
在430,確定計(jì)算的距離是否滿足預(yù)定閾值。在一個(gè)或多個(gè)實(shí)施例中,閾值可以是單個(gè)值,或者可以基于物理表面、虛擬對(duì)象、電子設(shè)備等的特性。例如,如果電子設(shè)備更接近物理表面,則可以使用較小的閾值來(lái)確保虛擬對(duì)象在XR中看起來(lái)真實(shí)
在一個(gè)或多個(gè)步驟中,如果在430確定距離不滿足閾值(即距離足夠?。?,則流程圖轉(zhuǎn)向435,其中電子設(shè)備100根據(jù)第一表示呈現(xiàn)虛擬對(duì)象。換句話說(shuō),如果第一表示和第二表示之間的平面法線的差小,并且兩個(gè)表示之間的距離小,則可以使用諸如平面表示的粒度較小的表示來(lái)渲染虛擬對(duì)象。
根據(jù)一個(gè)或多個(gè)實(shí)施例,虛擬化模塊134可以基于第一幾何表示來(lái)確定如何呈現(xiàn)虛擬對(duì)象,使得虛擬對(duì)象從電子設(shè)備上的顯示器的視圖看來(lái)似乎坐在物理表面上。所述另一種方式是,虛擬對(duì)象被渲染為使得其位于物理對(duì)象的第一表示之上,使得其通過(guò)顯示器看起來(lái)位于物理對(duì)象之上。
如果在420確定第一法線和第二法線之間的差滿足閾值,或者如果在430確定第一表示和第二表示之間的距離滿足閾值,則流程圖轉(zhuǎn)向440。在440,虛擬化模塊134確定設(shè)備和桌面面之間的第一交點(diǎn)。在一個(gè)或多個(gè)實(shí)施例中,根據(jù)從電子設(shè)備到物理表面上的目標(biāo)的視圖向量,第一交點(diǎn)確定為第一幾何表示和第二幾何表示之一。
在445,其中虛擬化模塊134根據(jù)第一交點(diǎn)渲染虛擬對(duì)象。即,如果第一交點(diǎn)與第一幾何表示發(fā)生,則虛擬化模塊134根據(jù)第一幾何表示呈現(xiàn)虛擬對(duì)象。相反,如果第一交點(diǎn)與第二幾何表示發(fā)生,則虛擬化模塊134根據(jù)第二幾何表達(dá)呈現(xiàn)虛擬對(duì)象。換言之,虛擬化模塊134利用第二、更細(xì)粒度的幾何表示來(lái)確定如何渲染虛擬對(duì)象,使得虛擬對(duì)象看起來(lái)通過(guò)顯示器位于物理對(duì)象之上。
延伸閱讀:Xr preferred movement along planes
名為“Xr preferred movement along planes”的蘋果專利申請(qǐng)最初在2022年5月提交,并在日前由美國(guó)專利商標(biāo)局公布。
---
原文鏈接:https://news.nweon.com/100259