CN116113911A - 利用到达角数据的设备追踪 - Google Patents
利用到达角数据的设备追踪 Download PDFInfo
- Publication number
- CN116113911A CN116113911A CN202080105193.0A CN202080105193A CN116113911A CN 116113911 A CN116113911 A CN 116113911A CN 202080105193 A CN202080105193 A CN 202080105193A CN 116113911 A CN116113911 A CN 116113911A
- Authority
- CN
- China
- Prior art keywords
- data
- hwd
- aoa
- pose
- inertial
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 45
- 238000010801 machine learning Methods 0.000 claims abstract description 9
- 238000005259 measurement Methods 0.000 claims abstract description 8
- 230000003190 augmentative effect Effects 0.000 claims abstract description 7
- 230000004927 fusion Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 12
- 239000002245 particle Substances 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000010354 integration Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 9
- 238000013519 translation Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000001537 neural effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000004883 computer application Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0257—Hybrid positioning
- G01S5/0258—Hybrid positioning by combining or switching between measurements derived from different systems
- G01S5/02585—Hybrid positioning by combining or switching between measurements derived from different systems at least one of the measurements being a non-radio measurement
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0278—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves involving statistical or probabilistic considerations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0294—Trajectory determination or predictive filtering, e.g. target tracking or Kalman filtering
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/0093—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
- G02B27/0172—Head mounted characterised by optical features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
- G06F1/1694—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/014—Hand-worn input/output arrangements, e.g. data gloves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/014—Head-up displays characterised by optical features comprising information/image processing systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2200/00—Indexing scheme relating to G06F1/04 - G06F1/32
- G06F2200/16—Indexing scheme relating to G06F1/16 - G06F1/18
- G06F2200/163—Indexing scheme relating to constructional details of the computer
- G06F2200/1637—Sensing arrangement for detection of housing movement or orientation, e.g. for controlling scrolling or cursor movement on the display of an handheld computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Optics & Photonics (AREA)
- Probability & Statistics with Applications (AREA)
- User Interface Of Digital Computer (AREA)
- Navigation (AREA)
Abstract
诸如头戴式显示器(HWD)的可穿戴设备基于由例如超宽带(UWB)定位模块生成的到达角(AOA)数据和由惯性测量单元(IMU)生成的惯性数据的组合来识别设备姿态。HWD使用诸如随机估计(例如卡尔曼滤波器)、机器学习模型等中的一个或多个或其任意组合的数据集成技术将AOA数据与惯性数据融合。与HWD相关联的计算机设备可以采用融合的数据来识别HWD的姿态(例如,六自由度(6DoF)姿态),并且可以使用所识别的姿态来修改由计算机设备实现的虚拟现实或增强现实内容,从而为用户提供沉浸式和愉快的体验。
Description
背景技术
为了提供更身临其境和令人愉快的用户体验,一些计算机系统采用可穿戴设备作为用户接口的一部分。例如,一些计算机系统采用头戴式或头带式设备来显示信息,以及使用一个或多个可穿戴设备(例如,戒指、手镯或手表)来提供来自用户的输入信息。这些系统中的许多依赖于姿态追踪来确定输入信息、要显示的信息或其组合。因此,准确可靠的姿态追踪可以带来更身临其境和令人愉快的用户体验。然而,常规的姿态追踪系统可能需要相对大量的计算资源、相对庞大或不灵活的追踪装置或其组合。这些常规系统消耗大量电力,并且可能需要特殊的装置设置,诸如对于采用用计算机系统外部的一个或多个相机的光学追踪系统。
发明内容
所提出的解决方案特别涉及一种方法,该方法包括:基于接收到的信号的到达角来确定——或生成——到达角(AOA)数据;以及,基于AOA数据识别头戴式显示器(HWD)和可穿戴设备之间的相对姿态。识别头戴式显示器(HWD)和可穿戴设备之间的相对姿态可以涉及识别HWD相对于可穿戴设备的位置和/或取向。
在示例性实施例中,HWD和可穿戴设备都包括至少一个信号发射器和至少一个信号接收器。例如,HWD和/或可穿戴设备包括用于发送和接收信号的至少一个收发器。例如,在一些实施例中,HWD的接收器或收发器包括多个天线,其中,多个天线中的每一个接收来自可穿戴设备的信号,诸如标签信号。HWD的至少一个处理器——其例如是HWD处的信号模块的一部分——然后可以识别接收信号之间的相位差,并基于所识别的相位差来识别信号的AOA。
AOA数据可以包括表示信号的水平到达角的第一角度和表示信号的垂直到达角的第二角度中的至少一个。第一角度和第二角度可以分别与a)基于相位差计算并且指示接收到的信号从发射器行进到接收器所沿的方向的矢量和b)水平轴或垂直轴之间的角度相关。
在一些实施例中,确定/生成AOA数据还包括确定HWD和可穿戴设备之间的距离或范围。确定HWD和可穿戴设备之间的距离可以包括测量从HWD向可穿戴设备发送第一信号和在HWD处从可穿戴设备接收第二信号(响应信号)之间的时间差。例如,第一信号可以是锚信号,而响应信号可以是标签信号。响应信号也可用于确定AOA。在任何示例性实施例中,基于交换的信号来确定往返路程时间(RTT)。例如,HWD向可穿戴设备的收发器发送诸如UWD信号的第一信号,并记录第一信号的发送时间。响应于接收到第一信号,可穿戴设备等待指定的时间量,并且然后向HWD发送响应信号。响应于接收到响应信号,HWD确定信号接收时间,并且基于第一信号发送时间和响应信号接收时间之间的差,确定可穿戴设备和HWD之间的距离。生成HWD的姿态数据—称为AOA数据或AOA姿态数据—然后例如还可以包括使用响应信号的AOA和在HWD与可穿戴设备之间的确定的距离。
在示例性实施例中,该方法还可以包括从HWD的惯性测量单元(IMU)接收惯性数据,其中,识别相对姿态包括基于惯性数据识别相对姿态。因此,为了识别HWD和可穿戴设备之间的相对姿态,考虑了来自HWD的IMU的测量。IMU可以包括一个或多个加速计、陀螺仪和磁强计或者它们的任意组合,它们生成指示HWD的特定力、角速率和取向中的一个或多个或者它们任意组合的电子信号。基于这些电子信号,IMU可以指示HWD的惯性姿态。在一些实施例中,IMU指示与HWD相关联的三维(3-D)旋转参考系(例如,俯仰、滚转和偏航)中的惯性姿态。在其他实施例中,IMU指示与HWD相关联的3D平移参考系(例如,沿着笛卡尔框架的x、y和z轴)中的惯性姿态。在其他实施例中,IMU指示旋转和平移参考系中的惯性姿态,从而指示HWD的六自由度(6DoF)姿态。
在示例性实施例中,可以通过将AOA数据与惯性数据融合来生成融合姿态数据,其中,识别相对姿态包括基于融合姿态数据来识别相对姿态。在此场境(context)中,将AOA数据与惯性数据融合可以涉及使用AOA数据和惯性数据二者作为随机估计过程的输入,该随机估计过程是由HWD的一个或多个处理器或连接到HWD的另一设备执行的,并且基于该随机估计过程估计HWD相对于可穿戴设备的姿态。由融合姿态数据指示HWD相对于可穿戴设备的估计姿态。融合姿态数据可以由至少一个处理器进一步处理,以例如用于修改要由HWD显示给用户的增强现实(AR)或虚拟现实(VR)内容。
随机估计过程可以例如包括卡尔曼滤波器、粒子滤波器、加权最小二乘束调整(bundle adjustment)和/或其组合。在此场境中的加权最小二乘束调整可涉及最小化观测姿态数据和投影姿态数据之间的均方距离。
附加地或替代地,将AOA数据与惯性数据融合可以包括基于机器学习模型将AOA信息与惯性数据进行融合。例如,可以使用卷积神经引擎,其利用在每个空间维度中观察到的每个数据(即,AOA数据和IMU数据)的时间相关性。
基于其确定AOA的信号可以是超宽带(UWB)信号。因此,生成AOA数据可以基于由HWD接收的发送的UWB信号(例如,来自可穿戴设备)。
所提出的方案还涉及一种计算机系统,包括:头戴式显示器(HWD),其被配置为基于接收到的信号的到达角来确定到达角(AOA)数据;以及,处理器,其被配置为基于AOA数据来识别HWD和可穿戴设备之间的相对姿态。
所提出的方案还涉及一种头戴式显示器(HWD),其通过确定在HWD处接收的信号的到达角(AOA)来识别相对于可穿戴设备的姿态。例如,如上所述,HWD可以包括包含多个天线的接收器或收发器,其中,多个天线中的每一个接收来自可穿戴设备的信号,诸如标签信号。HWD的至少一个处理器——其例如是HWD处的信号模块的一部分——然后可以识别在接收信号之间的相位差,并基于所识别的相位差来识别信号的AOA。
在示例性实施例中,HWD基于以下的组合来识别姿态:基于AOA生成的AOA数据和由惯性测量单元(IMU)生成的惯性数据。HWD可以使用诸如随机估计(例如卡尔曼滤波器)、机器学习模型等中的一个或多个或其任意组合的数据集成技术将AOA数据与惯性数据融合。与HWD相关联的计算机设备可以采用融合的数据来识别HWD的姿态(例如,六自由度(6DoF)姿态),并且可以使用所识别的姿态来修改由计算机设备实现的虚拟现实或增强现实内容,从而为使用HWD的用户提供沉浸式和令人愉快的体验。
所提出的计算机系统和所提出的HWD可以被配置为实现所提出的方法的实施例。因此,在使用所提出的方法的实施例的场境中讨论的特征也应适用于所提出的计算机系统和所提出的HWD的实施例,反之亦然。
附图说明
通过参考附图,可以更好地理解本公开,并且使得本公开的许多特征和优点对于本领域技术人员显而易见。在各附图中使用相同的附图标记指示相似或相同的项目。
图1是根据一些实施例的计算机系统的图,该计算机系统采用使用集成到达角(AOA)和惯性数据的、对可穿戴设备的姿态追踪。
图2是根据一些实施例的图1的计算机系统的头戴式显示器的框图,该计算机系统集成了AOA和惯性数据以用于姿态追踪。
图3是根据一些实施例的图2的数据融合模块的框图,该数据融合模块融合AOA和惯性数据以用于姿态追踪。
图4是根据一些实施例的采用至少两个AOA追踪模块用于姿态追踪的计算机系统的图。
图5是根据一些实施例的采用至少两个AOA追踪模块用于姿态追踪的计算机系统的图。
图6是根据一些实施例的图1的计算机系统的框图。
具体实施方式
图1至6示出了用于基于由例如超宽带(UWB)定位模块生成的到达角(AOA)数据和由惯性测量单元(IMU)生成的惯性数据的组合来识别诸如头戴式显示器(HWD)的可穿戴设备的姿态的技术。HWD使用诸如随机估计(例如卡尔曼滤波器)、机器学习模型等中的一个或多个或其任意组合的数据集成技术将AOA数据与惯性数据融合。与HWD相关联的计算机设备可以采用融合的数据来识别HWD的姿态(例如,六自由度(6DoF)姿态),并且可以使用所识别的姿态来修改由计算机设备实现的虚拟现实或增强现实内容,从而为用户提供沉浸式和令人愉快的体验。此外,HWD可以基于融合数据生成姿态数据,同时消耗相对少的电力,同时仍然确保相对准确的姿态数据,从而改善HWD的总体用户体验。
为了说明,由诸如UWB或WIFI接口的无线接口提供的AOA数据可以用于确定HWD或其他设备在三维中的姿态,并且通常经历低漂移,从而数据随着时间是可靠的。然而,AOA数据通常只有在无线电发射器和接收器之间存在视距(LOS)时才可靠,并且数据的准确性受到信号噪声的影响。此外,在高动态运动的情况下,AOA数据可能具有降低的可靠性。相反,惯性数据可用于确定在六维中的HWD姿态,不受LOS或信号噪声问题的影响,并且即使在高动态运动的情况下也能提供准确的姿态数据。然而,由于IMU偏差和其他固有误差,惯性数据的准确性随时间衰减或漂移。通过融合惯性数据和AOA数据,HWD或其他设备可以在更广泛的条件下准确识别设备姿态,提高设备灵活性。此外,可以使用随机估计、机器学习模型或需要相对低计算开销的其他技术来融合惯性和AOA数据,从而减少在HWD或其他设备处的功耗。
在一些实施例中,计算机系统采用显示设备,诸如HWD和可穿戴输入设备,诸如戒指、手镯或手表,并使用融合的AOA和惯性姿态数据确定显示设备和输入设备之间的相对姿态。计算机系统可以采用相对姿态数据来识别用户输入信息,并且基于输入信息来修改系统的一个或多个方面,诸如发起或终止软件程序的执行、改变虚拟或增强现实环境的一个或者多个方面等。
图1示出了包括HWD 102和可穿戴输入设备104的计算机系统100。在所示示例中,HWD 100是具有与眼镜基本相似的形状因子的双目设备。在一些实施例中,HWD 100包括共同支持代表计算机系统100向用户显示信息的光学和电子组件。例如,在一些实施例中,HWD100包括基于所提供的图像信息生成显示光的微显示器或其他显示模块。在各种实施例中,由计算机系统100的图形处理单元(GPU)(未示出)基于由在例如一个或多个中央处理单元(CPU,未示出)处执行的一个或多个计算机程序生成的图像信息来生成图像信息。显示模块将显示光提供给一个或多个光学部件,诸如一个或多个光导、反射镜、分束器、偏振器、组合器、透镜等,它们一起将图像光引导到HWD 100的显示区域105。在所描绘的示例中,HWD包括两个透镜,每个透镜对应于用户的不同眼睛,每个透镜具有显示光所导向的对应显示区域105。此外,在一些实施例中,计算机系统100向每个显示区域105提供不同的显示光,从而向用户的每只眼睛提供不同的信息。这允许计算机系统105支持不同的视觉效果,诸如立体效果。
如上所述,可穿戴输入设备104是戒指、手镯、手表或具有可穿戴形状因子的其他电子设备。为了描述的目的,假设可穿戴输入设备104是戒指。可穿戴输入设备104包括电子组件,这些电子组件一起被配置为基于用户与可穿戴输入设备104的交互向计算机系统100提供输入信息。例如,在一些实施例中,可穿戴输入设备104包括一个或多个按钮、触摸屏、开关、操纵杆、运动检测器或可由用户操纵以提供输入信息的其他输入组件。可穿戴输入设备104还包括一个或多个无线接口,诸如WiFi接口、接口等,以将输入信息传送到计算机系统100的处理器(未示出)或其他组件。
在一些实施例中,计算机系统100通常被配置为识别HWD 102和可穿戴输入设备104之间的相对姿态。计算机系统100可以采用相对姿态来识别来自用户的用户输入信息。例如,计算机系统100可以基于HWD 102和可穿戴输入设备104之间的距离、可穿戴输入设备102相对于与HWD 102相关联的平面的相对角度、HWD 102和可穿戴输入设备的中心之间的矢量的方向等或其任何组合来识别用户输入信息。例如,在一些实施例中,如果用户将可穿戴输入设备104保持在与HWD 102的指定接近度并且在HWD 104的指定侧(例如,在左侧),则计算机系统100确定用户正在请求发起指定程序(例如,电子邮件程序)。可替换地,如果用户将可穿戴输入设备104保持在HWD 102的指定接近度并且在HWD的不同指定侧(例如,在右侧),则计算机系统100确定用户正在请求发起不同的指定程序(例如,聊天程序)。
为了确定HWD 102和可穿戴输入设备104之间的相对姿态,计算机系统100采用惯性数据和AOA数据的融合组合。为了生成惯性数据,计算机系统100包括安装在HWD 102的框架中的惯性测量单元(IMU)108。IMU 108是包括一个或多个加速计、陀螺仪和磁强计或其任何组合的模块,它们生成指示HWD 102的特定力、角速率和取向中的一个或多个或其任何组合的电子信号。基于这些电子信号,IMU 108指示HWD 102的惯性姿态。在一些实施例中,IMU108指示与HWD 102相关联的三维(3-D)旋转参考系(例如,俯仰、滚转和偏航)中的惯性姿态。在其他实施例中,IMU 108指示与HWD 102相关联的3D平移参考系(例如,沿着笛卡尔框架的x、y和z轴)中的惯性姿态。在另一些其他实施例中,IMU 108指示旋转和平移参考系两者中的惯性姿态,从而指示HWD 102的6DoF姿态。
为了生成AOA数据,计算机系统100包括至少部分地安装在HWD102的框架之处或之上的超宽带(UWB)模块106。UWB模块106通常被配置为采用UWB信号来确定HWD 102和可穿戴设备104之间的范围或距离,以及由可穿戴设备104传送并在UWB模块106处接收的信号的到达角。为了说明,在一些实施例中,UWB模块106和可穿戴设备104各自包括被配置为发射和接收UWB信号的UWB收发器,其中,每个UWB收发器包括多个天线。
为了确定UWB模块106和可穿戴设备104之间的距离或范围,UWB收发器通过交换指定信号来采用握手过程,并且UWB模块基于交换的信号来确定往返路程时间(RTT)。例如,UWB模块106将称为锚信号的UWB信号发送到可穿戴设备104的收发器,并记录锚信号的发送时间。响应于接收到锚信号,可穿戴设备104等待指定的时间量,然后将响应UWB信号(称为标签信号)发送到UWB模块106。响应于接收到标签信号,UWB模块确定信号接收时间,并且基于锚信号发送时间和标签信号接收时间之间的差,确定可穿戴设备104和HWD 102之间的距离。
此外,UWB模块106确定所接收标签信号的AOA。例如,在一些实施例中,UWB模块106的UWB收发器包括多个天线,并且多个天线中的每一个接收标签信号。UWB模块106识别接收信号之间的相位差,并基于所识别的相位差来识别标签信号的AOA。UWB模块106然后基于标签信号的AOA和HWD 102与可穿戴设备104之间的距离来识别HWD 102的姿态数据,称为AOA数据或AOA姿态数据。
例如,在图1所描绘的实施例中,UWB模块106包括位于HWD 102的太阳穴位置的单个天线,且因此仅确定HWD 102和可穿戴设备104之间的距离。UWB模块106使用距离r来生成HWD 102在沿着单个轴的平移参考系中的相对姿态。在以下参照图4和图5描述的其他实施例中,HWD 102包括在不同位置的多个HWD天线,且因此UWB模块106可以确定到达角或相对于不同平面的多个到达角,以确定HWD在沿两个或三个不同轴的平移系中的相对姿态。
响应于生成惯性数据和AOA数据,计算机系统100可以将数据融合在一起以生成融合姿态数据。图2示出了根据一些实施例的示例。具体地,图2是示出根据一些实施例的计算机系统100的方面的框图。在所描绘的示例中,计算机系统100包括UWB模块106、IMU 108和数据融合模块218。数据融合模块218是通常被配置为融合IMU数据和AOA数据以确定融合姿态信息的模块。因此,可以通过在计算机系统100的处理器(图2中未示出)处执行的软件等在计算机系统的专用硬件中实现数据融合模块218。
在操作中,UWB模块106生成AOA数据215,其表示HWD 102在平移参考系中的3D DoF姿态,而IMU 108生成IMU数据216,其表示在平移和旋转参考系中HWD的6-DoF姿态。数据融合模块218通常被配置为融合AOA数据215和IMU数据216以生成融合姿态数据220,其中,融合姿态是平移和旋转参考系中的6-DoF姿态。
在不同的实施例中,数据融合模块218以不同的方式融合数据。例如,在一些实施例中,数据融合模块218采用AOA数据215和IMU数据216作为输入而使用一种或多种随机估计或近似技术,以确定表示HWD 102相对于可穿戴设备104随时间改变的姿态的路径或曲线的性质。因此,例如,在不同的实施例中,数据融合模块218实现卡尔曼滤波器、粒子滤波器、加权最小二乘束调整或其他估计技术,以基于AOA数据215和IMU数据216来估计HWD 102的姿态和因此的融合姿态数据220。
在其他实施例中,数据融合模块218采用机器学习模型,该机器学习模型已被训练以基于AOA数据215和IMU数据216生成融合姿态数据220。例如,在一些实施例中,数据融合模块218使用卷积神经引擎来实现平移3DoF追踪器,该卷积神经引擎利用在每个空间维度中观察到的每个数据(即,AOA数据215和IMU数据216)与3-DoF输出层的时间相干性。可以使用在测试环境中生成的姿态数据来训练神经引擎,以确定控制神经引擎行为的权重、层和其他因素的初始集合。此外,神经引擎可以随时间更新权重和其他因素,以进一步细化用于生成融合姿态数据220的估计过程。
图3是示出根据一些实施例的数据融合模块218的示例的框图。在所示示例中,数据融合模块218包括坐标变换模块322、平移追踪器模块324、旋转追踪器模块326和合并器模块328。坐标变换模块322通常被配置为将AOA数据215变换为平移参考系中的一组x、y和z坐标。例如,在一些实施例中,AOA数据215被生成为1)范围r,其表示可穿戴设备104和HWD102之间的距离;2)角度θ,其表示标签信号的水平到达角;以及3)角度其表示标签信号的垂直到达角。坐标变换模块使用以下公式将AOA数据变换为x、y和z坐标:
z=r*cosθ
平移追踪器324是被配置为基于由坐标变换模块322变换的AOA数据215和IMU数据216的平移部分来确定HWD 102在平移参考系中的平移姿态的模块。在一些实施例中,平移追踪器324使用一种或多种随机估计技术——诸如通过使用卡尔曼滤波器、粒子滤波器、加权最小二乘束调整等或其组合——来生成平移姿态。在其他实施例中,平移追踪器324采用机器学习模型,诸如利用在每个空间维度中观察到的输入数据的时间相干性的卷积神经引擎,其具有3-DoF输出层,包括3DoF平移坐标或3DoF旋转坐标中的一个或多个。在一些实施例中,IMU数据216的旋转部分可被采用于确定旋转动力学,并且这些旋转动力学被采用于确定由坐标变换模块识别的平移姿态的误差模型。
旋转追踪器326是被配置为基于IMU数据216确定HWD 102在旋转参考系中的平移姿态的模块。在一些实施例中,旋转追踪器326使用一种或多种随机估计技术——诸如通过使用卡尔曼滤波器、粒子滤波器、加权最小二乘束调整等或其组合——来生成旋转姿态。在一些实施例中,旋转追踪器326采用的随机估计技术不同于平移追踪器324采用的随机估计技术。
合并器模块328被配置为合并由平移追踪器324生成的平移姿态和由旋转追踪器326生成的旋转姿态。在一些实施例中,合并器模块328通过将姿态放置在数据结构中来合并姿态,该数据结构被配置为存储6-DoF姿态数据,包括平移(x,y,z)姿态数据和旋转(俯仰、滚转和偏航)数据。
如上所述,在一些实施例中,AOA数据215表示具有多个维度的平移参考系中的姿态。为了生成该姿态数据,在HWD的多个不同位置具有UWB天线是有用的,允许基于每个天线处接收的标签信号之间的相位差生成姿态数据。根据一些实施例,在图4和图5中示出了支持生成多维姿态数据的计算机系统的示例。具体地,图4示出了根据一些实施例的包括HWD402和可穿戴设备104的计算机系统400。HWD402与图1的HWD 102类似地配置,包括UWB模块106和IMU 408。然而,HWD 402包括附加的UWB模块430,其位于HWD 402的中心处或附近,并且位于HWD 402的两个透镜之间(例如,位于或靠近HWD 402的被配置为放置在用户的鼻子上方的桥接部分)。
在操作中,计算机系统400通过从UWB模块106向可穿戴设备104发送UWB锚信号来生成AOA数据。作为响应,如上所述,可穿戴设备104发送标签信号。在UWB模块106和430中的每一个处经由天线接收标签信号。UWB模块106确定所接收的标签信号之间的相位差,并基于该相位差确定标签信号的水平到达角θ。
图5示出了根据一些实施例的包括HWD 502和可穿戴设备104的计算机系统500。HWD 502与图1的HWD 102类似地配置,包括UWB模块106和IMU 508。然而,HWD 502包括与图4的UWB模块430类似的附加UWB模块530,其位于HWD 402的中心处或附近,并且位于HWD 402的两个透镜之间。此外,HWD 502包括另一UWB模块532,其位于UWB模块532下方,沿着HWD502的透镜的一侧,与UWB模块530相对。
在操作中,计算机系统500通过从UWB模块106向可穿戴设备104发送UWB锚信号来生成AOA数据。作为响应,如上所述,可穿戴设备104发送标签信号。通过UWB模块106、430和532中的每一个处的天线接收标签信号。UWB模块106确定所接收的标签信号之间的相位差,并基于相位差确定标签信号的水平到达角θ和标签信号的垂直到达角
在一些实施例中,计算机系统100支持基于融合姿态数据220修改增强现实(AR)或虚拟现实(VR)内容。图6处示出了示例,图6描绘了示出根据一些实施例的计算机系统100的各方面的框图。在所示实施例中,计算机系统100包括数据融合模块218和处理器640,处理器640被配置为执行AR/VR内容642。处理器640是被配置为执行指令集(例如,计算机程序或应用)以便代表计算机系统100执行操作的通用或专用处理器。因此,在不同实施例中,计算机系统100在诸如台式或膝上型计算机、服务器、平板电脑、智能手机、游戏控制台等的各种设备中的任何一个处实现。在一些实施例中,计算机系统100包括图6中未示出的附加模块和组件,以支持指令的执行并且特别是AR/VR内容642的执行。例如,在各种实施例中,计算机系统100包括一个或多个附加处理单元,诸如一个或多个图形处理单元(GPU)、存储器控制器、输入/输出控制器、网络接口、存储器模块等。
在一些实施例中,计算机系统100通过执行对应的指令集来实现AR/VR内容642,该指令集当在处理器640处被执行时,生成用于在HWD 102处显示的图像帧。此外,计算机系统100被配置为基于融合姿态数据220修改AR/VR内容642和对应的图像帧。在操作中,当用户改变HWD 102和可穿戴设备104之间的相对姿态时,AOA数据215和IMU数据216改变,使数据融合模块218生成新的融合姿态数据220。当融合姿态数据220改变时,处理器640基于在处理器640处执行的对应指令集修改AR/VR内容642。用户由此与AR/VR内容642交互。因此,例如,当用户改变HWD 102和可穿戴设备104之间的相对姿态时,AR/VR内容642可以被更新以允许用户:看到虚拟或增强环境的不同部分、与虚拟或增强的环境中的虚拟对象交互以及发起或终止计算机程序或应用的执行等。
在一些实施例中,上述技术的某些方面可以由执行软件的处理系统的一个或多个处理器来实现。该软件包括在非暂时性计算机可读存储介质上存储或否则有形地体现的一个或多个可执行指令集。该软件可以包括指令和某些数据,这些指令和某些数据在由一个或多个处理器执行时操纵一个或多个处理器以执行上述技术的一个或多个方面。非易失性计算机可读存储介质可以包括例如磁盘或光盘存储设备、诸如闪存的固态存储设备、高速缓存、随机存取存储器(RAM)或其他一个或多个非易失性存储设备等等。存储在非暂时性计算机可读存储介质上的可执行指令可以是以源代码、汇编语言代码、目标代码或由一个或多个处理器解释或否则可执行的其他指令格式。
计算机可读存储介质可以包括在使用期间由计算机系统可访问的任何存储介质或存储介质的组合,用于向计算机系统提供指令和/或数据。这样的存储介质可以包括但不限于光学介质(例如,光盘(CD)、数字多功能盘(DVD)、蓝光光盘)、磁性介质(例如,软盘、磁带或磁硬盘驱动器)、易失性存储器(例如,随机存取存储器(RAM)或高速缓存)、非易失性存储器(例如,只读存储器(ROM)或闪存)或基于微机电系统(MEMS)的存储介质。计算机可读存储介质可以嵌入在计算系统(例如,系统RAM或ROM)中,固定地附接到计算系统(例如,磁硬盘驱动器),可移除地附接到计算系统(例如,光盘或基于通用串行总线(USB)的闪存),或通过有线或无线网络(例如,网络可访问存储器(NAS))耦合到计算机系统。
注意,一般描述中的上述的所有活动或元素并非全部是必需的,特定活动或设备的一部分可以不是必需的,并且除了上述那些之外,还可以执行一个或多个其他活动或包括元素。更进一步,列出活动的顺序不一定是执行它们的顺序。而且,已经参考特定实施例描述了概念。然而,本领域的普通技术人员将理解,可以进行各种修改和改变而不脱离如所附权利要求书中阐述的本公开的范围。因此,说明书和附图应被认为是说明性的而不是限制性的,并且所有这样的修改旨在被包括在本公开的范围内。
上面已经关于特定实施例描述了益处、其他优点和对于问题的解决方案。但是,益处、优点、对于问题的解决方案以及可能导致任何益处、优点或对于问题的解决方案出现或变得更加明显的任何特征都不应解释为任何或全部权利要求的关键、必需或必要特征。此外,上面公开的特定实施例仅是说明性的,因为可以以受益于本文的教导的本领域技术人员显而易见的不同但等效的方式来修改和实践所公开的主题。除了在下面的权利要求书中描述的以外,没有意图对本文所示的构造或设计的细节进行限制。因此,显而易见的是,以上公开的特定实施例可以被改变或修改,并且所有这样的变化都被认为在所公开的主题的范围内。因此,本文所寻求的保护如所附权利要求书所述。
Claims (25)
1.一种方法,包括:
基于接收到的信号的到达角来确定到达角AOA数据;以及
基于所述AOA数据来识别头戴式显示器HWD和可穿戴设备之间的相对姿态。
2.根据权利要求1所述的方法,还包括:
从所述HWD的惯性测量单元IMU接收惯性数据;以及
其中,识别所述相对姿态包括:基于所述惯性数据来识别所述相对姿态。
3.根据权利要求2所述的方法,还包括:
将所述AOA数据与所述惯性数据融合以生成融合姿态数据;以及
其中,识别所述相对姿态包括:基于所述融合姿态数据来识别所述相对姿态。
4.根据权利要求3所述的方法,其中,将所述AOA数据与所述惯性数据融合包括:基于随机估计过程来将所述AOA数据与所述惯性数据融合。
5.根据权利要求4所述的方法,其中,所述随机估计过程包括卡尔曼滤波器。
6.根据权利要求4或5所述的方法,其中,所述随机估计过程包括粒子滤波器。
7.根据权利要求4至6中任一项所述的方法,其中,所述随机估计过程包括加权最小二乘束调整。
8.根据权利要求3至7中任一项所述的方法,其中,将所述AOA数据与所述惯性数据融合包括:基于机器学习模型来将所述AOA数据与所述惯性数据融合。
9.根据前述权利要求中任一项所述的方法,其中,确定所述AOA数据包括:基于超宽带UWB信号来确定所述AOA数据。
10.根据前述权利要求中任一项所述的方法,其中,所述HWD包括多个天线,并且所述多个天线中的每个天线从所述可穿戴设备接收信号,并且其中,基于接收到的信号之间的相位差来识别所述信号的AOA。
11.根据前述权利要求中任一项所述的方法,其中,确定所述AOA数据还包括:确定在所述HWD和所述可穿戴设备之间的距离。
12.根据权利要求11所述的方法,其中,确定所述HWD和所述可穿戴设备之间的所述距离包括:测量从所述HWD向所述可穿戴设备发送第一信号与响应于所述第一信号而在所述HWD处从所述可穿戴设备接收第二信号之间的时间差。
13.根据前述权利要求中任一项所述的方法,其中,基于识别出的姿态来修改要由所述HWD向用户显示的增强现实(AR)或虚拟现实(VR)内容。
14.一种方法,包括:
在头戴式显示器HWD处接收到达角AOA数据和惯性数据;以及
融合所述AOA数据和所述惯性数据以确定所述HWD和可穿戴设备的相对姿态。
15.根据权利要求14所述的方法,还包括:
通过从所述HWD向所述可穿戴设备发送超宽带UWB信号,在所述HWD处生成AOA数据。
16.一种计算机系统,包括:
头戴式显示器HWD,所述头戴式显示器HWD被配置为基于接收到的信号的到达角来确定到达角AOA数据;以及
至少一个处理器,所述至少一个处理器被配置为基于所述AOA数据来识别所述HWD和可穿戴设备之间的相对姿态。
17.根据权利要求16所述的计算机系统,还包括:
惯性测量单元(IMU),所述惯性测量单元(IMU)用于基于所述HWD的姿态来生成惯性数据;以及
其中,所述处理器用于基于所述惯性数据来识别所述相对姿态。
18.根据权利要求17所述的计算机系统,还包括:
数据融合模块,所述数据融合模块被配置为将所述AOA数据与所述惯性数据融合以生成融合姿态数据;以及
其中,所述处理器用于基于所述融合姿态数据来识别所述相对姿态。
19.根据权利要求18所述的计算机系统,其中,所述数据融合模块被配置为基于随机估计过程来将所述AOA数据与所述惯性数据融合。
20.根据权利要求19所述的计算机系统,其中,所述随机估计过程包括卡尔曼滤波器。
21.根据权利要求19或20所述的计算机系统,其中,所述随机估计过程包括粒子滤波器。
22.根据权利要求19至21中任一项所述的计算机系统,其中,所述随机估计过程包括加权最小二乘束调整。
23.根据权利要求18至22中任一项所述的计算机系统,其中,所述数据融合模块被配置为基于机器学习模型来将所述AOA数据与所述惯性数据融合。
24.根据权利要求16至23中任一项所述的计算机系统,其中,所述HWD被配置为基于超宽带UWB信号的传输来确定所述AOA数据。
25.一种头戴式显示器HWD,包括:
至少一个接收器,所述至少一个接收器被配置为从可穿戴设备接收信号;以及
至少一个处理器,所述至少一个处理器被配置为基于接收到的信号的到达角来确定到达角AOA数据,并基于所述AOA数据来识别所述HWD和所述可穿戴设备之间的相对姿态。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2020/067438 WO2022146424A1 (en) | 2020-12-30 | 2020-12-30 | Device tracking with angle-of-arrival data |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116113911A true CN116113911A (zh) | 2023-05-12 |
Family
ID=74418524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080105193.0A Pending CN116113911A (zh) | 2020-12-30 | 2020-12-30 | 利用到达角数据的设备追踪 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230418369A1 (zh) |
EP (1) | EP4185938A1 (zh) |
CN (1) | CN116113911A (zh) |
WO (1) | WO2022146424A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116321418B (zh) * | 2023-03-02 | 2024-01-02 | 中国人民解放军国防科技大学 | 一种基于节点构型优选的集群无人机融合估计定位方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016017997A1 (en) * | 2014-07-31 | 2016-02-04 | Samsung Electronics Co., Ltd. | Wearable glasses and method of providing content using the same |
US10295651B2 (en) * | 2016-09-21 | 2019-05-21 | Pinhas Ben-Tzvi | Linear optical sensor arrays (LOSA) tracking system for active marker based 3D motion tracking |
US10902160B2 (en) * | 2017-02-22 | 2021-01-26 | Middle Chart, LLC | Cold storage environmental control and product tracking |
US10872179B2 (en) * | 2017-02-22 | 2020-12-22 | Middle Chart, LLC | Method and apparatus for automated site augmentation |
WO2019221747A1 (en) * | 2018-05-18 | 2019-11-21 | Ensco, Inc. | Position and orientation tracking system, apparatus and method |
US20220201428A1 (en) * | 2019-04-17 | 2022-06-23 | Apple Inc. | Proximity Enhanced Location Query |
US11948401B2 (en) * | 2019-08-17 | 2024-04-02 | Nightingale.ai Corp. | AI-based physical function assessment system |
JP7012806B1 (ja) * | 2020-11-26 | 2022-01-28 | 三菱電機株式会社 | 運転者姿勢計測装置および車両制御装置 |
US11892550B2 (en) * | 2020-12-22 | 2024-02-06 | Samsung Electronics Co., Ltd. | Three-dimensional angle of arrival capability in electronic devices |
-
2020
- 2020-12-30 CN CN202080105193.0A patent/CN116113911A/zh active Pending
- 2020-12-30 EP EP20848822.1A patent/EP4185938A1/en active Pending
- 2020-12-30 US US18/035,970 patent/US20230418369A1/en active Pending
- 2020-12-30 WO PCT/US2020/067438 patent/WO2022146424A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20230418369A1 (en) | 2023-12-28 |
EP4185938A1 (en) | 2023-05-31 |
WO2022146424A1 (en) | 2022-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10521026B2 (en) | Passive optical and inertial tracking in slim form-factor | |
EP3469457B1 (en) | Modular extension of inertial controller for six dof mixed reality input | |
EP3469458B1 (en) | Six dof mixed reality input by fusing inertial handheld controller with hand tracking | |
CN110140099B (zh) | 用于跟踪控制器的系统和方法 | |
EP3000011B1 (en) | Body-locked placement of augmented reality objects | |
US9401050B2 (en) | Recalibration of a flexible mixed reality device | |
EP3486707B1 (en) | Perception based predictive tracking for head mounted displays | |
WO2018106390A1 (en) | Ocular video stabilization | |
EP4073618A1 (en) | Content stabilization for head-mounted displays | |
EP3301545B1 (en) | Computer program, object tracking method, and display device | |
US11662589B2 (en) | Geometry modeling of eyewear devices with flexible frames | |
CN109117684A (zh) | 用于在双目增强现实设备上选择性扫描的系统和方法 | |
JP6986003B2 (ja) | トラッキングシステム及びそのトラッキング方法 | |
WO2022072192A1 (en) | Pose tracking for rolling shutter camera | |
US20230418369A1 (en) | Device tracking with integrated angle-of-arrival data | |
US20180182124A1 (en) | Estimation system, estimation method, and estimation program | |
WO2022240933A1 (en) | Depth-from- stereo bending correction | |
US11854227B2 (en) | Depth-from-stereo bending correction using visual inertial odometry features |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |