微軟專利描述如何利用空間錨點構建AR/MR體驗

Spatial Anchors(空間錨點)表示存在於雲中的物理點。對於增強現實應用,全息圖可以附着到空間錨點。空間錨點的獨特地方在於,它能夠在雲中存儲和持久化,並在以後由創建它的設備或任何其他受支持設備進行查詢。這能夠實現錨點的雲備份和基於雲的錨點共享。

想象一下這個場景:你和一個朋友在家,你們同意通過增強現實設備開玩國際象棋,並在桌面定位全息棋盤。在設備端,兩人可以在現實世界中的同一位置(桌面)查看棋盤。無論在物理空間中移動到何處,棋盤都將固定到一個點。你甚至可以結束會話並在第二天重新啟動,無需再次放置錨。

對於幕後的技術原理,全息國際象棋應用使用一個空間錨點來保存棋盤的位置。這包括有關環境點的特徵信息。全息國際象棋應用可以共享空間錨信息。然後,你朋友的Hololens、iOS或Android設備端的應用程序可以查詢空間錨點位置。一旦確定,任意多個設備的應用程序就可以在相同的物理位置呈現棋盤。

在一份名為“Connecting spatial anchors for augmented reality”的專利中,這家公司描述了一種連接空間錨點的增強現實系統。具體來說,發明介紹了一種利用空間錨點來構建AR/MR體驗的技術。

微軟專利描述如何利用空間錨點構建AR/MR體驗

專利描述的計算設備包括攝像頭、處理器、以及存儲可由處理器執行的指令的存儲器。攝像頭捕獲成像第一物理世界位置的第一圖像數據,然後處理器基於第一圖像數據創建第一物理世界位置的第一空間表示。

接收定義第一虛擬空間錨點相對第一圖像數據中的成像特徵的姿態的用戶輸入,追蹤用戶到第二物理世界位置的移動,通過攝像頭捕獲成像第二物理世界位置的第二圖像數據,接收定義第二虛擬空間錨點相對於第二圖像數據中的成像特徵的姿態的用戶輸入,並向遠程計算設備發送表示第一空間表示、第一虛擬空間錨點的姿態、第二空間表示的數據,第二虛擬空間錨點的姿態,以及從用戶移動識別的第一虛擬空間錨點和第二虛擬空間錨點之間的位置關係。

微軟專利描述如何利用空間錨點構建AR/MR體驗

上圖是一個示例環境100,其中用戶指定的虛擬空間錨點可用於表示關注點。這種空間錨點可以支持開發者構建空間感知型AR和MR程序,並支持多種移動設備硬件和/或操作系統,例如微軟HoloLens、支持ARKit的iOS設備和支持ARCore的Android設備。空間錨點允許開發者利用增強現實和混合現實平台感知空間,指定精確的興趣點,並從支持的設備中調用興趣點。

可以看到,用戶110可以使用移動設備112在整個環境的各種物理世界位置創建空間錨114A、114B、114C、114D等。例如,環境100可以是包含物理藝術品的博物館或畫廊,用戶110可以通過向特定藝術品添加空間錨點來提供虛擬遊覽。

諸如全息圖之類的虛擬內容可以與空間錨點關聯。用戶110和其他用戶120、130和140可以通過各自的移動設備查看所述虛擬內容。在這個示例中,用戶110正在操作手持移動設備,而用戶120、130和140正在佩戴頭戴式顯示器設備。

虛擬內容可以位於空間錨點的位置或稍有偏移。例如,圖示為星形的任意虛擬內容116A位於與其相關聯的空間錨點114A處。作為另一示例,虛擬內容116B與相關聯的空間錨點114B偏移。

另外或可選地,當在距離空間錨的閾值範圍內,可經由移動設備自動播放的音頻內容。例如,音頻內容可以包括提供物理對象描述的人聲,例如對於空間錨點114B,音頻內容可以是“這是15世紀的花瓶”。

在一個示例中,用戶可以通過攝像頭對物理環境成像,並定義空間錨點相對於攝像頭捕獲的特徵的位置和/或方向,從而創建空間錨點。一旦已經定義了空間錨點的位置和/或方向,就可以相對於所述空間錨點來定義虛擬內容的位置和/或方向。

由於空間錨點可以與物理環境中的特徵相關聯,所以用戶在增強現實或混合現實環境中無法感知駐留在移動設備攝像頭視圖之外的空間錨點或其虛擬內容。

例如,工廠可以在應用程序涉及的每個位置放置空間錨。移動設備有助於引導工人從一個位置移動到下一個位置。移動設備可以聯繫基於雲的服務,並首先請求位於工人附近的空間錨點,然後逐步將工人引導到下一個位置。移動設備可以顯示視覺指示器,指示完成任務的下一個位置的大致方向和距離。

另一個示例是,博物館為公共展示品創建對應的空間錨點,而這一系列的錨點共同創建博物館的特定AR遊覽。當遊客參觀一個公共展覽品時,他們可以在移動設備打開博物館的混合現實/增強現實應用程序。然後,他們可以將手機指向周圍的空間,並通過攝像頭輸入查看其他公共展覽品的大致方向和距離,從而幫助引導用戶走向下一個公共展覽品。

微軟專利描述如何利用空間錨點構建AR/MR體驗

圖2是描繪用於創建彼此連接的空間錨點的示例方法流程圖。在一個示例中,方法200由計算設備或計算系統執行,例如移動設備和頭戴式設備等。在這個示例中,移動設備由用戶操作以創建空間錨點。

在210,所述方法包括經由移動設備的攝像頭捕捉對第一物理世界位置成像的第一圖像數據。在示例中,攝像頭是可見光攝像頭(例如,RGB攝像頭)。在另一示例中,可以使用兩個或多個攝像頭來捕獲圖像數據,包括可見光照攝像頭和深度照攝像頭。

在212,所述方法包括基於第一圖像數據創建第一物理世界位置的第一空間表示。在一個示例中,第一空間表示可以採用根據圖像數據確定的稀疏點雲形式。稀疏點雲的點可以具有相對於移動設備或其攝像頭定義的位置和/或方向值。在其他示例中,可以提供任何其他合適的圖像數據,例如由機載深度圖像傳感器捕獲的第一深度圖像數據。

在特定場景中,用戶可以將全息圖或其他虛擬內容與空間錨點關聯。例如在216,所述方法包括接收定義第一全息圖相對於第一虛擬空間錨點的姿態的用戶輸入。第一虛擬全息圖的姿態可定義相對於第一虛擬空間錨點的六自由度位置和/或方向。

在218,所述方法包括從移動設備向網絡可訪問服務發送表示第一空間表示、第一虛擬空間錨點的姿態、第一全息圖的姿態(如果定義)和一個或多個第一全息圖和/或第一全息圖的標識符(如果定義)的數據。網絡可訪問服務將此數據存儲在關係圖中,移動設備可通過多個會話和其他設備訪問該關係圖。網絡可訪問服務可以託管在一個或多個遠程計算設備上,例如服務器系統。

用戶可以在物理世界中創建任意數量的空間錨,並且可以將任意數量的全息圖與特定空間錨點關聯。例如,在創建第一虛擬空間錨之後,用戶可以隨移動設備移動到第二物理世界位置以創建第二虛擬空間錨。

在220,所述方法包括追蹤移動設備從第一物理世界位置到或朝向第二物理世界位置的移動,以捕獲追蹤數據。追蹤數據描述移動設備在六自由度空間的第一和第二物理世界位置之間的移動。可基於從一個或多個傳感器獲得的傳感器數據來追蹤移動設備的移動。移動設備可使用多個不同類型傳感器的傳感器融合來追蹤其在位置之間的移動。

在222,所述方法包括經由移動設備的照攝像頭捕捉第二物理世界位置的第二圖像數據。在224,所述方法包括基於第二圖像數據創建第二物理世界位置的第二空間表示。例如,第二空間表示可以採用稀疏點雲的形式。可以提供任何其他合適的圖像數據,例如由機載深度圖像傳感器捕獲的第二深度圖像數據。

在226,所述方法包括接收定義第二空間表示內的第二虛擬空間錨點的姿態的用戶輸入。可以相對於在第二圖像數據中成像的物理世界的特徵來定義第二虛擬空間錨點的姿態。在228,所述方法包括基於第一虛擬空間錨點和第二虛擬空間錨點各自的姿態和追蹤數據來確定它們之間的空間關係。

在232,所述方法包括從移動設備向網絡可訪問服務發送表示第二空間表示的數據、第二虛擬空間錨的姿態、第二全息圖的姿態(如果有)、一個或多個第二全息圖和/或第二全息圖的標識符(如果定義),追蹤數據描述移動設備在第一和第二物理世界位置之間的移動,以及第一和第二虛擬空間錨點之間的空間關係。網絡可訪問服務將該數據存儲在關係圖中,其中存儲了表示第一空間表示、第一虛擬空間錨點的姿態和第一全息圖(如果有)的姿態的數據。

名為“Connecting spatial anchors for augmented reality”的微軟專利申請最初在2021年4月提交,並在日前由美國專利商標局公布。

(0)
上一篇 2021-11-18 14:20
下一篇 2021-11-18 14:52

相关推荐