(映維網 2021年12月23日)計算裝置可以包括用於估計的當前位置的導航模式。例如,計算裝置可透過全球定位系統(GPS)、視覺慣性里程計(VIO)或行人航位推算(PDR)進行導航。計算裝置確定自己的地理位置可以帶來重要的幫助。
作為一個例子,所述資訊可以呈現給使用者,以緯度和經度座標形式或以圖形地圖方式來提供位置到導航,從而幫助使用者確定自己的位置,或者確定裝置的當前位置(當裝置丟失時)。作為另一個示例,裝置可配置為根據其當前位置執行特定的動作或功能。
以頭戴式裝置為例,它可透過一系列不同的導航技術確定其地理位置,例如全球定位系統(GPS)導航、視覺慣性里程計(VIO)和行人航位推算(PDR)等。然而,所述技術存在各自的缺點,例如GPS導航需要足夠的訊號強度和與閾值數量的衛星的通訊,而VIO在低光和低紋理場景中會受到影響。所以,僅依賴一種導航模式的裝置在準確報告其地理位置時往往會遇到困難。
在名為“Device navigation based on concurrent position estimates”的專利申請中,微軟就介紹了一種基於並行位置估計來為頭戴式顯示裝置導航的方法。
對於頭戴式顯示裝置,特定於位置的虛擬影象可呈現給使用者眼睛,並且特定於位置的虛擬影象可以隨著裝置位置的變化而變化或更新,如圖1A所示。圖1A描繪了在真實環境104中使用頭戴式顯示裝置102的示例使用者100。頭戴式顯示裝置包括近眼顯示器106,其配置為向用戶眼睛呈現虛擬影象。同時,所述近眼顯示器允許使用者感知現實世界。
在圖1A中,頭戴式顯示裝置102透過近眼顯示器向用戶眼睛呈現特定於位置的虛擬影象110和112,包括指示裝置相對於周圍環境的大致位置的標記111。虛擬影象112採用持久標記的形式,並且標記朝向地標的方向(在本例中為使用者的家)。在其他情況下,可使用其他地標,例如使用者的汽車、另一使用者的位置、地理特徵(如附近的建築物、山脈、興趣點)。
當頭戴式顯示裝置在環境中移動時,特定位置的虛擬影象可以更新,從而反映裝置最近報告的位置,如圖1B所示。圖1B示出了使用者100在真實環境104中使用頭戴式顯示裝置102。但在圖1B中,頭戴式顯示裝置在真實環境中的位置已經改變。所以,透過改變標記111相對於地圖特徵的位置來更新虛擬影象110。類似地,根據相對於使用者的家的朝向來相應地更新虛擬影象112。
在一個實施例中,頭戴式裝置可以透過多個導航模式同時輸出多個位置估計,並將具有最高置信值的位置估計報告為裝置的當前報告位置。隨著裝置的移動及其環境的變化,一些導航模式的輸出可能變得更加可靠,而另一些導航模式則變得不那麼可靠。所以,在任何給定的時間,裝置可以報告由各種導航模式中所估計的位置,以便準確地追蹤和報告裝置的移動。
圖2示出了用於計算裝置導航的示例方法200,而圖3則是一個關於頭戴式顯示器的示例。如圖3所示,裝置300包括近眼顯示器302,其配置為向用戶眼睛呈現虛擬影象303。在各種實施例中,頭戴式顯示裝置300可配置為提供增強和/或虛擬現實體驗。
近眼顯示器顯示的虛擬影象可以採用任何合適的形式,並且可以隨著頭戴式顯示裝置位置的變化而動態更新(或不動態更新)。圖1描述的位置特定虛擬影象是一個非限制性示例。特定位置的虛擬影象可以在增強現實和虛擬現實設定中呈現。例如,即使在完全虛擬的環境中,系統都可以提供動態更新的對映,並指示裝置相對於周圍真實世界環境或虛擬虛擬環境的位置。類似地,可以為真實世界中的真實地標或虛構地標提供指示朝向方向的標記。
回到圖2。在202,方法200包括經由計算裝置的第一和第二導航模式同時輸出第一和第二位置估計。但應當理解的是,計算裝置可以具有兩個以上的導航模式,並且因而可以輸出兩個以上的併發位置估計。換言之,計算裝置還可以經由第三導航模態與第一和第二位置估計同時輸出第三位置估計。
如上所述,示例導航模式可能包括GPS、VIO和PDR。圖3的頭戴式顯示裝置300包括三個導航感測器308、310和312,對應於三種不同的導航模式。例如,導航感測器308可以是GPS感測器,配置為與多個軌道GPS衛星介面以估計裝置的當前地理位置。這可以表示為絕對位置,並以緯度和經度座標表示。
與GPS感測器輸出的絕對位置不同,其他導航模式可能會輸出相對於先前報告位置的位置估計值。例如,導航感測器310可以包括配置成對周圍真實世界環境成像的攝像頭。透過分析捕獲的影象以識別周圍環境中的影象特徵,並評估特徵如何隨著裝置視角的變化而變化,裝置可透過視覺里程計估計其相對位置。在某些情況下,這可以與適當的運動感測器(例如慣性測量單元IMU)的輸出相結合,以實現視覺慣性里程計估計。需要注意的是,這將帶來位置的位置估計,而不是新的絕對位置。
導航感測器312可包括運動感測器(例如IMU、加速計、磁強計、陀螺儀)的適當集合,其配置用於透過PDR估計裝置遠離先前報告位置的運動方向和幅度。同樣,這將帶來位置的位置估計,而不是新的絕對位置。
在較長的時間尺度上,相對位置估計(如VIO和PDR輸出的估計)可能不如絕對位置估計(如GPS輸出的估計)準確。這是因為每個相對位置估計可能會受到某種程度的感測器誤差或漂移的影響。當輸出多個連續的相對位置估計值時,每個估計值可能會使先前相對估計值的感測器誤差/漂移複合,導致裝置的報告位置逐漸偏離裝置的實際位置。相比之下,絕對位置估計值與之前報告的裝置位置無關。所以,與絕對位置估計相關的任何感測器誤差/漂移只會影響該位置估計,不會在一系列估計中複合。
圖4示意性地示出了經由多個輸入模式的多個位置估計的併發輸出。如圖所示,在時間幀400A,透過三種不同的導航模式輸出三種不同的位置估計402A、402B和402C。每個不同的位置估計對應於不同的形狀。換句話說,位置估計402A(正方形)由第一導航模式(例如,GPS)輸出,而位置估計402B和402C(圓形和三角形)由第二和第三導航模式(例如,VIO和PDR)輸出。
回到圖2,在204,方法200包括,基於確定第一位置估計具有比第二位置估計更高的置信值,將第一位置估計報告為計算裝置的第一報告位置。具體地,第一位置估計402A渲染為黑色以指示其具有最高置信值,並且因此被報告為計算裝置的第一報告位置。
如上所述,裝置使用的各種導航模式在各種情況下可能或多或少地可靠。例如,GPS導航通常需要裝置檢測至少具有適當訊號強度的閾值數量的GPS衛星,以便輸出準確的位置估計。因此,當裝置進入室內環境時,GPS位置估計的精度可能會受到影響。
類似地,VIO依賴於檢測周圍真實環境中捕獲的影象中的特徵。所以,VIO位置估計的準確性可能會在弱光環境中以及具有相對較少獨特可檢測特徵的環境中降低。例如,如果裝置位於空場中,則裝置可能難以檢測足夠數量的特徵以準確追蹤裝置的移動。
關於PDR,用於實施PDR的運動感測器通常會出現一定程度的漂移或其他誤差。隨著時間的推移,裝置繼續移動,而錯誤將變得複雜,並導致裝置位置的估計越來越不準確。
因此,計算裝置的每個導航模態輸出的每個位置估計值可分配相應的置信值。所述置信值可以任何適當的方式計算,並基於有助於每個導航模式精度的各種因素的任何適當權重。應理解,用於計算置信值的具體方法以及每個置信值所採用的具體形式將因實施和導航模式的不同而不同。
例如,如上所述,與相對位置估計序列相比,絕對位置估計序列通常不易受到感測器誤差/漂移的影響。因此,當確定特定位置估計的置信值時,用於輸出估計的導航模態的性質(即,絕對vs相對)可被視為輸入。因此,絕對位置估計(例如,GPS)通常比相對位置估計(例如,VIO,PDR)具有更高的置信度,尤其是在先前報告的裝置位置由相對導航模式輸出的情況下。
無論如何,每次裝置透過兩個或多個導航模式同時輸出位置估計值時,具有最高置信值的位置估計值將被報告為計算裝置的報告位置。值得注意的是,“報告”位置不需要向計算裝置的使用者顯示或以其他方式指示該位置。相反,“報告的位置”是計算裝置在當前時間的當前位置的內部參考。換句話說,計算裝置的任何特定於位置的功能可以將最近報告的位置視為計算裝置的實際位置。例如,請求裝置的當前位置(如透過位置API)的計算裝置的任何軟體應用程式可以提供最近報告的位置,而不管該位置是否曾經以視覺方式指示給使用者。
回到圖2,在206,方法200包括在計算裝置離開第一報告位置時,經由計算裝置的第一和第二導航模式同時輸出第一和第二後續位置估計。再一次,計算裝置在某些情況下可以包括兩個以上的導航模式,並且因此可以同時輸出兩個以上的後續位置估計。如圖所示,在多個連續時間幀400B-400G中的每一個,裝置經由計算裝置的各種導航模式同時輸出新的位置估計。連續時間幀可以以任何合適的頻率出現,例如每秒1幀、每秒5幀、每秒10幀、每秒30幀、每秒60幀。在一些示例中,連續時間幀可能不會以任何固定頻率出現。相反,當裝置的一個或多個軟體應用程式請求裝置的當前位置時,導航模式可以同時輸出位置估計。
回到圖2,在208,方法200包括報告經由第二導航模態輸出的第二後續位置估計,作為計算裝置的第二報告位置。這可以基於確定經由第一導航模態輸出的第二後續位置估計的置信值高於第一後續位置估計的置信值來實現。這也在圖4中示意性地示出。如圖4所示,在時間幀400B處,第二後續位置估計404B渲染為黑色,以指示其被報告為計算裝置的第二報告位置,而不是第一後續位置估計404A。
繼續圖4,在時間幀400C,經由第三導航模態報告的第三後續位置估計406C報告為計算裝置的第三報告位置。通常,在任何特定時間幀,計算裝置的每個導航模態可以輸出計算裝置的不同位置估計。所述位置估計值中具有最高置信值的任何一個都可以報告為計算裝置的最近報告位置。
在一個示例場景中,第一導航模式可以是GPS導航。當裝置在第一個和第二個報告位置之間移動時,裝置可用的GPS衛星數量可能會減少,從而降低第一個後續位置估計的置信值。
在另一示例場景中,第一導航模態可以是VIO。當裝置在第一和第二報告位置之間移動時,裝置環境中的環境光水平可能降低,從而降低第一後續位置估計的置信值。另外,或者,當裝置的攝像頭可見的場景中的紋理級別在第一和第二報告位置之間降低時,第一後續位置估計的置信值可以降低。
在另一示例場景中,第一導航模態可以是PDR。如上所述,用於實現PDR的感測器通常會出現一定程度的誤差,並且所述誤差會隨著時間的推移而加劇。因此,經由PDR輸出的位置估計的置信值可以與自替代導航模式(例如配置為輸出絕對位置估計的導航模式)可用以來經過的時間成反比。換言之,隨著在報告第一位置之後的時間流逝,經由PDR輸出的位置估計的置信值可以降低到低於對應於經由其他導航模式輸出的其他位置估計的置信值。
再次回到圖2,在210,方法200包括透過近眼顯示器向用戶眼睛呈現特定於位置的虛擬影象,特定於位置的虛擬影象隨著頭戴式顯示裝置從第一報告位置移動到第二報告位置而動態更新。步驟210以虛線示出,以指示特定位置虛擬影象的呈現和更新可在方法200的整個過程中進行。
需要注意的是,可以考慮導航模式對續航能力的影響。例如,某些導航模式可能比其他導航模式對裝置電池續航的影響更大。例如,VIO可能比GPS或PDR消耗更多的電池電量。因此,當第一導航模態是VIO時,在報告第二位置之前,裝置的剩餘電池電平可以降低到閾值(例如20%)以下。因此,在一些示例中,當裝置電池電量降至閾值以下時,VIO(和/或其他電池密集型導航模式)可能被禁用。因此,該導航模態可能不會在下一時間幀輸出位置估計。因此,可報告由第二(例如,較少電池密集型)導航模態輸出的第二後續位置估計。
此外,在某些情況下,裝置可能會收到使用者輸入,以指定裝置的手動定義位置。然後,可以將手動定義的位置報告為裝置的最近報告的位置。使用者輸入可以採用任何合適的形式。例如,使用者可以手動輸入數字座標。使用者可以指定一個特定的航向,例如北方。作為另一示例,使用者可以在地圖應用程式中放置定義手動定義位置的標記。
透過利用多種導航模式的併發估計,系統可以更精準地判斷裝置的當前位置,並用以支援各種用例和功能。
相關專利:Microsoft Patent | Device navigation based on concurrent position estimates
名為“Device navigation based on concurrent position estimates”的微軟專利最初在2020年6月提交,並在日前由美國專利商標局公佈。