TWI691731B - 位置追蹤系統及方法 - Google Patents

位置追蹤系統及方法 Download PDF

Info

Publication number
TWI691731B
TWI691731B TW107121674A TW107121674A TWI691731B TW I691731 B TWI691731 B TW I691731B TW 107121674 A TW107121674 A TW 107121674A TW 107121674 A TW107121674 A TW 107121674A TW I691731 B TWI691731 B TW I691731B
Authority
TW
Taiwan
Prior art keywords
posture
field
processor
imu
position tracking
Prior art date
Application number
TW107121674A
Other languages
English (en)
Other versions
TW201915510A (zh
Inventor
史爾克 鍾
伊安 艾金森
艾德維 賈因
路西尼 奥加涅西恩
墨菲 史汀
塞基特 帕特卡
Original Assignee
美商谷歌有限責任公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商谷歌有限責任公司 filed Critical 美商谷歌有限責任公司
Publication of TW201915510A publication Critical patent/TW201915510A/zh
Application granted granted Critical
Publication of TWI691731B publication Critical patent/TWI691731B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B5/00Near-field transmission systems, e.g. inductive or capacitive transmission systems
    • H04B5/70Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes
    • H04B5/73Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes for taking measurements, e.g. using sensing coils
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R33/00Arrangements or instruments for measuring magnetic variables
    • G01R33/02Measuring direction or magnitude of magnetic fields or magnetic flux
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/0009Transmission of position information to remote stations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/16Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01VGEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
    • G01V3/00Electric or magnetic prospecting or detecting; Measuring magnetic field characteristics of the earth, e.g. declination, deviation
    • G01V3/08Electric or magnetic prospecting or detecting; Measuring magnetic field characteristics of the earth, e.g. declination, deviation operating with magnetic or electric fields produced or modified by objects or geological structures or by detecting devices
    • G01V3/10Electric or magnetic prospecting or detecting; Measuring magnetic field characteristics of the earth, e.g. declination, deviation operating with magnetic or electric fields produced or modified by objects or geological structures or by detecting devices using induction coils
    • G01V3/104Electric or magnetic prospecting or detecting; Measuring magnetic field characteristics of the earth, e.g. declination, deviation operating with magnetic or electric fields produced or modified by objects or geological structures or by detecting devices using induction coils using several coupled or uncoupled coils
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Geology (AREA)
  • General Life Sciences & Earth Sciences (AREA)
  • Geophysics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Optics & Photonics (AREA)
  • Gyroscopes (AREA)
  • Studio Devices (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

一種電磁(EM)位置追蹤系統基於一EM場之經偵測強度值識別物件之姿勢。為解決該場中之變形,該系統採用一姿勢感測器來提供行動單元之一第二姿勢。在尚未偵測到該EM場中之變形之情況下,HMD分別施加一組標稱對應權重至EM姿勢資料及IMU姿勢資料,且組合該等經加權之姿勢值以識別該行動單元之一組合姿勢。回應於偵測到指示該EM場中之變形之情況,該HMD可施加不同權重至該EM姿勢資料及該IMU姿勢資料以例如增加該IMU姿勢資料對該組合姿勢之影響。

Description

位置追蹤系統及方法
本發明大體上係關於位置追蹤系統且更明確言之係關於電磁(EM)位置追蹤系統。
使用近場EM場之位置追蹤系統(亦被稱為EM位置追蹤系統)通常包含一發射器,該發射器使用三軸線圈產生一EM場以感應定位於一遠端接收器處之一第二個三軸線圈上之一電流。該接收器產生對應於EM場量值之值,該等值接著經處理以運算該接收器相對於該發射器之一位置及/或定向。該位置及/或定向值亦被稱為「姿勢」值。EM位置追蹤系統通常依靠遵循一偶極模型之EM場,其中在接收線圈處之場量值係與發射線圈之距離及正交性成比例。在發射器或接收器附近,存在於EM場中之金屬物件可改變EM場之形狀及量值,從而引起姿勢值之不準確度及變形。
根據本發明之一實施例,本發明係關於一種方法,其包括:接收指示一發射器相對於一接收器之一第一姿勢之EM場量值;自與該接收器及該發射器之一者相關聯之一第一姿勢感測器接收感測器資料, 該感測器資料指示該第一姿勢;回應於偵測EM場之變形,基於EM場量值與感測器資料之一組合計算一經校正姿勢;及將該經校正姿勢發送至一處理器。
根據本發明之另一實施例中,本發明係關於一種系統,其包括:一基底單元,其位於一電磁(EM)場內;一行動單元,其定位於該EM場內;一EM發射器,其產生該EM場;一EM接收器,其感測對應於該行動單元相對於該基底單元之姿勢之EM場量值,其中產生該行動單元相對於該基底單元之一第一姿勢;一第一姿勢感測器,其與該行動單元相關聯,其產生該行動單元之姿勢值且產生該行動單元之一第二姿勢;及一處理器,其用於運算估計EM場中之EM變形之存在之一指標。
100:頭戴式顯示(HMD)系統/基於頭戴式顯示(HMD)之系統/系統/電磁(EM)位置追蹤系統
102:頭戴式顯示(HMD)裝置
104:處理器
105:同步定位及地圖測繪(SLAM)模組
107:處理器
114:慣性量測單元(IMU)
122:通信鏈路
132:手動控制器
140:電磁(EM)場發射器/發射器
141:電磁(EM)場接收器/接收器
142:電磁(EM)場
200:電磁(EM)位置追蹤系統
202:基底單元
204:電磁(EM)場發射器
206:功率放大器
208:第一處理器/處理器
210:電磁(EM)場
212:行動單元
214:電磁(EM)場接收器/電磁(EM)接收器
216:信號放大器
218:第二處理器/處理器
220:慣性量測單元(IMU)
222:通信鏈路
300:電磁(EM)位置追蹤系統
302:基底單元
304:電磁(EM)場接收器
306:信號放大器
308:第一處理器
312:行動單元
314:電磁(EM)場發射器
316:功率放大器
318:第二處理器
320:慣性量測單元(IMU)
400:三維電磁(EM)場/電磁(EM)場
402:三維球體電磁(EM)場/電磁(EM)場
404A:磁極
404B:磁極
450:三維電磁(EM)場/電磁(EM)場
452:變形之電磁(EM)場
454:沙發/金屬物件
456:變形區域
500:電磁(EM)追蹤/電磁(EM)位置追蹤系統
502:基底單元
504:電磁(EM)場
506:行動控制器
508:有線或無線網路通信頻道
510:電磁(EM)場接收器
512:慣性量測單元(IMU)
514:控制器處理器
516:電磁(EM)姿勢值
518:慣性量測單元(IMU)對準信號
600:電磁(EM)追蹤
602:沙發
604:慣性量測單元(IMU)姿勢資料
700:行動單元/定向程序
702:方塊
704:方塊
706:方塊
708:方塊
710:方塊
712:方塊
714:方塊/決策方塊
716:方塊
718:方塊
800:行動單元/位置程序
802:方塊
804:方塊
806:方塊
808:方塊
810:方塊
812:方塊
814:方塊/決策方塊
816:方塊
818:方塊
藉由參考隨附圖式熟習技術者可更佳理解本發明且明白其諸多特徵及優點。在不同圖式中使用相同元件符號指示類似或相同物項。
圖1係繪示根據一些實施例之利用採用變形校正之一EM追蹤系統之一頭戴式顯示(HMD)系統的一圖式。
圖2係繪示根據一些實施例之包含產生藉由一行動單元使用之一EM場之一基底單元之一EM位置追蹤系統的一方塊圖。
圖3係繪示根據一些實施例之包含產生一EM場之一行動單元及一基底單元之一EM位置追蹤系統的一方塊圖。
圖4A係繪示根據一些實施例之藉由一基底單元產生之一EM場(無變形)的一圖式,其中一行動單元定位於該EM場內部。
圖4B係繪示根據一些實施例之藉由一基底單元產生之一EM場(有變形)的一圖式,其中一行動單元及一金屬物件定位於該EM場內 部。
圖5係繪示根據一些實施例之使用EM追蹤(無變形)之圖1之HMD系統的一系統方塊圖。
圖6係繪示根據一些實施例之使用EM追蹤(有變形)之圖1之HMD系統的一系統方塊圖。
圖7係根據一些實施例之使用一EM位置追蹤系統計算圖1之一HMD系統之定向之一方法的一流程圖。
圖8係根據一些實施例之使用一EM位置追蹤系統計算圖1之一HMD系統之位置之一方法的一流程圖。
圖1至圖8繪示用於藉由採用變形偵測以識別一EM場中之非預期偏差或干擾且校正由該經偵測變形所引起之姿勢誤差而減小變形對一EM位置追蹤系統之影響之技術。例如,一HMD可採用一EM位置追蹤系統來識別用於操縱藉由該HMD產生之一VR環境中之物項之物件(例如,手動控制器)之位置。剛性地貼附至基底單元或行動單元之金屬物件可產生EM場中之變形。可在製造期間校準EM位置追蹤系統時藉由該系統補償此等變形。然而,在校準之後引入至EM場中之金屬物件引入習知難以偵測及校正之未知或非預期變形。為解決此等變形,系統採用一行動單元(一手動控制器)中之一姿勢感測器來提供該行動單元之一第二姿勢量測。該姿勢感測器可為可含有一陀螺儀或一加速度計之一慣性量測單元(IMU),或可使用其他感測器來判定行動單元之一姿勢。在尚未偵測到EM場中之變形之情況下,HMD分別施加一組標稱對應權重至EM姿勢資料及IMU姿勢資料,且組合該等經加權之姿勢值以識別行動單元之一組合 姿勢。回應於偵測到指示EM場中之變形之情況,HMD可施加不同權重至EM姿勢資料及IMU姿勢資料以(例如)增加IMU姿勢資料對該組合姿勢之影響。藉此HMD減少由此EM變形所引起之姿勢誤差,從而改善使用者體驗。
圖1係繪示根據一些實施例之利用一EM位置追蹤系統及一慣性量測單元(IMU)計算一所安裝單元之一姿勢之一頭戴式顯示(HMD)系統100的一方塊圖。基於HMD之系統100包含一HMD裝置102及一或多個有線或無線手動控制器132。在至少一項實施例中,HMD裝置102包含安裝於一使用者之一頭部上之一外殼(未展示)。該外殼含有用於向該使用者顯示視覺內容、向該使用者輸出音訊內容及追蹤手動控制器132之姿勢之各種電子及光學組件,如本文中進一步描述。HMD裝置102亦可包含一或多個近眼顯示器及一處理子系統。
作為基於HMD之系統100之操作之一總體概述,HMD裝置102包含執行指令以向一使用者提供一虛擬實境(VR)體驗之一處理器104。例如,處理器104可執行指令以經由一或多個近眼顯示器顯示視覺內容及經由一或多個揚聲器(未展示)輸出音訊內容。為支援VR體驗之供應,HMD裝置102保持追蹤其自身在基於HMD之系統100之一環境內之姿勢。如本文中所使用,術語「姿勢」係指一物件之位置、該物件之定向或其等之一組合。因此,HMD裝置可保持追蹤其在該環境內之位置,可保持追蹤其在該環境內之定向,或可保持追蹤其位置及其定向兩者。
為保持追蹤其在環境內之姿勢,HMD裝置102採用一同步定位及地圖測繪(SLAM)模組105,該同步定位及地圖測繪(SLAM)模組105經組態以基於SLAM技術產生用於HMD裝置102之姿勢資訊。例如, 在一些實施例中,SLAM模組105經組態以自一或多個影像擷取裝置(圖1處未展示)接收環境之影像,識別來自該等影像之特徵,及基於該等經識別之特徵識別HMD裝置102之姿勢。在至少一項實施例中,SLAM模組105可採用額外姿勢偵測感測器,諸如慣性感測器、全球定位系統感測器及類似者以協助識別HMD裝置102之姿勢。SLAM模組105提供姿勢資訊至處理器104,該處理器104接著採用該姿勢資訊以將HMD裝置102放置於一虛擬環境中。
為進一步增強VR體驗,HMD裝置102亦不斷更新手動控制器132之姿勢。特定言之,為識別該姿勢,基於HMD之系統100利用一EM場偵測系統,該EM場偵測系統包含用以產生一EM場142之一EM場發射器140及用以偵測該EM場142之一強度之一EM場接收器141。在所描繪之實例中,EM場發射器140定位於HMD裝置102之一外殼處或該外殼內且EM場接收器141定位於手動控制器132之一外殼處或該外殼內。然而,因為EM場偵測系統通常經組態以產生發射器140與接收器141之間的一相對姿勢,所以其他組態可行。例如,在至少一項實施例中,EM場發射器140定位於手動控制器132之一外殼處或該外殼內且EM場接收器141定位於HMD裝置102之一外殼處或該外殼內。在另一實施例中,HMD裝置102及手動控制器132兩者皆含有EM場接收器而EM發射器定位於一第三基底單元中。在又另一實施例中,HMD裝置102及手動控制器132含有EM發射器,而EM接收器定位於一第三基底單元中。
在所繪示之實例中,手動控制器132包含協助手動控制器132之位置偵測之一IMU 114。特定言之,IMU 114基於IMU 114之一或多個運動感測器(諸如一或多個加速度計、陀螺儀或其等之一組合)週期性 地或連續地產生手動控制器132之姿勢資訊。手動控制器132之一處理器107組合藉由IMU 114產生之姿勢資料(在下文中,「IMU姿勢資料」)與基於EM場142產生之姿勢資料(在下文中,「EM姿勢資料」)以產生一組合姿勢及經由一通信鏈路122將該組合姿勢提供至HMD裝置102。HMD裝置102可採用該組合姿勢以識別手動控制器132相對於HMD裝置102之姿勢且基於組合姿勢對虛擬環境作出改變。此容許一使用者使用手動控制器132與虛擬環境互動。
在至少一項實施例中,處理器107藉由使各類型資料與一不同權重相乘且接著將相乘的結果相加而組合IMU姿勢資料與EM姿勢資料。此外,為校正EM場142中之經偵測變形,處理器107可改變施加至IMU姿勢資料之權重、施加至EM姿勢資料之權重或改變兩個權重。為了繪示,在EM場142中不存在經偵測變形之情況下,處理器107施加一組標稱權重至IMU姿勢資料及EM姿勢資料之各者,且組合該等結果以產生組合姿勢。在至少一項實施例中,所施加之權重使得IMU姿勢資料對該組合姿勢具有相對較小影響(例如,施加至IMU姿勢資料之權重接近零或為零)。如下文進一步描述,回應於偵測到EM場142中之變形,處理器107改變施加至IMU姿勢資料及EM姿勢資料之各者之權重以增加IMU姿勢資料對組合姿勢之影響及減小EM姿勢資料對組合姿勢之影響。處理器107藉此減小經偵測變形對手動控制器132之經識別姿勢之影響,藉此改善使用者體驗。在一項實施例中,在偵測到變形時,施加至EM姿勢資料之權重減小。在一特定實施例中,當經偵測變形之量值超過一臨限值時,施加至EM姿勢之權重經設定為零。
處理器107可依許多方式之任一者偵測EM場142中之變 形。例如,在一項實施例中,處理器107週期性地比較IMU姿勢資料與EM姿勢資料。若IMU姿勢資料與EM姿勢資料相差超過一臨限量,則處理器107判定EM場142中存在由(例如)在基於HMD之系統100的校準期間並不存在之一金屬物件所引起之變形。在另一實施例中,處理器107根據在計算中採用一或多個中間值之習知技術計算EM姿勢資料。此等中間值趨於隨變形而成比例地改變。因此,處理器107可基於此等中間值之變化(諸如基於該等中間值之一或多者是否超過一臨限值)而偵測EM變形。在另一實施例中,系統100包含產生環境之磁力讀數之一磁力計,且處理器107因此可基於該等磁力計讀數偵測EM場142中之可能變形。
圖2係繪示根據一些實施例之包含產生藉由一行動單元212使用之一EM場210之一基底單元202之一EM位置追蹤系統200的一方塊圖。EM位置追蹤系統200可用於如圖1中所描述之基於HMD之系統100之至少一實施例中。其他實施例可行且不受本發明限制。在以下實施例中,更詳細地說,基底單元202對應於圖1之HMD裝置102,而行動單元212對應於圖1之手動控制器132。根據一些實施例,EM位置追蹤系統200係用於判定行動單元212相對於基底單元202之姿勢。在至少一項實施例中,EM位置追蹤系統200包含用於AR或VR應用之一HMD(諸如圖1之HMD裝置102)。在圖2中,基底單元202包含一EM場發射器204、一功率放大器206及一第一處理器208。行動單元212包含一EM場接收器214、一信號放大器216、一第二處理器218及一IMU 220。基底單元202藉由一通信鏈路222建立與行動單元212之通信。通信鏈路222可為(但不限於):一無線網路鏈路、一RF無線電鏈路、一IR光鏈路或適用於如圖1中所描述之無線通信之其他商業上可購得方法。通信鏈路222容許基底單元202發送資料至 行動單元212及自行動單元212接收資料。該資料包含(但不限於)來自基底單元202或行動單元212之姿勢值、往返於基底單元202與行動單元212之經校正姿勢資料。
在本實施例中,基底單元202產生待藉由如藉由手動控制器132表示之行動單元212接收之EM場210。基底單元202包含一第一處理器208,該第一處理器208用以控制通信鏈路222且執行如藉由系統請求之用於EM位置追蹤系統200之其他外部元件之指令(諸如資料擷取、儲存、影像產生等)。行動單元212定位於EM場210內,其中藉由EM接收器214感測該場之相對量值。在表示手動控制器132之行動單元212在EM場210周圍及內部移動時,藉由EM接收器214產生一組EM場量值。在行動單元212改變在EM場210內之姿勢時,此等值在三維上之量值及方向兩者持續改變。行動單元212可包含用以對EM場量值執行計算以產生EM姿勢資料之一第二處理器218。替代性地,行動單元212可發送該等EM場量值至基底單元202以用於該處之運算。在又另一實施例中,基底單元202及行動單元212可共用如基於如在進行計算時所請求之處理器任務處理、分時程序或類似者所需或所指派之運算任務。
基底單元202定位於系統環境中之一已知位置處。在一或多項實施例中,基底單元202藉由採用感測器(未展示)來感測其自身位置及建立該位置為一基線位置而建立相對於環境之一位置。該等感測器可在基底單元202內部,或在替代實施例中,作為在系統啟動時對準及校準基底單元202至一已知姿勢之一外部對準程序或工具之部分。在本實施例中,功率放大器206自第一處理器208接收一發射信號且發送電力至EM場發射器204以用於產生EM場210。該發射信號使功率放大器206能夠開始 產生供行動單元212使用之EM場210。功率放大器206可定位於基底單元202內,或遠端地定位於EM位置追蹤系統200環境內。EM場發射器204可使用一個三軸線圈或其他裝置來產生一均勻三維EM場,該均勻三維EM場轉變成包含行動單元212之環境。
最初在系統啟動時校準基底單元202及行動單元212之姿勢值以考量藉由(但不限於)環境中所發現之金屬、基底單元202或其內組件中之金屬,或影響所產生之EM場210之均勻性之其他已知影響(包含建築材料、傢俱、燈具、電腦等)所引起之環境中之局部干擾。在一些實施例中,藉由將行動單元212放置於相對於基底單元202之一已知姿勢中及使EM位置追蹤系統200比較經量測姿勢值與預期姿勢值,以及應用一誤差校正程序以補償該兩個姿勢值之間的任何差值而完成初始校準。在此程序期間,將感測環境中之引起EM場210中之變形之任何金屬物件之影響且視需要調整姿勢值以滿足系統準確度臨限值。校準程序之結果係儲存於一查找表中或施加至一擬合函數以在系統啟動時定位基底單元202及行動單元212兩者時校正其等之姿勢資料。藉由使用此方法,識別及補償存在於環境中或附近之已知金屬。同時,在至少一些實施例中,第一處理器208或第二處理器218可儲存隨時間記錄之資料,包含(但不限於):姿勢資料、查找表資料、校準資料等,如本文中所描述。
行動單元212定位於EM場210內且使用EM接收器214來偵測EM場量值而感測遠離基底單元202一距離之EM場210之相對場量值,並產生姿勢值。在行動單元212內,EM場接收器214感測EM場210及識別發送至信號放大器216之EM量值。信號放大器216視需要增強EM量值以供第二處理器218使用。在至少一些實施例中,信號放大器216亦可用作 傳入EM量值之一電濾波器以進一步處理及調節EM量值以供第二處理器218使用。又,在至少一些實施例中,信號放大器216可用作傳入EM量值之一雜訊隔離濾波器及一位準移位裝置。第二處理器218接收EM量值且基於藉由行動單元212感測之EM場210量值而將該等EM量值轉換成一組姿勢值。基於EM場之該組姿勢值被稱為「EM姿勢值」。
行動單元212亦採用呈IMU 220之形式之用於判定姿勢之一第二感測單元。IMU 220定位於相對於行動單元212之一已知位移上或與該已知位移機械接觸以收集姿勢資料。IMU 220可包含(但不限於):一加速度計、一陀螺儀、一磁力計或其他慣性類型感測器或一GPS感測器。在本實施例中,IMU 220包含一加速度計及一陀螺儀。一旦經初始化,IMU 220便發送姿勢資料至第二處理器218。在至少一些應用中,IMU 220產生直接相容以供第二處理器218使用之IMU所產生之姿勢資料。此資料包含IMU所產生之姿勢資料或「IMU姿勢值」。在其他實施例中,來自IMU 220之IMU姿勢值可需要過濾及轉換以供第二處理器218使用。然而,在至少一些實施例中,IMU 220將IMU姿勢值直接提供至第二處理器218以用於偵測變形及判定行動單元212相對於基底單元202之IMU姿勢值。
在一些實施例中,採用IMU 220之一限制係陀螺儀中之「漂移」之特性。在未校正之情況下,該漂移產生資料之誤差。此外,該等誤差將隨時間累積且產生行動單元212之經量測姿勢與實際姿勢之間的一不斷增大之偏差。為維持IMU 220之準確度,第一處理器208可週期性地對準IMU 220之感測器,使得IMU姿勢匹配EM姿勢。最後,連接基底單元202與行動單元212之通信鏈路222係用於往返於基底單元202之第一 處理器208與行動單元212之第二處理器218發送信號以視需要交換姿勢資料,HMD、VR或AR系統所涉及的資料、對準信號等。
在一些實施例中,藉由行動單元212產生之信號(即,「EM姿勢資料」及「IMU姿勢資料」)可各包含由各種來源所引起之某一誤差,該等來源包含漂移、EM場210中之中斷、一不當進行之啟動序列、EM場210附近存在金屬物件或環境中之其他內部及外部影響。在至少一些實施例中,「EM姿勢」係準確的,而「IMU姿勢」係不準確的。替代性地,「IMU姿勢」係準確的,而「EM姿勢」係不準確的。又,兩個值皆可為不準確的,且出於相同或不同原因。因此,可需要偵測變形在其發生時之量值,及判定該變形之程度以確保EM位置追蹤系統200之最佳可能準確度。
在圖2之實施例中,藉由定位於行動單元212中之處理器218比較EM姿勢值與IMU姿勢值而完成變形之量值之偵測。可藉由在第一處理器208或第二處理器218之一者上操作之一程序而計算偵測。在一或多項實施例中,偵測程序係藉由第一處理器208執行如下:若兩個值(EM姿勢及IMU姿勢)係在彼此之一預定範圍內(例如,在2%內),則第一處理器208推斷變形之量值可忽略,環境中不存在影響讀數之金屬物件,且EM姿勢值係正確的。在此一案例中,第一處理器208使用一組標稱權重以對EM姿勢值及IMU姿勢值進行加權以判定用於行動單元212之姿勢之經校正值。然而,若EM姿勢值與IMU姿勢值之間存在大於一預定臨限值之一失配(或以其他方式偵測到EM場210中之變形),則第一處理器208或第二處理器218推斷EM場210係歸因於場中或附近之一未知金屬物件而變形。在此一案例中,第一處理器208或第二處理器218改變施加至EM姿 勢值及IMU姿勢值之權重。
圖3係繪示包含產生EM場210之一行動單元312及一基底單元302之一EM位置追蹤系統300的一方塊圖。EM位置追蹤系統300僅為如圖1中所描述之基於HMD之系統100之一實施例。其他實施例可行且不受本發明限制。圖3展示類似於圖2之一系統,但圖2繪示一基底單元202產生EM場210且藉由行動單元212接收,圖3繪示一替代環境,其中行動單元312產生EM場210且藉由基底單元302接收。在此實施例中,基底單元302採用一EM場接收器304、一信號放大器306及一第一處理器308。行動單元312包含一EM場發射器314、一功率放大器316、一第二處理器318及一IMU 320。
基底單元302定位於系統環境中之一已知位置處。在一或多項實施例中,基底單元302藉由採用感測器(未展示)來感測其自身位置及建立該位置為一基線位置而建立相對於行動單元312之一位置。該等感測器可在基底單元302內部,或在替代實施例中,作為在系統啟動時對準及校準基底單元302至一已知姿勢之一外部對準程序或工具之部分。在本實施例中,功率放大器316自第二處理器318接收一發射信號且發送電力至EM場發射器314以用於產生EM場210。該發射信號使功率放大器316能夠開始產生EM場210以供基底單元302使用。功率放大器316可定位於行動單元312內,或遠端地定位於EM位置追蹤系統300環境內。EM場發射器314可使用一個三軸線圈或其他裝置來產生一均勻三維EM場,該均勻三維EM場轉變成包含基底單元302之環境。
最初在系統啟動時校準基底單元302及行動單元312之姿勢值以考量藉由(但不限於)環境中所發現之金屬、基底單元302或其內組件 中之金屬,或影響所產生之EM場210之均勻性之其他已知影響(包含建築材料、傢俱、燈具、電腦等)所引起之環境中之局部干擾。在一些實施例中,藉由將行動單元312放置於相對於基底單元302之一已知姿勢中及使EM位置追蹤系統300比較經量測姿勢值與預期姿勢值,以及應用一誤差校正程序以補償該兩個姿勢值之間的任何差值而完成初始校準。在此程序期間,將感測環境中之引起EM場210中之變形之任何金屬物件之影響且視需要調整姿勢值以滿足系統準確度臨限值。校準程序之結果係儲存於一查找表中或施加至一擬合函數以在系統啟動時定位基底單元302及行動單元312兩者時校正其等之姿勢資料。藉由使用此方法,識別及補償存在於環境中或附近之已知金屬。同時,在至少一些實施例中,第一處理器308或第二處理器318可儲存隨時間記錄之資料,包含(但不限於):姿勢資料、查找表資料、校準資料等,如本文中所描述。
基底單元302定位於EM場210內且使用偵測EM場量值之感測器感測遠離行動單元312一距離之EM場210之相對場量值,並產生姿勢值。在基底單元302內,EM場接收器304感測EM場210及識別發送至信號放大器306之EM量值。信號放大器306視需要增強EM量值以供第一處理器308或第二處理器318使用。在至少一些實施例中,信號放大器306亦可用作傳入EM量值之一電濾波器以進一步處理及調節EM量值以供第一處理器308或第二處理器318使用。又,在至少一些實施例中,信號放大器306可用作傳入EM量值之一雜訊隔離濾波器及一位準移位裝置。第一處理器308或第二處理器318接收EM量值且基於藉由基底單元302感測之EM場210量值而將該等EM量值轉換成一組姿勢值。基於EM場之該組姿勢值被稱為「EM姿勢值」。
行動單元312亦採用呈IMU 320之形式之用於判定姿勢之一第二感測單元。IMU 320定位於相對於行動單元312之一已知位移上或與該已知位移機械接觸以收集姿勢資料。IMU 320可包含(但不限於):一加速度計、一陀螺儀、一磁力計或其他慣性類型感測器或一GPS感測器。在本實施例中,IMU 320包含一加速度計及一陀螺儀。一旦經初始化,IMU 320便發送姿勢資料至第二處理器318。在至少一些應用中,IMU 320產生直接相容以供第二處理器318使用之IMU所產生之姿勢資料。此資料包含IMU所產生之姿勢資料或「IMU姿勢值」。在其他實施例中,來自IMU 320之IMU姿勢值可需要過濾及轉換以供第二處理器318使用。然而,在本實施例中,IMU 320將IMU姿勢值直接提供至第二處理器318以用於偵測變形及判定行動單元312相對於基底單元302之經校正姿勢。
在至少一些實施例中,EM位置追蹤系統300係藉由如圖1中所描述之HMD系統100所表示,其中行動單元312藉由圖1之手動控制器132所表示。在本實施例中,行動單元312產生待藉由基底單元302接收之EM場210。在此實施例中,行動單元312包含一EM發射器314,該EM發射器314產生EM場210且藉由基底單元302處之EM接收器304接收。在行動單元312在EM場210內移動時,基底單元302接收對應於行動單元312相對於基底單元302之位置之變化量值。基底單元302中之EM接收器304基於源自於行動單元312之EM場210之相對量值而產生EM場量值且將此資料發送至信號放大器306及第一處理器308作為第一處理器308之一輸入以計算行動單元312之EM姿勢。替代性地,基底單元302可將EM場量值發送至行動單元312以在該處運用第二處理器318運算。在又另一實施例中,基底單元302及行動單元312可共用如基於如在進行計算時所請求之 處理器任務處理、分時程序或類似者所需或所指派之運算任務。
在一些實施例中,採用IMU 320之一限制係陀螺儀中之「漂移」之特性。在未校正之情況下,該漂移產生資料之誤差。此外,該等誤差將隨時間累積且產生基底單元302及行動單元312之經量測姿勢與實際姿勢之間的一不斷增大之偏差。最後,連接基底單元302與行動單元312之通信鏈路222係用於往返於基底單元302之第一處理器308與行動單元312之第二處理器318發送信號以視需要交換姿勢資料,HMD、VR或AR系統所涉及的資料、對準信號等。
在一些實施例中,藉由行動單元312產生之「IMU姿勢資料」信號及藉由基底單元302產生之「EM姿勢資料」信號可各包含由各種來源所引起之某一誤差,該等來源包含漂移、EM場210中之中斷、一不當進行之啟動序列、EM場210附近存在金屬物件或環境中之其他內部及外部影響。在至少一些實施例中,「EM姿勢」係準確的,而「IMU姿勢」係不準確的。替代性地,「IMU姿勢」係準確的,而「EM姿勢」係不準確的。又,兩個值皆可為不準確的,且出於相同或不同原因。因此,可需要偵測變形在其發生時之量值,及判定該變形之程度以確保EM位置追蹤系統300之最佳可能準確度。
在圖3之實施例中,藉由定位於行動單元312中之處理器318比較EM姿勢值與IMU姿勢值而完成變形之偵測。可藉由在第一處理器308或第二處理器318之一者上操作之一程序而計算偵測。在一或多項實施例中,偵測程序係藉由第一處理器308執行如下:若兩個值(EM姿勢及IMU姿勢)係在彼此之一預定範圍內(例如,在2%內),則第一處理器308推斷變形之量值可忽略,環境中不存在影響讀數之金屬物件,且EM姿勢 值係正確的。在此一案例中,第一處理器308施加一組標稱權重至EM姿勢值及IMU姿勢值且組合該等經加權值以判定經校正姿勢。然而,若EM姿勢值與IMU姿勢值之間存在大於一預定臨限值之一失配(或以其他方式偵測到變形),則第一處理器308推斷EM場210係歸因於場中或附近之一未知金屬物件而變形。在此一案例中,第一處理器308改變施加至EM姿勢值及IMU姿勢值之權重以增加IMU姿勢值對經校正姿勢之影響。
圖4A係繪示根據一些實施例之藉由圖2之一基底單元202產生之一個三維EM場(無變形)400的一圖式,其中圖2之一行動單元212定位於EM場400內部。在所繪示之實施例中,基底單元202產生一個三維球體EM場402以用於如上文圖2中所描述之EM位置追蹤系統200中。行動單元212定位於EM場402內,其中行動單元212感測該EM場且產生一系列EM量值以供行動單元212進一步分析。對於遠離EM場402之磁極404A、404B之一給定距離,場線實質上平行於彼此均勻彎曲,且沿著標記為A-B之垂直軸大致對稱。在此實施例中,不存在影響該等場線之對稱性或曲率之變形。又在此實施例中,如相較於IMU姿勢值,如圖2中所描述之所得EM姿勢值將不具有變形或誤差,且因此基於HMD之系統100將不校正或替換EM姿勢資料。代替性地,處理器318將使用EM姿勢資料作為行動單元212之正確姿勢資料。
在至少一些實施例中,如圖4A中所展示之EM場400環境可藉由圖1之一HMD系統100所表示。圖1之手動控制器132在圖4A中展示為在基底單元202產生EM場402時駐留於EM場內之行動單元212。在此實施例中,EM場線係均勻的,相對線性且同心的。此導致基於HMD之系統100產生準確且在相較於藉由行動單元212之IMU姿勢感測器產生之IMU 姿勢值時無變形之一EM姿勢值。因此,基底單元202或行動單元212中之第一處理器208或第二處理器218將唯一地僅基於EM姿勢值而計算一經校正姿勢值,且將不使用IMU姿勢值。此係藉由在如圖5中所描述之一計算程序中對EM姿勢值指派一加權值1.0及指派一加權值0.0至IMU姿勢值而完成。處理器208、218將接著使用經校正姿勢值以準確地判定手動控制器132之正確姿勢及基於手動控制器132之該正確姿勢產生適當影像以供HMD裝置102使用。
圖4B係繪示根據一些實施例之藉由一基底單元202產生之一個三維EM場(有變形)450的一圖式,其中一行動單元212及一金屬物件定位於EM場450內部。在此實施例中,一金屬物件(在此實例中,具有一金屬框架之一沙發454)已被放置於啟動時之圖2之EM位置追蹤系統200之初始校準之後之環境中且不利地影響一變形之EM場452。在變形之EM場452內存在沙發454產生場線之變形,從而導致一變形區域456。如相較於變形之EM場452之其他區域,變形區域456表現出變化之量值及非對稱場線。使用一EM位置追蹤系統(諸如圖2中所論述之EM位置追蹤系統200)量測行動單元212之姿勢之任何嘗試將有可能包含變形之讀數及所得量值,因此引入變形至該等值中。只要金屬物件在環境中,此變形便將導致不準確EM姿勢值。
在至少一些實施例中,如圖4B中所展示之EM場450環境可藉由圖1之一HMD系統100所表示。手動控制器132在圖4A中展示為在基底單元202產生EM場時駐留於EM場內之行動單元212。在此實施例中,EM場線在圍繞金屬物件454之一變形區域456中係變形及非同心的。此導致基於HMD之系統100產生不準確且並不匹配藉由行動單元212之IMU姿 勢感測器產生之IMU姿勢值或行動單元212之實際姿勢值之一EM姿勢值。第一處理器208或第二處理器218將比較該兩個姿勢值且判定在該兩個值在很大程度上不匹配時存在變形之量值。因此,行動單元212或基底單元202中之處理器將基於EM姿勢值及IMU姿勢值兩者而計算一經校正姿勢值。此係藉由在如圖5中所描述之一計算程序中對EM姿勢值及IMU姿勢值指派加權值而完成。處理器將接著使用經校正姿勢值以準確地判定手動控制器132之正確姿勢及基於手動控制器132之該正確姿勢產生適當影像以供HMD裝置102使用。
圖5係繪示根據一些實施例之使用一EM追蹤(無變形)500之圖1之HMD系統100的一系統方塊圖。EM位置追蹤系統500包含一基底單元502、一EM場504、一行動控制器506及一有線或無線網路通信頻道508。行動控制器506包含一EM場接收器510、一IMU 512、一控制器處理器514、EM姿勢值516及一IMU對準信號518。基底單元502產生EM場504同時行動控制器506在該場內移動。EM場接收器510自EM場504接收信號且將EM姿勢值516發送至控制器處理器514或基底單元502以供分析以計算EM姿勢值。在至少一些實施例中,資訊保留於行動控制器506內且藉由控制器處理器514處理。在本實施例中,控制器處理器514計算行動控制器506之姿勢。大致同時,IMU 512使用如圖2中所描述之陀螺儀及加速度計產生以IMU姿勢值之形式發送至控制器處理器514之姿勢資料。
控制器處理器514執行一系列步驟以計算發送至基底單元502或藉由控制器處理器514用於其他操作中之一最終「經校正姿勢」值。該等步驟包含:1).收集來自EM場接收器510之EM姿勢資料且儲存該資訊;2).收集來自IMU 512之IMU姿勢資料;3).計算EM姿勢值;4).計算 IMU姿勢值;5).偵測及量測存在之變形之量值;6).指派不同權重至該EM姿勢值及該IMU姿勢值;7).使用該等不同權重計算經校正姿勢值;及8).將該經校正姿勢值發送至一處理器以供進一步分析。在此實例中,在不存在或未偵測到變形時,EM姿勢值516唯一地用於計算行動控制器506之「經校正姿勢」,且忽略來自IMU之資料。此係藉由指派一權重1.0至EM姿勢值及指派一權重0.0至IMU姿勢值而完成。所得經校正姿勢值將唯一地計算自EM姿勢值。
藉由比較EM姿勢值與IMU姿勢值而完成變形偵測。若該兩個值係在彼此之一預定範圍內(例如,在2%內),則控制器處理器514推斷變形可忽略,環境中不存在影響讀數之金屬物件,且EM姿勢值係正確的。在此一案例中,控制器處理器514僅使用EM姿勢值來判定經校正值。然而,若EM姿勢值與IMU姿勢值之間存在大於一預定臨限值之一失配,則控制器處理器514推斷EM場504係歸因於場中或附近之一未知金屬物件而變形。在此一案例中,控制器處理器514藉由基於指派給各值之權重增大EM姿勢值與IMU姿勢值而計算經校正姿勢值。以下係基於經偵測變形改變施加至不同姿勢值之權重之一實例。
[POSECORRECTED]=WEIGHTEM *[POSEEM]+WEIGHTIMU *[POSEIMU] (等式1)
其中WEIGHTEM=0.0-1.0;WEIGHTIMU=0.0-1.0;及其中WEIGHTEM+WEIGHTIMU=1.0
實例1:其中WEIGHTEM=0.25 & WEIGHTIMU=0.75;POSECORRECTED=0.25 *[POSEEM]+0.75 *[POSEIMU]
圖6係繪示根據一些實施例之使用EM追蹤(有變形)600之圖1之HMD系統100的一系統方塊圖。此案例係類似於圖5中所論述之案 例,但歸因於EM場504中存在一金屬物件而存在變形。在本實施例中,該金屬物件係藉由含有影響EM場504之一金屬框架之一沙發602所表示。控制器處理器514執行相同步驟來處理來自EM場接收器510及IMU 512兩者之姿勢資料。然而,控制器處理器514偵測到變形且在上文步驟6中指派權重至EM姿勢資料516及IMU姿勢資料604。指派給各資料集之該等權重可由各種方法導出,包含(但不限於)兩個資料集之間的差值之量值、自首次偵測到變形以來之時間長度、自最後對準IMU 512以來之時間長度、指派一任意加權值等。指派加權值至資料集之其他方法可行且不受本文中所描述之論述限制。一旦已將權重指派至資料集,控制器處理器514便藉由執行步驟7(計算經校正姿勢值)及步驟8(將該經校正姿勢值發送至一處理器以供進一步分析)而繼續進行程序。
圖7係繪示根據一些實施例之使用一EM位置追蹤系統計算一行動單元700之定向之一方法的一流程圖。圖7揭示用於計算一裝置之定向之一程序,而圖8揭示用於計算一裝置(諸如如在圖1之EM位置追蹤系統100中所描述之圖1之一手動控制器132)之位置之一程序。定向程序700包含:在方塊702,行動單元212收集來自EM接收器之EM資料;在方塊704,一第一處理器208(定位於圖2之基底單元202中)或一第二處理器218(定位於圖2之行動單元212中)計算相對於環境之EM定向;在方塊706,第一處理器208或第二處理器218追蹤該EM定向;在方塊708,行動單元212收集來自IMU之加速度計及陀螺儀資料;在方塊710,第一處理器208或第二處理器218計算相對於一起始點之IMU定向;在方塊712,第一處理器208或第二處理器218追蹤該IMU定向;在方塊714,第一處理器208或第二處理器218判定是否存在變形;在方塊716,第一處理器208或第二處 理器218使用EM資料來判定經校正定向;及在方塊718,第一處理器208及第二處理器218使用一航位推算(dead reckoning)或一加權感測器融合程序來判定定向。
在方塊702,第一處理器208收集來自EM接收器之EM量值且將資料發送至信號放大器216(在圖2之行動單元212中)。該等EM量值亦流動至第二處理器218。接著,在方塊704,第一處理器208或第二處理器218接收該等EM量值且計算一「EM定向」值。在方塊706,第一處理器208或第二處理器218追蹤該EM定向且週期性地(例如,每10ms或每1ms,此取決於該應用所需之解析度)儲存該等值。同時,在產生及儲存EM定向值時,對源自於IMU 220之資料執行一類似程序。此外,在方塊710,第二處理器218計算來自定位於IMU 220內之陀螺儀之IMU定向值。第二處理器218接著使用該等IMU定向值來計算相對於一已知起始點之一IMU定向。接著在方塊712,第二處理器218追蹤該IMU定向且週期性地(例如,每10ms或每1ms,此取決於該應用所需之解析度)儲存該等值。
在決策方塊714,基底單元202之第一處理器208或行動單元212之第二處理器218接收EM定向值及IMU定向值兩者且對其等進行比較。若兩個值一致(例如,小於一預定臨限值之一差值),則第一處理器208或第二處理器218判定不存在變形。然而,若兩個值不一致(例如,大於一預定臨限值之一差值),則程序判定存在變形。接著,若第一處理器208或第二處理器218判定不存在變形,則在方塊716,第一處理器208或第二處理器218將EM定向重新標記為經校正定向且將該經校正定向傳送至系統以供進一步使用。在方塊716,若第一處理器208或第二處理器218 判定不存在變形,則處理器分別施加一組標稱指定權重至EM定向及IMU定向,且組合該等經加權值以判定單元之一經校正定向。
在決策方塊714,當第一處理器208或第二處理器218判定存在超出一預定臨限值之變形時,假定EM定向值出現誤差。在方塊718,第一處理器208或第二處理器218使用經調整權重分別對EM定向值及IMU定向值進行加權。在至少一項實施例中,處理器至少部分基於EM姿勢值與IMU姿勢值之間的差值之量值而判定該等經調整權重。在一些實施例中,處理器至少部分基於隨時間感測之變形之持續時間而判定該等經調整權重。
連續循環定向程序700以定期追蹤行動單元212相對於基底單元202之位置,如藉由一EM位置追蹤系統100中之手動控制器132所例示。該系統之解析度係藉由程序700之循環時間判定。在至少一些實施例中,一循環時間10ms可對應於1mm至2mm或更小之一解析度,但其他循環時間可行且不受此實例限制。對於使用手動控制器132、134或其他VR或AR裝置之應用,非常需要在1mm內且儘可能快地判定一裝置之位置以避免如透過HMD觀看之「波伏(choppy)」或階梯狀運動。
圖8係繪示根據一些實施例之使用一EM位置追蹤系統計算一行動單元800之位置之一方法的一流程圖。在至少一些實施例中,位置程序800包含使用如本文中所描述之一EM位置追蹤系統100中之一行動單元212。位置程序800包含在方塊802,使一第一處理器208(其定位於圖2之基底單元202中)或一第二處理器218(其定位於圖2之行動單元212中)第一處理器208或第二處理器218收集來自EM接收器之EM資料;在方塊804,使第一處理器208或第二處理器218計算相對於環境之EM位置;在 方塊806,使第一處理器208或第二處理器218追蹤該EM位置;在方塊808,使第一處理器208或第二處理器218收集來自IMU之加速度計資料;在方塊810,使第一處理器208或第二處理器218計算相對於一起始點之IMU位置;在方塊812,使第一處理器208或第二處理器218追蹤該IMU位置;在方塊814,使第一處理器208或第二處理器218判定是否存在變形;在方塊816,使第一處理器208或第二處理器218使用EM資料來判定經校正位置;及在方塊818,使第一處理器208或第二處理器218使用一航位推算或一加權融合程序來判定位置。圖8係與如圖7中所展示之計算一裝置之定向之程序相同,惟取代定向,程序追蹤一裝置(諸如如圖1之EM位置追蹤系統100中所描述之一HMD)之位置除外。又,取代IMU 220使用一陀螺儀來產生定向值,使用一加速度計來使用航位推算技術產生位置值。
在方塊802,第一處理器208收集來自EM接收器之EM量值且將資料發送至信號放大器216(在圖2之行動單元212中)。該等EM量值亦流動至第二處理器218。接著,在方塊804,第一處理器208或第二處理器218接收該等EM量值且計算一「EM位置」值。在方塊806,第一處理器208或第二處理器218追蹤該EM位置且週期性地(例如,每10ms或每1ms,此取決於該特定應用所需之解析度)儲存該等值。同時,在產生及儲存EM位置值時,對源自於IMU 220之資料執行一類似程序。在方塊810,對準行動單元212之IMU 220。此外,在方塊810,第二處理器218計算來自定位於IMU 220內之陀螺儀之IMU位置值。第二處理器218接著使用該等IMU位置值來計算相對於一已知起始點之一IMU位置。接著在方塊812,第二處理器218追蹤該IMU位置且週期性地(例如,每10ms或每1ms,此取決於該應用所需之解析度)儲存該等值。
在決策方塊814,基底單元202之第一處理器208或行動單元212之第二處理器218接收EM位置值及IMU位置值兩者且對其等進行比較。若兩個值一致(例如,小於一預定臨限值之一差值),則第一處理器208或第二處理器218判定不存在變形。然而,若兩個值不一致(例如,大於一預定臨限值之一差值),則程序判定存在變形。接著,若第一處理器208或第二處理器218判定不存在變形,則在方塊816,第一處理器208或第二處理器218分別施加標稱對應權重至EM位置值及IMU位置值,且組合該等經加權值以判定單元之一經校正位置。
在決策方塊814,當第一處理器208或第二處理器218判定存在超出一預定臨限值之變形時,假定EM位置值出現誤差。在方塊818,第一處理器208或第二處理器218調整施加至EM位置值及IMU位置值之權重以增加IMU位置值對經校正位置之影響。
在至少一項實施例中,處理器至少部分基於EM姿勢值與IMU姿勢值之間的差值之量值而計算經加權值。在一些實施例中,可自隨時間感測之變形之持續時間而計算該等經加權值。關於經加權值之額外細節係在圖5之論述中找到。連續循環位置程序800以定期追蹤行動單元212相對於基底單元202之位置,如藉由一EM位置追蹤系統100中之一HMD裝置102所例示。該系統之解析度係藉由程序800之循環時間判定。在至少一些實施例中,一循環時間10ms可對應於1mm至2mm或更小之一解析度,但其他循環時間可行且不受此實例限制。對於使用手動控制器132或其他VR或AR裝置之應用,非常需要在1mm內且儘可能快地判定一裝置之位置以避免如透過HMD觀看之「波伏」或階梯狀運動。
在一些實施例中,上文所描述之技術之特定態樣可藉由一 處理系統之一或多個處理器執行軟體而實施。該軟體包括儲存或以其他方式有形體現於一非暫時性電腦可讀儲存媒體上之一或多個可執行指令集。該軟體可包含在藉由該一或多個處理器執行時操縱該一或多個處理器以執行上文所描述之技術之一或多個態樣之指令及特定資料。該非暫時性電腦可讀儲存媒體可包含(例如):一磁碟或光碟儲存裝置、固態儲存裝置(諸如快閃記憶體)、一快取區、隨機存取記憶體(RAM)或(若干)其他非揮發性記憶體裝置及類似者。儲存於該非暫時性電腦可讀儲存媒體上之該等可執行指令可依源程式碼、組合語言程式碼、目標程式碼或藉由一或多個處理器解譯或以其他方式執行之其他指令格式。
一電腦可讀儲存媒體可包含在使用期間可藉由一電腦系統存取以提供指令及/或資料至該電腦系統之任何儲存媒體,或儲存媒體之組合。此等儲存媒體可包含(但不限於):光學媒體(例如,光碟(CD)、數位多功能光碟(DVD)、藍光光碟)、磁性媒體(例如,軟磁碟、磁帶或磁性硬碟機)、揮發性記憶體(例如,隨機存取記憶體(RAM)或快取區)、非揮發性記憶體(例如,唯讀記憶體(ROM)或快閃記憶體),或基於微機電系統(MEMS)之儲存媒體。電腦可讀儲存媒體可嵌入於運算系統中(例如,系統RAM或ROM),固定地附接至運算系統(例如,一磁性硬碟機)、可移除地附接至運算系統(例如,一光碟或基於通用串列匯流排(USB)之快閃記憶體),或經由一有線或無線網路耦合至電腦系統(例如,網路可存取儲存器(NAS))。
應注意,並非需要上文在概述中所描述之所有活動或元件,可能不需要一特定活動或裝置之一部分,且可執行一或多個進一步活動,或包含除所描述之元件以外之元件。又進一步,列舉活動之順序不一 定為執行該等活動之順序。又,已參考特定實施例描述概念。然而,一般技術者瞭解到,可在不脫離如下文發明申請專利範圍中所闡述之本發明之範疇的情況下做出各種修改及改變。因此,本說明書及圖應被視為一闡釋性意義而非一限制性意義,且所有此等修改旨在包含於本發明之範疇內。
上文已描述關於特定實施例之益處、其他優點及問題之解決方案。然而,該等益處、優點、問題之解決方案及可引起任何益處、優點或解決方案發生或變得更加明顯之(若干)任何特徵不應被解釋為任何或所有發明申請專利範圍之一關鍵、所需或重要特徵。此外,上文揭示之特定實施例僅係闡釋性的,此係因為所揭示之標的可依受益於本文中之教示之熟習技術者明白之不同但等效方式修改及實踐。並不意欲受限於本文中所展示之構造或設計之細節,如下文發明申請專利範圍中所描述除外。因此顯然上文所揭示之特定實施例可經更改或修改且所有此等變動被視為在所揭示之標的之範疇內。因此,本文中尋求之保護係如下文發明申請專利範圍中所闡述。
100:頭戴式顯示(HMD)系統/基於頭戴式顯示(HMD)之系統/系統/電磁(EM)位置追蹤系統
102:頭戴式顯示(HMD)裝置
104:處理器
105:同步定位及地圖測繪(SLAM)模組
107:處理器
114:慣性量測單元(IMU)
122:通信鏈路
132:手動控制器
140:電磁(EM)場發射器/發射器
141:電磁(EM)場接收器/接收器
142:電磁(EM)場

Claims (20)

  1. 一種位置追蹤方法,其包括:接收指示一發射器相對於一接收器之一第一姿勢之EM場量值;自與該接收器及該發射器之一者相關聯之一第一姿勢感測器接收感測器資料,該感測器資料指示該第一姿勢;回應於偵測到該EM場之變形,基於該等EM場量值與該感測器資料之一組合計算一經校正姿勢;及將該經校正姿勢發送至一處理器。
  2. 如請求項1之位置追蹤方法,其中一基底單元包括該發射器。
  3. 如請求項2之位置追蹤方法,其中該基底單元包括一頭戴式顯示裝置。
  4. 如請求項1之位置追蹤方法,其中一行動單元包括該發射器。
  5. 如請求項1之位置追蹤方法,其中一基底單元包括該接收器。
  6. 如請求項1之位置追蹤方法,其中一行動單元包括該接收器。
  7. 如請求項1之位置追蹤方法,其中計算一經校正姿勢包括:改變施加至基於該等EM場量值產生之一EM姿勢;及基於該感測器資料產生之一感 測器姿勢之權重。
  8. 如請求項1之位置追蹤方法,其進一步包括基於藉由該等EM場量值及該感測器資料指示之姿勢之差值而偵測變形。
  9. 如請求項1之位置追蹤方法,其中該第一姿勢感測器包括一陀螺儀及一加速度計之至少一者。
  10. 一種位置追蹤方法,其包括:基於EM場量值計算一行動單元相對於一基底單元之一第一姿勢;基於來自與該行動單元相關聯之一第一姿勢感測器之感測器資料計算該行動單元相對於該基底單元之一第二姿勢,偵測該EM場之變形;基於該經偵測變形、該第一姿勢及該第二姿勢計算一經校正姿勢;及將該經校正姿勢發送至一處理器。
  11. 如請求項10之位置追蹤方法,其中該行動單元係與一頭戴式顯示系統相關聯之一控制器。
  12. 如請求項10之位置追蹤方法,其中計算一經校正姿勢包括:指派一組第一權重至該第一姿勢;及指派一組第二權重至該第二姿勢。
  13. 一種位置追蹤系統,其包括:一基底單元,其位於一電磁(EM)場內;一行動單元,其定位於該EM場內;一EM發射器,其產生該EM場;一EM接收器,其感測對應於該行動單元相對於該基底單元之姿勢之EM場量值,其中產生該行動單元相對於該基底單元之一第一姿勢;一第一姿勢感測器,其與該行動單元相關聯,其產生該行動單元之姿勢值且產生該行動單元之一第二姿勢;及一處理器,其用於運算估計該EM場中之EM變形之存在之一指標。
  14. 如請求項13之位置追蹤系統,其中該行動單元含有該EM接收器。
  15. 如請求項13之位置追蹤系統,其中該行動單元含有該EM發射器。
  16. 如請求項13之位置追蹤系統,其中該基底單元包括該EM接收器。
  17. 如請求項13之位置追蹤系統,其中該基底單元包括該EM發射器。
  18. 如請求項13之位置追蹤系統,其中該行動單元係與一頭戴式顯示系統相關聯之一控制器。
  19. 如請求項13之位置追蹤系統,其中該基底單元係一行動裝置。
  20. 如請求項13之位置追蹤系統,其中該第一姿勢感測器包含一陀螺儀及一加速度計之一者。
TW107121674A 2017-09-18 2018-06-25 位置追蹤系統及方法 TWI691731B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/707,995 2017-09-18
US15/707,995 US10746819B2 (en) 2017-09-18 2017-09-18 Correcting field distortion in electromagnetic position tracking systems

Publications (2)

Publication Number Publication Date
TW201915510A TW201915510A (zh) 2019-04-16
TWI691731B true TWI691731B (zh) 2020-04-21

Family

ID=63036518

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107121674A TWI691731B (zh) 2017-09-18 2018-06-25 位置追蹤系統及方法

Country Status (3)

Country Link
US (1) US10746819B2 (zh)
TW (1) TWI691731B (zh)
WO (1) WO2019055113A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10830572B2 (en) 2017-10-12 2020-11-10 Google Llc Hemisphere ambiguity correction in electromagnetic position tracking systems
CA3031276A1 (en) * 2018-02-08 2019-08-08 Ascension Technology Corporation Compensating for distortion in an electromagnetic tracking system
WO2020086356A2 (en) * 2018-10-26 2020-04-30 Magic Leap, Inc. Ambient electromagnetic distortion correction for electromagnetic tracking
DE102020109121A1 (de) * 2019-04-02 2020-10-08 Ascension Technology Corporation Korrektur von Verzerrungen
CN112753006B (zh) * 2019-04-12 2024-06-07 谷歌有限责任公司 电磁跟踪的三维空中鼠标
US11719850B2 (en) * 2019-06-20 2023-08-08 Sony Interactive Entertainment Inc. Detecting and compensating for magnetic interference in electromagnetic (EM) positional tracking
US11762000B1 (en) * 2022-06-16 2023-09-19 Penumbra, Inc. Distortion/interference measurement device for virtual reality environments

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050096883A1 (en) * 2003-04-03 2005-05-05 Gordon Pacey Buried line locator with integral position sensing
US7640106B1 (en) * 2005-03-24 2009-12-29 Elbit Systems Ltd. Hybrid tracker
US20100168556A1 (en) * 2006-03-31 2010-07-01 Koninklijke Philips Electronics N.V. System for local error compensation in electromagnetic tracking systems
TW201200101A (en) * 2010-03-11 2012-01-01 Koninkl Philips Electronics Nv Method and system for characterizing and visualizing electromagnetic tracking errors
TWI512548B (zh) * 2011-08-04 2015-12-11 Univ Nat Cheng Kung 移動軌跡產生方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4394831A (en) * 1981-02-12 1983-07-26 Honeywell Inc. Helmet metal mass compensation for helmet-mounted sighting system
US4945305A (en) * 1986-10-09 1990-07-31 Ascension Technology Corporation Device for quantitatively measuring the relative position and orientation of two bodies in the presence of metals utilizing direct current magnetic fields
FR2734900B1 (fr) * 1995-06-01 1997-07-04 Sextant Avionique Procede de determination de la position et de l'orientation d'un systeme mobile, notamment de la ligne de visee dans un viseur de casque
US6577976B1 (en) * 1999-09-17 2003-06-10 Hrl Laboratories, Llc Method for dynamic autocalibration of a multi-sensor tracking system and apparatus incorporating it therein
US6493573B1 (en) * 1999-10-28 2002-12-10 Winchester Development Associates Method and system for navigating a catheter probe in the presence of field-influencing objects
US6369564B1 (en) * 1999-11-01 2002-04-09 Polhemus, Inc. Electromagnetic position and orientation tracking system with distortion compensation employing wireless sensors
US7162367B2 (en) * 1999-11-29 2007-01-09 American Gnc Corporation Self-contained/interruption-free positioning method and system thereof
US7346995B2 (en) * 2003-04-30 2008-03-25 Johnson Controls Technology Company System and method for compensating for magnetic disturbance of a compass by a moveable vehicle accessory
US7292948B2 (en) * 2004-04-30 2007-11-06 Alken Inc. Magnetic position and orientation measurement system with eddy current distortion compensation
US8131342B2 (en) * 2004-08-24 2012-03-06 General Electric Company Method and system for field mapping using integral methodology
US7912662B2 (en) * 2007-09-24 2011-03-22 General Electric Company System and method for improving the distortion tolerance of an electromagnetic tracking system
JP5423023B2 (ja) * 2009-02-06 2014-02-19 富士ゼロックス株式会社 物体検知装置
FR2954522B1 (fr) * 2009-12-22 2012-03-09 Commissariat Energie Atomique Procede et dispositif d?identification d'un sous-ensemble de mesures, procede et systeme de localisation d?un objet, support d?enregistrement pour ces procedes
US8854282B1 (en) * 2011-09-06 2014-10-07 Google Inc. Measurement method
US9141194B1 (en) * 2012-01-04 2015-09-22 Google Inc. Magnetometer-based gesture sensing with a wearable device
US9459124B2 (en) * 2012-03-12 2016-10-04 Sixense Entertainment, Inc. Electromagnetic tracker (AC) with extended range and distortion compensation capabilities employing multiple transmitters
WO2015021122A1 (en) * 2013-08-06 2015-02-12 Yei Corporation Sensor devices and methods for calculating an orientation while accounting for magnetic interference
FR3012888B1 (fr) * 2013-11-06 2015-12-25 Jean Louis Lescourret Systeme magnetique hybride inertiel de determination de la position et l'orientation d'un corps mobile
US20150149104A1 (en) * 2013-11-22 2015-05-28 John Baker Motion Tracking Solutions Using a Self Correcting Three Sensor Architecture
CA2919901A1 (en) * 2015-02-04 2016-08-04 Hossein Sadjadi Methods and apparatus for improved electromagnetic tracking and localization
US10379172B2 (en) * 2015-06-05 2019-08-13 Irobot Corporation Magnetic field localization and navigation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050096883A1 (en) * 2003-04-03 2005-05-05 Gordon Pacey Buried line locator with integral position sensing
US7640106B1 (en) * 2005-03-24 2009-12-29 Elbit Systems Ltd. Hybrid tracker
US20100168556A1 (en) * 2006-03-31 2010-07-01 Koninklijke Philips Electronics N.V. System for local error compensation in electromagnetic tracking systems
TW201200101A (en) * 2010-03-11 2012-01-01 Koninkl Philips Electronics Nv Method and system for characterizing and visualizing electromagnetic tracking errors
TWI512548B (zh) * 2011-08-04 2015-12-11 Univ Nat Cheng Kung 移動軌跡產生方法

Also Published As

Publication number Publication date
TW201915510A (zh) 2019-04-16
US10746819B2 (en) 2020-08-18
WO2019055113A1 (en) 2019-03-21
US20190086482A1 (en) 2019-03-21

Similar Documents

Publication Publication Date Title
TWI691731B (zh) 位置追蹤系統及方法
US11360161B2 (en) Compensating for distortion in an electromagnetic tracking system
JP5930451B2 (ja) ジャイロスコープの調整およびジャイロカメラのアライメント
EP3491334B1 (en) Method and system for calibrating components of an inertial measurement unit (imu) using scene-captured data
CN111149002B (zh) 用于校准磁力计的方法
CN111201720B (zh) 电磁位置跟踪系统中的半球模糊校正
US9927237B2 (en) Information processing apparatus, information processing method, and recording medium
CN104884902B (zh) 用于三轴磁力计和三轴加速度计的数据融合的方法和装置
CN103941309B (zh) 地磁传感器校准设备及其方法
CN104737205B (zh) 自适应尺度及/或重力估计
US20130185018A1 (en) Apparatuses and Methods for Estimating the Yaw Angle of a Device in a Gravitational Reference System Using Measurements of Motion Sensors and a Magnetometer Attached to the Device
US9228842B2 (en) System and method for determining a uniform external magnetic field
US20140129176A1 (en) Estimating the gravity vector in a world coordinate system using an accelerometer in a mobile device
TWI555994B (zh) 磁性感測器的動態校準技術
US11187823B2 (en) Correcting distortions
US11620846B2 (en) Data processing method for multi-sensor fusion, positioning apparatus and virtual reality device
KR20220004345A (ko) 자기 센서를 포함하는 전자 장치 및 자기 검출 방법
JP5190134B2 (ja) 角速度検出方法及びその装置
KR20210009063A (ko) 전자 장치 및 그의 이동 거리 보정 방법