(映維網Nweon 2023年11月03日)由於位置無法對應眼睛,對於基於相機透視的頭顯,使用者可能很難正確地感知環境中物件相對於定義空間的空間關係。另外,同一定義空間內的多個使用者相對於定義空間外的物件可能具有不同的視角。
所以在名為「Perspective-dependent display of surrounding environment」的專利申請中,微軟提出了一種正確表示所定義空間的環境圖像,尤其是在汽車這樣的移動平台中時。簡而言之,計算系統建立圍繞所定義空間的環境的至少一部分的深度圖和強度數據。然後將強度數據與深度圖位置相關聯。
另外,計算系統可以獲得關於使用者在所定義空間內的姿勢信息,並基於所述使用者的姿勢確定所述使用者正在註視的所定義空間周圍環境的一部分。計算系統進一步從使用者的角度獲得表示環境部分的圖像數據,
然後,計算系統根據使用者視場範圍內的深度圖位置的強度資料產生用於顯示的影像。透過這種方式,由一個或多個攝影機獲得的環境視圖可以重新投影到使用者的視角,從而提供不會因攝影機的不同視角而產生遮蔽或視差問題的環境正確視圖。
圖1示出示例性使用場景100,其中使用者102和104位於所定義的空間106內。用戶102和104分別配戴頭戴裝置112和114。
計算系統110從每個使用者102、104的角度產生表示圍繞所定義空間的環境的影像資料。為此,計算系統110獲得關於每個使用者102和104在定義空間106中的姿勢的資訊。
在一個實施例中,每個使用者102、104的姿態可以從固定在所定義空間的參考框架中的一個或多個成像設備確定,並且配置為在所定義空間內對使用者進行成像。
在圖1中,四個這樣的成像設備描述為116、118、120和122。這種成像設備的實例可包括立體攝影機裝置和深度感測器等。
可以將計算系統110配置為透過來自相機108A-108E的資料產生圍繞定義空間106的環境的深度圖。每個相機108A-108E配置為取得部分周圍環境的強度影像資料。攝影機都知道彼此之間的空間關係。
另外如圖1所示,相鄰攝影機的視場重疊。因此,立體成像技術可用於確定周圍環境中物件的距離,以產生深度圖。在其它範例中,可使用與相機108A-108E分離的可選深度感測器115來取得周圍環境的深度圖。範例深度感測器包括光達感測器和一個或多個深度攝影機。在這樣的例子中,可選地獲取強度影像的攝影機的視場可以不重疊。
來自相機的強度資料與深度圖中的每個位置相關聯,例如網格中的每個頂點或點雲中的每個點。在其他範例中,對來自相機的強度資料進行計算組合,形成深度圖中每個位置的計算組合強度資料。例如,當深度圖位置由兩個或多個不同相機的感測器像素成像時,可以計算組合來自兩個或多個不同相機的像素值,然後儲存深度圖位置。
接下來,至少基於每個用戶102、104的姿態,計算系統110可以確定圍繞每個用戶102、104所注視的定義空間的環境的一部分,從每個用戶102、104的角度獲得表示此部分環境的影像數據,並將影像資料提供給每個頭顯112、114。
例如,透過知道使用者在定義空間106內的姿態,以及周圍環境的深度圖與定義空間106的空間關係,可以將每個使用者的姿態與深度圖關聯起來。然後,可以定義每個使用者的視野並將其投影到深度圖上,以確定在使用者的視場內的深度圖的一部分。
接下來,像光線投射這樣的技術可以用來確定景深圖中在視野中可見的位置。與所述位置相關聯的強度資料可用於形成用於顯示的影像。計算系統110可選擇性地與諸如雲端服務的遠端運算系統124進行通訊。在這樣的實例中,可以透過遠端計算系統124執行這樣的處理步驟中的一個或多個。
透過這種方式,在一個確定的空間內,不同的使用者可以從個人的角度來觀察周圍環境的圖像。頭顯112從使用者102的角度顯示的影像可以包括物件126和物件128在環境中的視圖,而物件128的視圖可以由頭顯114從使用者104的角度顯示的影像中的物件126遮擋。
圖2示出範例係統200的框圖,其配置為從使用者的角度向所定義空間內的使用者顯示圍繞所定義空間的環境的影像。系統200包括位於定義空間本地的計算系統202和位於定義空間內的顯示設備204。
系統200包括一個或多個相機210,並配置為對環境進行成像。在一個範例中,使用攝影機210作為被動立體攝影機並使用立體成像方法來獲取強度數據和深度數據。在其他範例中,可選擇性地使用一個或多個深度感測器208來取得所定義空間周圍環境的深度資料。
計算系統202包括可執行指令,用於透過所述深度資料建構所述環境的深度圖212。深度圖212可以採取任何適當的形式,例如3D點雲或網格。如上所述,計算系統202可以根據由一個或多個攝影機210所獲取的影像資料接收並儲存與深度圖212中的每個位置相關聯的強度資料214。
深度感測器208和相機210的相對空間位置彼此校準,並校準到所定義空間的幾何形狀。因此,圖2示出了可用作輸入的校準參數216,以幫助將相機210和深度感測器208的視圖轉置為使用者的姿勢,從而幫助將影像資料從相機視角重新投影到使用者視角以供顯示。
在一個實施例中,由於顯示裝置204和/或定義的空間可以相對於周圍環境不斷移動,因此可以執行連續的外部校準以校準顯示裝置204到深度圖212的位置。例如,顯示裝置204對深度圖212的校準可以以顯示裝置204的顯示的幀速率執行。
計算系統202可以進一步獲得關於所述定義空間內使用者的姿勢的資訊。使用者的姿勢可以更具體地指頭部位置和頭向,這有助於確定圍繞使用者正在尋找的定義空間的環境的一部分。計算系統202被配置為接收頭部追蹤資料218。頭部追蹤資料218可以另外或可選擇性地從固定在所定義空間的參考框架中的一個或多個成像設備接收。
如上所述,計算系統202結合從頭部追蹤資料218確定的使用者的姿勢,使用深度圖212和相應的強度資料214來確定從顯示裝置204的使用者的角度進行顯示的影像資料。
計算系統202可以根據使用者的姿勢確定使用者正在看的環境的一部分,將使用者的視場投影到深度圖上,然後獲得從使用者的角度可見的深度圖位置的強度資料。
提供給顯示裝置用於顯示的影像資料可以在顯示裝置204的幀緩衝器內經歷後期重投影。例如,後期重投影可用於在顯示所呈現的影像之前直接更新所呈現的影像中物件的位置。
在這裡,顯示設備204位於移動的車輛中,顯示設備204的幀緩衝區中的圖像數據可以基於車輛在226處的圖像形成與圖像顯示之間行駛的距離重新投影。計算系統202可以提供運動向量以顯示基於車輛運動的設備204,以用於後期重投影。在其它範例中,可以從來自顯示設備204的本地慣性測量單元的數據確定運動向量。
在一個實施例中,由相機210所獲得的強度資料的幀率可以不同於由深度感測器208所獲得的深度圖的幀率。例如,用於獲取深度圖的幀率可以低於用於獲取強度資料的幀率。
同樣地,幀率可能會根據車輛速度的變化、環境中移動的物體和/或其他環境因素而變化。在這樣的例子中,在將強度數據與深度圖位置關聯之前,可以轉譯強度數據和/或深度數據,以校正在獲得強度數據的時間和獲得深度圖的時間之間發生的運動。
在使用多個相機210獲取強度資料的情況下,圍繞所定義空間的環境中的物體可以出現在來自多個相機210的影像資料中。在這樣的例子中,對物件成像的每個攝影機的強度資料可以重新投影到使用者視角。
在其他範例中,來自對所述物體成像的一個相機或相機子集的強度資料可以重新投影到使用者視角。這可能比將所有對物件成像的攝影機的影像資料轉置到使用者視角使用更少的運算資源。
在這樣的範例中,可以使用具有確定為最接近使用者視角的視角的攝影機的影像資料。在另一個範例中,可對用於所選深度圖位置的來自多個相機的像素強度資料進行平均或以其他方式計算組合,然後儲存用於深度圖位置。
在圖1的範例中,使用者102和104透過頭顯112、114查看由計算系統110所產生的依賴透視的影像。在圖3的示範性場景300,使用者正在位於限定空間304內的固定位置的顯示面板查看由相機306A-306E所取得的影像資料。
然而,不是從相機306A-306E的角度顯示影像,而是將來自相機306A-306E的影像資料與從影像資料確定的深度圖相關聯,或從深度感測器取得的資料確定的深度圖相關聯。
這允許將影像資料轉換為使用者302的透視視圖。相機312、314對定義空間304的內部進行成像,以執行使用者姿態追蹤。一個或多個深度感測器附加地用於使用者姿態確定。基於透過來自相機312、314的數據確定的用戶姿態數據,可以在顯示面板310顯示來自用戶302視角的圖像數據。
在本例中,將影像資料重投影到使用者302的視角,除了上述關於圖2所述的操作之外,同時可以包含使用者姿態以顯示面板轉置,因為使用者302相對於顯示面板的位置隨著使用者在定義空間304內移動而改變。
因此,當使用者302移動到新的位置318時,環境中的物件320、322將從與使用者302的原始位置不同的角度顯示。計算系統316選擇性地可以與諸如雲端服務的遠端運算系統324進行通訊。
圖4示出提供圍繞所定義空間的環境的影像資料以從所定義空間內的使用者的角度顯示的範例方法400。
在402,方法400包括獲取關於使用者在定義空間內的姿勢的資訊。如上所述,例如,使用者的姿勢可以反映頭部位置和頭向。使用者的姿勢可以基於固定在空間的參考框架中的一個或多個攝影機的影像資料來確定。作為另一個範例,在406,使用者的姿勢可以從使用者穿戴的頭顯接收,例如,根據來自頭顯的一個或多個影像感測器的影像資料確定。
在408,包括取得圍繞所定義空間的環境的深度圖。深度圖可以透過在410處對環境進行成像的多個攝影機所獲得的影像資料來構建,或者可以透過在412處由光達感測器取得的光達資料來建構。
在其他範例中,可以利用其他合適類型的深度感測,例如飛行時間深度成像。然後在414,方法400包括儲存深度圖中每個位置的強度資料。
接下來在416,基於使用者的姿勢,確定圍繞使用者正在尋找的定義空間的環境的一部分。這可能包括在418確定使用者正在看的深度圖的一部分。在一個範例中,可以將使用者的視場投影到深度圖,以確定從使用者的角度可以看到的深度圖中的位置。
方法400同時包括,在420,從使用者的視角取得表示所述環境部分的影像資料。方法400同時包括,在426,提供用於透過所定義空間內的顯示設備顯示的影像資料。
圖5示出透過頭顯從使用者的角度顯示環境影像資料的範例方法500流程圖。
在502,方法500包括取得在定義空間內的頭顯的姿態的資訊。頭戴裝置的姿態可以根據頭顯一個或多個頭部追蹤攝影機的影像資料進行追蹤。在504,頭戴裝置的姿態可以基於固定在定義空間的參考框架中的一個或多個攝影機來確定。在506,一個或多個固定攝影機與頭顯通訊。
在508,方法500同時包括獲取深度圖,深度圖包括深度數據和深度圖的每個位置的強度數據,其中深度圖表示圍繞所定義空間的環境。
在512處,至少基於頭顯在所定義空間內的姿勢,確定頭顯的使用者正在註視的圍繞所定義空間的環境的一部分。這可以包括在514,確定使用者正在看的深度圖的一部分。使用者正在看的環境/深度圖的部分可以進一步至少基於使用者的眼睛位置。
方法500進一步包括,在518,獲取包含深度圖部分中每個位置的強度數據的圖像數據,並且在520,顯示圖像數據。
相關專利:Microsoft Patent | Perspective-dependent display of surrounding environment
名為「Perspective-dependent display of surrounding environment」的微軟專利申請最初在2022年3月提交,並在日前由美國專利商標局公佈。
以上是微軟AR/VR專利分享解決攝影機不同視角產生的遮蔽或視差問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!