天天看點

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

作者:映維Nweon

(映維網Nweon 2023年07月18日)為了追蹤使用者或控制器的位置,有頭顯廠商選擇了光學傳感器方法,例如檢測在頭顯附近照明的LED标記的攝像頭。當使用這種LED标記時,需要在LED發射和攝像頭曝光之間同步計時。

特别是,在帶有基于LED星座追蹤系統的六自由度AR/VR控制器中,LED發射時間與攝像頭曝光視窗之間的定時同步對于圖像品質、精度和功耗非常重要。藍牙通常具有10毫秒或更長時間的資料包延遲和不确定性,這對于LED發射時間控制而言不切實際。

另外,頭顯攝像頭子產品和藍牙晶片可能從不同的時鐘源運作,這可能導緻時鐘漂移。所述問題使得LED和攝像頭定時同步成為一項具有挑戰性的任務。

不準确的同步可能導緻較差的圖像品質和準确性,這可能導緻控制器追蹤問題,進而對使用者體驗産生負面影響。同時,不準确的同步可能導緻不必要的計算資源使用和過度的功耗。

在名為“Led synchronization for virtual and augmented reality devices”的專利申請中,微軟就介紹了一種LED同步方法。

發明主要描述了在不修改現有藍牙實體層和其他協定層的情況下實作藍牙實體層無線同步的技術。所述技術使LED打開時間比攝像頭曝光時間短。這樣,在控制器運動的情況下,可以降低LED的功耗,并最大限度地減少LED星座圖像的模糊。

在一個實施例中,僅用于外部RF PA控制的RF TX/RX開關信号可用于定時同步。這種信号已經應用于一系列的藍牙晶片組中。所描述的實施例可以獨立于任何特定晶片組實作。是以,主裝置和從裝置晶片不必來自同一制造商。另外,所述原理可應用于除藍牙以外的其他工業或專有無線電技術為基礎的控制器。

藍牙主裝置通常發送一個3.2 KHz的主無線時鐘,這是主裝置和從裝置實體層時間同步和資料包傳輸的時間基礎。這個分辨率對于六自由度LED定時同步來說通常太低。然而,3.2 KHz主無線時鐘保持主從裝置同步,沒有時鐘漂移。

微軟介紹了一種實作基于鎖相環的時鐘乘法器的方法,以将時鐘從3.2 KHz提升到24 MHz或更高,以便在納秒級提供精确的LED定時控制。

當攝像頭時鐘和藍牙時鐘使用不同的時鐘源時,可能會産生時鐘漂移。在一個實施例中,可以實施數字鎖相環電路和攝像頭頻閃信号,以確定頭顯攝像頭和六自由度控制器LED保持與攝像頭幀同步。一旦建立了初始同步,隻要藍牙無線鍊路存在,即便控制器移動到攝像頭視場之外,系統都可以保持同步。

以這種方式,可以更有效地同步控制器和LED,進而減少處理器周期和電池功率等計算資源的利用,減少需要重複曝光的可能性,進而減少頭顯使用的功率。

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

如圖1所示,控制器160可以包括慣性測量單元,并可包括分布在所述控制器160的表面的多個光源。圖1示出具有沿控制器160的環狀結構的外部和内部分布的多個光源170的控制器160。

光源可以配置為在由頭顯的攝像頭或攝像頭擷取的圖像資料中形成光的模式,亦即“星座”,進而可以從捕獲控制器的圖像确定控制器160的姿态。

光源可以采用任何合适的形式,例如發光二極管LED,它發出可見光,并通過頭顯的可見光攝像頭進行檢測。在一個示例中,頭顯攝像頭可以配置為過濾除LED發出的光波長以外的光波長,以降低圖像資料中的噪點水準。控制器160可具有任意合适的光源數量和排列。

可以将VR裝置100和控制器160配置為直接彼此通信,例如通過利用藍牙通信協定或其他合适的無線通信協定連接配接的無線網絡。在其他實施例中,可選主機計算裝置(未示出)可與VR裝置100和控制器160通信,以接收來自VR裝置100和控制器160的資料并處理該資料,然後再向裝置發送控制信号。

通過使用VR裝置100上的一個或多個攝像頭追蹤控制器160的光源發出的光的位置,可以估計控制器160的相對于頭顯姿态。

來自IMU的資料可以進一步輔助追蹤。為了将來自圖像資料的光學位姿與IMU資料相結合,以提供控制器160相對于世界的實際姿态,可以通過将光學資料映射到世界坐标來進行處理,以将IMU資料與光學資料“融合”。

圖2至圖5顯示了頭顯和六自由度控制器與藍牙主時鐘同步的系統圖。

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

參考圖2,幀定時器220是數字鎖相環的一部分,并配置用于同步攝像頭幀與24 MHz同步時鐘。其中,所述時鐘鎖定到3.2 KHz藍牙主時鐘。

幀計時器220以24 MHz采樣率測量90 Hz攝像頭幀時間。測量到的時間發送到六自由度,以從控制器器件進行LED定時同步和漂移校正。

圖2示出具有閃光燈頻閃信号235的頭部追蹤攝像頭230。在一個實施例中,可以有2-4個或更多的攝像頭用于頭顯頭顯和控制器追蹤。攝像頭可以從同一時鐘源同步。其中一個攝像頭可以在60/90 MHz或更高的頻率下将頻閃信号235作為攝像頭時間同步基礎。頻閃信号的開始時間和持續時間可程式設計。

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

圖3示出的是藍牙主天線310,以及藍牙主時鐘320,其顯示為BT MCLK1 (24 MHz)。藍牙主時鐘320是藍牙主晶片的時鐘參考。圖3中同時顯示了藍牙主子產品330,它是頭顯上的藍牙主要制器,TX/RX開關信号暴露在晶片之上。

圖3進一步示出主時鐘發生器340,其生成用于藍牙主從實體層時序參考的3.2 KHz主時鐘360。圖例同時示出時鐘乘法器350。在一個實施例中,時鐘乘法器350将主時鐘乘以7500以生成用于幀計時器輸入時鐘的24 MHz同步時鐘。。

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

圖4所示的是LED驅動器410,其分别具有用于LED開/關和亮度控制的使能引腳412和PWM輸入414驅動一個或多個LED串420。控制器MCU 430可以作為六自由度控制器、LED定時和藍牙通信的微控制器。LED串420包括一個或多個串行或并行LED串,配置為生成用于六自由度控制器追蹤的星座。

圖4進一步示出幀時間同步器440,其從從主要制器430接收到的幀時間包生成攝像頭幀時間。幀時間同步器440比較目前和較新的幀計時器,以估計在固定期間内接收到下一個幀時間包之前平均到幀計時器的時鐘漂移。

這樣,幀時間同步器440可以逐幀補償攝像頭時鐘漂移,而不依賴于可能高達數百毫秒的藍牙資料包延遲。

圖4進一步示出LED偏移估計器450,其可配置為參照用于初始同步的幀起點估計LED ON定時偏移。圖例同時說明了LED偏移計數器460,其存儲LED ON定時偏移。

在一個實施例中,LED偏移計數器460可以調整到1/24 MHz=41.6 ns的精度。圖4進一步示出可用于控制LED打開時間并且可調節的LED持續時間計數器470。較短的LED持續時間可以在控制器運動時實作清晰穩定的圖像。

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

圖5示出了所述裝置藍牙天線510。圖5進一步示出主時鐘恢複功能530,所述功能恢複作為時鐘乘法器輸入之一的3.2 KHz主時鐘。在1.5 m距離處,由于實體層的TDD定時調整,主時鐘和恢複主時鐘可能有5ns的差異。對于41.6 ns的時序分辨率,可以忽略所述差異,LED時序控制沒有明顯差異。

圖5進一步示出時鐘乘法器540,其可與圖3中的時鐘乘法器350相同,并用于主時鐘乘法以在從屬裝置上生成24 MHz同步時鐘作為幀時間參考。

藍牙從主時鐘有一個相對于主時鐘漂移的時鐘,因為主從時鐘使用不同的時鐘源。然而,從時鐘乘法器540的輸出相位鎖定到3.2 KHz主時鐘以克服時鐘漂移。

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

圖6示出了根據頭顯的各種元件。圖示是一個基于鎖相環的時鐘乘法器600,它采用24 MHz (BT MCLK) f1時鐘作為兩個輸入之一。另一個輸入是3.2 KHz BT主時鐘。輸出f3為24 MHz,但鎖定到主時鐘階段,以允許控制器側24 MHz f3時鐘恢複而沒有時鐘漂移。

圖例同時說明了頭顯 MCU定時器/計數器610具有衆多微控制器可用的外部事件觸發器。24位定時器/計數器輸入鎖相到24 MHz f3時鐘。觸發事件是攝像頭頻閃信号630,它是一個精确的攝像頭曝光定時參考。所述攝像頭頻閃信号630可用于測量所述攝像頭幀周期,并将所述攝像頭幀周期發送給控制器MCU以供LED定時參考。

對于10ppm時鐘源,每幀的最大測量誤差為0.22 us。由于攝像頭和BT時鐘源不同,誤差會逐幀累積。這種誤差可以通過為攝像頭和頭顯側的BT使用相同的24 MHz時鐘源或通過将24 MHz時鐘f3時鐘測量的攝像頭幀時間發送到控制器進行周期性校正來消除。

圖6進一步示出暴露了頻閃信号的頭顯頭和控制器追蹤攝像頭640。攝像頭640可以從同一時鐘源進行同步。攝像頭傳感器通常有閃光燈控制的頻閃信号。在一個實施例中,攝像頭640中的至少一個具有其頻閃信号。盡管幀同步信号可用于相同的目的,但頻閃信号可程式設計,更靈活。

圖7示出控制器的各種元件。所示的時鐘乘法器710可以是與圖6中的時鐘乘法器600相同的時鐘乘法器部分。時鐘乘法器710可用于産生鎖相到3.2 KHz主時鐘的24 MHz f3時鐘,用于LED定時控制。24 MHz f1和f1 ‘可能略有不同,因為它們來自不同的來源,但兩者都是鎖定到3.2 MHz BT主時鐘的相位。

微軟專利分享AR/VR控制器追蹤的LED資料同步解決方案

圖7同時示出了兩個24位寄存器,其中包含一個新幀計時器(NFT) 720和目前幀計時器(CFT) 730。

可以将NFT 720配置為在攝像頭幀時間藍牙資料包725中儲存從頭顯接收的攝像頭幀時間。CFT 730可以保持由時鐘漂移ΔFT引起的平均幀時間誤差補償的幀時間。CFT 730同時可以包括硬體幀計數器740,配置為每當計數器下流發生時産生90hz幀啟動觸發信号。

所述子產品750可提供無線數字鎖相環,以確定在頭顯或6DoF控制器斷電之前,攝像頭架構和LED控制定時保持同步。

子產品760包括一個軟體LED偏移估計器(LOE) 762和兩個硬體計數器:LED偏移計數器(LOC) 764和LED持續時間計數器(LDC) 766,分辨率為41.6 ns。

762可根據初始同步過程中的幀觸發信号估計LED啟動時間。這個時間值可以存儲在LOC 764中。當764溢出時,觸發LED并打開LED。同時,LDC 766可能在溢出時開始倒計時并關閉LED。

LDC 766可以通過軟體設定。LDC 766可能與攝像頭的曝光時間相同或更短,以便在六自由度控制器運動時捕捉到清晰的圖像。LED持續時間可程式設計,并可以由圖像清晰度要求,LED驅動電流,攝像頭傳感器靈敏度等決定。

圖7同時示出具有用于LED ON/OFF和亮度控制的使能引腳和PWM的LED驅動器770。亮度控制資料可以通過BT資料包從頭顯回報。

相關專利:Microsoft Patent | Led synchronization for virtual and augmented reality devices

名為“Led synchronization for virtual and augmented reality devices”的微軟專利申請最初在2023年1月送出,并在日前由美國專利商标局公布。

繼續閱讀