CN114503057A - 基于图像和惯性测量单元两者的取向确定 - Google Patents
基于图像和惯性测量单元两者的取向确定 Download PDFInfo
- Publication number
- CN114503057A CN114503057A CN202080066111.6A CN202080066111A CN114503057A CN 114503057 A CN114503057 A CN 114503057A CN 202080066111 A CN202080066111 A CN 202080066111A CN 114503057 A CN114503057 A CN 114503057A
- Authority
- CN
- China
- Prior art keywords
- orientation
- neural network
- user
- rigid
- orientation measurement
- 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
- 238000005259 measurement Methods 0.000 title claims abstract description 258
- 238000013528 artificial neural network Methods 0.000 claims abstract description 141
- 238000000034 method Methods 0.000 claims description 80
- 230000003287 optical effect Effects 0.000 claims description 64
- 230000000306 recurrent effect Effects 0.000 claims description 43
- 238000003860 storage Methods 0.000 claims description 12
- 238000013527 convolutional neural network Methods 0.000 claims description 8
- 230000033001 locomotion Effects 0.000 description 106
- 210000000245 forearm Anatomy 0.000 description 72
- 230000015654 memory Effects 0.000 description 21
- 210000004247 hand Anatomy 0.000 description 19
- 238000012545 processing Methods 0.000 description 19
- 238000012549 training Methods 0.000 description 16
- 210000003811 finger Anatomy 0.000 description 15
- 230000009471 action Effects 0.000 description 14
- 238000010801 machine learning Methods 0.000 description 12
- 210000001503 joint Anatomy 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000001133 acceleration Effects 0.000 description 6
- 239000003550 marker Substances 0.000 description 6
- 210000003813 thumb Anatomy 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 210000000707 wrist Anatomy 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 210000003109 clavicle Anatomy 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 210000002414 leg Anatomy 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000006403 short-term memory Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 2
- 244000309466 calf Species 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 210000002310 elbow joint Anatomy 0.000 description 2
- 230000005057 finger movement Effects 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 210000000323 shoulder joint Anatomy 0.000 description 2
- 210000000689 upper leg Anatomy 0.000 description 2
- 210000003857 wrist joint Anatomy 0.000 description 2
- 241000699666 Mus <mouse, genus> Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 210000001145 finger joint Anatomy 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000002604 ultrasonography Methods 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- 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/0304—Detection arrangements using opto-electronic means
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
- Image Analysis (AREA)
Abstract
一种用于基于图像和惯性测量单元(IMU)两者跟踪用户的部位的取向的***。例如,该***接收示出穿戴传感器模块的用户的一部分的图像。该***接收由附接到用户的一些部位的传感器模块生成的取向测量结果的第一集合。该***从图像中确定用户的部分的一个或多个特征的取向测量结果的第二集合。该***提供所述取向测量结果的第一集合和所述取向测量结果的第二集合作为对人工神经网络的输入,所述人工神经网络被配置成预测所述用户的一个或多个其他部位的将由附加传感器模块(如果所述附加传感器模块将附接到所述用户的所述其他部位)测量的取向测量结果。
Description
相关申请
本申请要求2019年9月19日提交的标题为“ORIENTATION DETERMINATION BASEDON BOTH IMAGES AND INERTIAL MEASUREMENT UNITS”的美国专利申请序列号16/576,672的优先权,所述美国专利申请的全部公开内容据此以引用方式并入本文。
本申请涉及2018年5月7日提交的标题为“Tracking User Movements to Controla Skeleton Model in a Computer System”的美国专利申请序列号15/973,137、2018年6月1日提交的标题为“Motion Predictions of Overlapping Kinematic Chains of aSkeleton Model Used to Control a Computer System”的美国专利申请序列号15/996,389、2018年1月11日提交的标题为“Correction of Accumulated Errors in InertialMeasurement Units Attached to a User”的美国专利申请序列号15/868,745、2018年1月8日提交的标题为“Tracking Torso Leaning to Generate Inputs for ComputerSystems”的美国专利申请序列号15/864,860、2017年12月19日提交的标题为“Calibrationof Inertial Measurement Units Attached to Arms of a User and a Head MountedDevice”的美国专利申请序列号15/847,669、2017年11月20日提交的标题为“Calibrationof Inertial Measurement Units Attached to Arms of a User to Generate Inputsfor Computer Systems”的美国专利申请序列号15/817,646、2017年11月15日提交的标题为“Tracking Torso Orientation to Generate Inputs for Computer Systems”的美国专利申请序列号15/813,813、2017年10月24日提交的标题为“Tracking Finger Movementsto Generate Inputs for Computer Systems”的美国专利申请序列号15/792,255、2017年10月18日提交的标题为“Tracking Arm Movements to Generate Inputs for ComputerSystems”的美国专利申请序列号15/787,555,以及2017年4月20日提交的标题为“Devicesfor Controlling Computers based on Motions and Positions of Hands”的美国专利申请序列号15/492,915,它们的全部公开内容据此以引用方式并入本文。
技术领域
本公开的至少一部分总体上涉及计算机输入装置,并且更具体地但不限于用于使用计算装置(诸如移动电话、智能手表、相似的移动装置和/或其他装置)实现的虚拟现实和/或增强/混合现实应用的输入装置。
背景技术
美国专利申请公开No.2014/0028547公开了一种用户控制装置,所述用户控制装置具有组合惯性传感器以检测装置在真实或虚拟三维空间内进行指向和选择的移动。
美国专利申请公开No.2015/0277559公开了一种安装在指环上的触摸屏,所述触摸屏具有无线收发器,该无线收发器无线传输从触摸屏上的事件生成的命令。
美国专利申请公开No.2015/0358543公开了一种运动捕获装置,所述运动捕获装置具有多个惯性测量单元以测量用户的手指和手掌的运动参数。
美国专利申请公开No.2007/0050597公开了一种具有加速度传感器和陀螺仪传感器的游戏控制器。美国专利No.D772,986公开了用于无线游戏控制器的装饰设计。
中国专利申请公开No.103226398公开了使用微惯性传感器网络技术的数据手套,其中每个微惯性传感器是姿态和航向参考***,具有封装在电路板上的三轴微机电***(MEMS)微陀螺仪、三轴微加速度传感器和三轴地磁传感器。美国专利申请公开No.2014/0313022和美国专利申请公开No.2012/0025945公开了其他数据手套。
美国专利申请公开No.2016/0085310公开了用于从图像数据跟踪手或身体姿势的技术,其中从候选姿势池中选择最佳候选姿势作为当前跟踪的姿势。
美国专利申请公开No.2017/0344829公开了一种使用递归神经网络(RNN)的动作检测方案,其中将联合位置应用于递归神经网络(RNN)以确定表示视频帧中描绘的实体的动作的动作标签。
上面讨论的专利文件的公开内容特此以引用方式并入本文。
附图说明
实施方案在附图的各图中以示例而非限制的方式示出,其中相同的附图标记指示相似的元件。
图1示出了根据一个实施方案的用于跟踪用户移动的***。
图2示出了根据一个实施方案的用于控制计算机操作的***。
图3示出了根据一个实施方案的可通过跟踪用户移动来进行控制的骨架模型。
图4和图5示出了根据一个实施方案的用于训练递归神经网络(RNN)并使用RNN基于一个跟踪***的移动测量结果来预测另一跟踪***的移动测量结果的方法。
图6和图7示出了根据一个实施方案的用于训练递归神经网络(RNN)并使用RNN基于剩余的跟踪装置预测省略的跟踪装置的移动测量结果的方法。
图8和图9示出了根据一个实施方案的用于使用人工神经网络(ANN)来跟踪用户移动的方法
图10至图12示出了处理示出用户的一部分的图像,以确定用户的该部分的预定义特征的取向。
图13和图14示出了根据一个实施方案的用于训练递归神经网络(RNN)并使用RNN基于一个跟踪***的移动测量结果和用户的该部分的预定义特征的取向预测另一跟踪***的移动测量结果的方法。
图15和图16示出了根据一个实施方案的用于训练递归神经网络(RNN)并使用RNN基于剩余的跟踪装置和用户的该部分的预定义特征的取向预测省略的跟踪装置的移动测量结果的方法。
图17示出了使用相机和惯性测量单元(IMU)的取向确定方法。
具体实施方式
以下描述和附图是说明性的并且不应被解释为限制性的。描述了众多具体细节以提供透彻的理解。然而,在某些实例中,没有描述众所周知的或常规的细节以避免混淆描述。本公开中对一个或一种实施方案的引用不一定是对同一实施方案的引用;并且,此类引用意味着至少一个。
全部公开内容特此以引用方式并入本文的2018年5月7日提交的标题为“TrackingUser Movements to Control a Skeleton Model in a Computer System”的美国专利申请序列号15/973,137公开了跟踪用户的减少数量的部分的技术,该技术使用微机电***(MEMS)惯性测量单元(IMU)并使用人工神经网络来控制计算机***中的骨架模型,该骨架模型具有经由关节连接的多于减少数量的部分,其中每个部分可被认为是刚性并且通过关节处的旋转相对于其他部位是可移动的。
运动链是由关节连接的刚性部位的组件。用户的骨架模型或用户的一部分可以对应于用户的骨骼的方式被构造为通过关节连接的刚性部位的集合,或构造为骨骼的群组,这些骨骼的群组可被认为是刚性部位。
例如,头部、躯干、左右上臂、左右前臂、手掌、手指的指骨、拇指的掌骨、大腿、小腿和脚都可被认为是经由各种关节(诸如,颈、肩、肘、腕、指关节)连接的刚性部位。
可基于用户身体部位和对应关节的刚性模型而构建用户的骨架模型;并且刚性部位的相对位置和/或取向共同地表示用户的姿势和/或骨架模型。用户的骨架模型可用于控制用户化身的呈现,识别用户的手势输入,和/或为用户做出虚拟现实或增强现实呈现。
图1示出了根据一个实施方案的用于跟踪用户移动的***。
图1示出了用户的各种部位,诸如用户的躯干(101)、用户的头部(107)、用户的上臂(103和105)、用户的前臂(112和114)以及用户的手(106和108)。
在图1中示出的应用中,用户的手(106和108)被认为是可围绕用户的手腕移动的刚性部分。在其他应用中,还可跟踪用户的手掌和指骨相对于手指关节的移动(例如,以使用手指和手掌之间的相对位置确定用户的手势)。
在图1中,用户穿戴若干传感器装置(111、113、115、117和119),所述传感器装置跟踪用户的在应用中被认为或辨识为刚性的部位的取向。
在图1中示出的应用中,用户的刚性部分可相对于用户的躯干(101)和相对于彼此移动。刚性部位的示例包括头部(107)、上臂(103和105)、前臂(112和114)以及手(106和108)。诸如颈、肩、肘和/或腕等关节连接用户的刚性部位以形成一个或多个运动链。可在计算装置(141)中对运动链建模以控制应用。
要跟踪运动链中刚性部位的相对位置/取向,跟踪装置可附接到运动链中的每个单独刚性部位以测量其取向。
一般而言,可使用本领域已知的许多***中的一个来跟踪刚性部位在参考系(100)中的位置和/或取向。***中的一些可使用一个或多个相机来拍摄使用光学标记物标记的刚性部位的图像,并分析图像以计算该部位的位置和/或取向。***中的一些可基于从附接到刚性部位的跟踪装置传输或接收到的信号(诸如,射频信号、红外信号、超声信号)来跟踪刚性部位。信号可对应于在跟踪装置中接收到的信号,和/或从跟踪装置发出的信号。***中的一些可使用惯性测量单元(IMU)来跟踪跟踪装置的位置和/或取向。
在图1中,传感器装置(111、113、115、117和119)用于跟踪一个或多个运动链中的刚性部位(例如,107、103、105、106、108)中的一些,但是传感器装置被从一个或多个运动链中的其他刚性部位(101、112、114)中省略,以减少所使用的传感器装置的数量和/或改善穿戴减少数量的传感器装置的用户体验。
计算装置(141)具有预测模型(141),所述预测模型被训练以基于传感器装置(111、113、115、117和119)的测量结果来生成用户的部位(101、112、114、107、103、105、106和/或108)的预测测量结果。
例如,可使用计算装置(141)中的人工神经网络来实现预测模型(141),以基于具有附接的传感器装置(111、113、115、117和119)的刚性部位(107、103、105、106、108)的取向测量结果来预测省略了传感器装置的刚性部位(101、112、114)的取向的测量结果。
此外,可训练人工神经网络以基于使用不同技术(例如,IMU)测量取向的附接的传感器装置(111、113、115、117和119)的测量结果来预测刚性部位(107、103、105、106、108)的取向的测量结果,该测量结果将由另一***(例如,光学跟踪***)测量。
传感器装置(111、113、115、117、119)将它们的移动测量结果传达给计算装置(141),该计算装置通过将从附接的传感器装置(111、113、115、117和119)获得的测量结果作为输入应用于以如下面进一步讨论的方式训练的人工神经网络来计算或预测刚性部位(107、103、105、106、108、101、112、114)的取向。
在一些实现方式中,传感器装置(111、113、115、117和119)中的每个以独立于其他传感器装置的操作的方式将其测量结果直接传送给计算装置(141)。
替代地,传感器装置(111、113、115、117和119)中的一个可作为基本单元起作用,该基本单元接收来自一个或多个其他传感器装置的测量结果,并将捆绑的和/或组合的测量结果传输给计算装置(141)。在一些实例中,人工神经网络在基本单元中实现并用于生成预测的测量结果,该预测的测量结果被传送给计算装置(141)。
优选地,经由个人局域无线网络(例如,蓝牙连接)或局域无线网络(例如,Wi-Fi连接)进行的无线连接用于促进从传感器装置(111、113、115、117和119)到计算装置(141)的通信。
替代地,可使用有线连接来促进传感器装置(111、113、115、117和119)中的一些之中和/或与计算装置(141)的通信。
例如,附接到或保持在用户的对应手(106或108)中的手部模块(117或119)可接收对应臂模块(115或113)的运动测量结果,并将对应手(106或108)以及对应上臂(105或103)的运动测量结果传输到计算装置(141)。
手(106)、前臂(114)和上臂(105)可被认为是运动链,针对该运动链可基于来自附接到手(106)和上臂(105)的传感器装置(117和115)的传感器输入来训练人工神经网络来预测由光学跟踪***生成的取向测量结果,而前臂(114)上没有对应的装置。
任选地或组合地,手部模块(例如,117)可将其测量结果与对应臂模块(115)的测量结果组合以计算连接在手(106)与上臂(105)之间的前臂的取向,方式如2017年10月18日提交的标题为“Tracking Arm Movements to Generate Inputs for Computer Systems”的美国专利申请序列号15/787,555中公开,所述美国专利申请的全部公开内容特此以引用方式并入本文。
例如,手部模块(117和119)和臂模块(115和113)可各自分别经由2017年4月20日提交的标题为“Devices for Controlling Computers based on Motions and Positionsof Hands”的美国专利申请公开No.15/492,915中讨论的基本单元(或游戏控制器)和臂/肩模块实现,所述美国专利申请公开的全部公开内容特此以引用方式并入本文。
在一些实现方式中,头部模块(111)被配置为基本单元,该基本单元接收来自手部模块(117和119)和臂模块(115和113)的运动测量结果,并捆绑测量数据以传输到计算装置(141)。在一些实例中,计算装置(141)被实现为头部模块(111)的一部分。头部模块(111)还可使用针对对应运动链训练的人工神经网络根据臂模块(115和113)的取向和/或头部模块(111)的取向确定躯干(101)的取向,该运动链包括上臂(103和105)、躯干(101)和/或头部(107)。
为了确定躯干(101)的取向,手部模块(117和119)在图1中示出的***中是任选的。
此外,在一些实例中,头部模块(111)不用于跟踪用户的躯干(101)的取向。
通常,传感器装置(111、113、115、117和119)的测量结果被校准以与公共参考系(诸如坐标系(100))对准。
在校准之后,用户的手、手臂(105、103)、头部(107)和躯干(101)可相对于彼此并且相对于坐标系(100)移动。传感器装置(111、113、115、117和119)的测量结果提供用户的手(106和108)、上臂(105、103)和头部(107)相对于坐标系(100)的取向。计算装置(141)使用预测模型(116)根据上臂(105、103)的当前取向、用户的头部(107)的当前取向和/或用户的手(106和108)的当前取向以及其取向历史记录计算、估计或预测躯干(101)和/或前臂(112和114)的当前取向。
任选地或组合地,计算装置(141)还可根据手(106和108)的取向和上臂(105和103)的取向计算前臂的取向,例如使用的技术在2017年10月18日提交的标题为“TrackingArm Movements to Generate Inputs for Computer Systems”的美国专利申请序列号15/787,555中公开,所述美国专利申请的全部公开内容特此以引用方式并入本文。
本文公开的至少一些实施方案允许根据上臂(105和103)的取向、头部(107)的取向和/或手(106和108)的取向来确定或估计躯干(101)和/或前臂(112和114)的取向,而不需要附加传感器模块附接到躯干(101)和前臂(112和114)。
图2示出了根据一个实施方案的用于控制计算机操作的***。例如,可按图1中示出的方式经由分别将臂模块(115和113)附接到上臂(105和103)、将头部模块(111)附接到头部(107)和/或手部模块(117和119)来实现图2的***。
在图2中,头部模块(111)和臂模块(113)具有微机电***(MEMS)惯性测量单元(IMU)(121和131),它们测量运动参数并确定头部(107)和上臂(103)的取向。
相似地,手部模块(117和119)也可具有IMU。在一些应用中,手部模块(117和119)测量手(106和108)的取向,并且没有单独跟踪手指的移动。在其他应用中,手部模块(117和119)具有单独的IMU用于测量手(106和108)的手掌的取向,以及测量手(106和108)上的至少一些手指的至少一些指骨的取向。手部模块的示例可在2017年10月24日提交的标题为“Tracking Finger Movements to Generate Inputs for Computer Systems”的美国专利申请序列号15/792,255中找到,所述美国专利申请的全部公开内容特此以引用方式并入本文。
IMU(131和121)中的每个具有一系列传感器部件,所述一系列传感器部件支持确定相应的IMU沿着多个轴线的移动、位置和/或取向。所述部件的示例为:MEMS加速度计,其测量加速度的投影(物体的真实加速度与重力加速度之间的差异);MEMS陀螺仪,其测量角速度;以及磁力计,其测量磁场在空间中的某个点处的大小和方向。在一些实施方案中,IMU使用三轴线和两轴线上的传感器组合(例如,没有磁力计)。
计算装置(141)具有预测模型(116)和运动处理器(145)。在预测模型(116)中使用来自头部模块(111)、臂模块(例如,113和115)和/或手部模块(例如,117和119)的IMU(例如,131、121)的测量结果以生成不具有附接的传感器模块的部位(诸如躯干(101)和前臂(112和114))中的至少一些的预测的测量结果。预测的测量结果和/或IMU(例如,131、121)的测量结果在运动处理器(145)中使用。
运动处理器(145)具有用户的骨架模型(143)(例如,在图3中示出)。运动处理器(145)根据用户的对应部位的移动/取向控制骨架模型(143)的部位的移动。例如,手(106和108)、前臂(112和114)、上臂(103和105)、躯干(101)、头部(107)的如由手部模块(117和119)、臂模块(113和115)、头部模块(111)、传感器模块的IMU测量的和/或由预测模型(116)基于所述IMU测量结果而预测的取向被用于设置骨架模型(143)的对应部位的取向。
因为躯干(101)没有单独附接的传感器模块,所以使用预测模型(116)使用来自包括躯干(101)的运动链上的传感器模块的传感器测量结果来预测躯干(101)的移动/取向。例如,可用包括头部(107)、躯干(101)和上臂(103和105)的运动链的运动模式来训练预测模型(116),并且可使用所述预测模型来基于头部(107)、躯干(101)和上臂(103和105)的运动历史记录以及头部(107)和上臂(103和105)的当前取向来预测躯干(101)的取向。
相似地,因为前臂(112或114)没有单独附接的传感器模块,所以使用预测模型(116)使用来自包括前臂(112或114)的运动链上的传感器模块的传感器测量结果来预测前臂(112或114)的移动/取向。例如,可用包括手(106)、前臂(114)和上臂(105)的运动链的运动模式来训练预测模型(116),并且可使用所述预测模型来基于手(106)、前臂(114)、上臂(105)的运动历史记录以及手(106)和上臂(105)的当前取向来预测所述前臂(114)的取向。
骨架模型(143)由运动处理器(145)控制以生成用于在计算装置(141)中运行的应用(147)的输入。例如,骨架模型(143)可用于控制计算装置(141)的用户的臂(112、114、105和103)、手(106和108)、头部(107)和躯干(101)的化身/模型在视频游戏、虚拟现实、混合现实或增强现实等中的移动。
优选地,臂模块(113)具有:微控制器(139),其用于处理来自臂模块(113)的IMU(131)的传感器信号;以及通信模块(133),其用于将臂模块(113)的运动/取向参数传输到计算装置(141)。相似地,头部模块(111)具有:微控制器(129),其用于处理来自头部模块(111)的IMU(121)的传感器信号;以及通信模块(123),其用于将头部模块(111)的运动/取向参数传输到计算装置(141)。
任选地,臂模块(113)和头部模块(111)分别具有LED指示器(137和127),以指示模块(113和111)的操作状态。
任选地,臂模块(113)分别具有触觉致动器(138)以向用户提供触觉反馈。
任选地,头部模块(111)具有显示装置(127)和/或按钮和其他输入装置(125),诸如触摸传感器、传声器、相机(126)等。
在一些实现方式中,头部模块(111)被替换为与臂模块(113)相似并且经由肩带附接到头部(107)或紧固到头戴式显示装置的模块。
在一些应用中,可用与臂模块(113)相似并且经由保持或经由肩带附接到手部的模块来实现手部模块(119)。任选地,手部模块(119)具有按钮和其他输入装置,诸如触摸传感器、操纵杆等。
例如,2017年10月24日提交的标题为“Tracking Finger Move ments toGenerate Inputs for Computer Systems”的美国专利申请序列号15/792,255、2017年10月18日提交的标题为“Tracking Arm Movements to Generate Inputs for ComputerSystems”的美国专利申请序列号15/787,555和/或2017年4月20日提交的标题为“Devicesfor Controlling Computers based on Motions and Positions of Hands”的美国专利申请序列号15/492,915中公开的手持式模块可用于实现手部模块(117和119),所述美国专利申请的全部公开内容特此以引用方式并入本文。
当手部模块(例如,117或119)跟踪手掌和指骨的选定集合的取向时,可在预测模型(116)中使用在预测模型(116)中捕获的手的运动链的运动模式来预测未穿戴传感器装置的指骨的方取向。
图2示出了手部模块(119)和臂模块(113)作为示例。一般而言,如图1中所示,用于跟踪躯干(101)的取向的应用通常使用两个臂模块(113和115)。头部模块(111)可任选地用于进一步改善对躯干(101)的取向的跟踪。手部模块(117和119)还可用于提供附加输入,和/或用于用户的前臂(112和114)的取向的预测/计算。
通常,模块(例如,113或111)中的IMU(例如,131或121)从加速度计生成加速度数据、从陀螺测试仪/陀螺仪生成角速度数据,和/或从磁力计生成取向数据。微控制器(139和129)执行预处理任务,诸如过滤传感器数据(例如,阻挡未在具体应用中使用的传感器)、应用校准数据(例如,以校正由计算装置(141)计算的平均累积误差)、将三个轴线上的运动/位置/取向数据变换成四元数,以及将经预处理的结果打包成数据分组(例如,使用数据压缩技术)以便以降低的带宽要求和/或通信时间传输到主机计算装置(141)。
微控制器(129、139)中的每个可包括存储指令的存储器,该指令控制相应微控制器(129或139)的操作以执行对来自IMU(121、131)的传感器数据的初级处理并控制通信模块(123、133)和/或其他部件的操作,所述其他部件诸如LED指示器(137)、触觉致动器(138)、按钮和其他输入装置(125)、显示装置(127)等。
计算装置(141)可包括一个或多个微处理器和存储指令的存储器以实现运动处理器(145)。运动处理器(145)还可经由硬件实现,所述硬件诸如专用集成电路(ASIC)或现场可编程门阵列(FPGA)。
在一些实例中,模块(111、113、115、117和/或119)中的一个被配置为主输入装置;并且另一模块被配置为经由主输入装置连接到计算装置(141)的辅助输入装置。辅助输入装置可使用其连接的主输入装置的微处理器来执行预处理任务中的一些。直接与计算装置(141)通信的模块被认为是主输入装置,即使该模块不具有经由主输入装置连接到计算装置的辅助输入装置。
在一些实例中,计算装置(141)指定所请求的输入数据的类型,以及输入数据的条件和/或频率;并且模块(111、113、115、117和/或119)在各条件下和/或根据由计算装置(141)指定的频率报告所请求的输入数据。可为不同类型的输入数据(例如,加速度计测量结果、陀螺仪/陀螺测试仪测量结果、磁力计测量结果、位置、取向、速度)指定不同的报告频率。
一般而言,计算装置(141)可能是数据处理***,诸如移动电话、台式计算机、笔记本计算机、头戴式虚拟现实显示器、个人媒体播放器、平板计算机等。
图3示出了根据一个实施方案的可通过跟踪用户移动来进行控制的骨架模型。例如,可在图2的运动处理器(145)中使用图3的骨架模型。
图3中示出的骨架模型包括躯干(232)和左右上臂(203和205),它们可经由肩关节(234和241)相对于躯干(232)移动。骨架模型还可包括前臂(215和233)、手(206和208)、颈部、头部(207)、腿和脚。在一些实例中,手(206)包括手掌,所述手掌经由关节(例如,244)连接到手指的指骨(例如,245)和拇指的掌骨。
由图1中示出的用户的对应部位的经测量的取向来控制图3中示出的骨架模型的刚性部位的位置/取向。例如,根据用户的头部(107)的使用头部模块(111)测量的取向来配置骨架模型的头部(207)的取向;根据用户的上臂(105)的使用臂模块(115)测量的取向来配置骨架模型的上臂(205)的取向;根据用户的手(106)的使用手部模块(117)测量的取向来配置骨架模型的手(206)的取向。
预测模型(116)可具有针对不同运动链的不同运动模式训练的多个人工神经网络。
例如,锁骨运动链可包括上臂(203和205)、由锁骨(231)表示的躯干(232)以及任选的通过肩关节(241和234)和颈部连接的头部(207)。可使用锁骨运动链来基于锁骨运动链的运动历史以及上臂(203和205)和头部(207)的当前取向来预测躯干(232)的取向。
例如,前臂运动链可包括通过肘关节(242)和腕关节(243)连接的上臂(205)、前臂(215)和手(206)。可使用前臂运动链来基于前臂运动链的运动历史以及上臂(205)和手(206)的当前取向来预测前臂(215)的取向。
例如,手部运动链可包括通过手(206)中的关节连接的手(206)的手掌、手(206)上手指的指骨(245)和手(206)上的拇指的掌骨。可使用手部运动链来基于手部运动链的运动历史记录和手掌的当前取向以及使用手部模块(例如,117或119)中的IMU跟踪的指骨和掌骨的子集来预测指骨和掌骨的取向。
例如,躯干运动链可包括锁骨运动链并且还包括前臂和/或手和腿。例如,腿运动链可包括脚、小腿和大腿。
可使用监督机器学习技术训练预测模型(116)的人工神经网络,以基于运动链中的其他部位的取向来预测运动链中的部位的取向,使得具有预测的取向的部位不必穿戴单独的传感器装置来跟踪其取向。
此外,可使用监督机器学习技术来训练预测模型(116)的人工神经网络以基于运动链中的部位的使用一种跟踪技术测量的取向来预测运动链中的部位的可使用另一种跟踪技术测量的取向。
例如,如图2中示出的跟踪***使用IMU(例如,111、113、……)测量模块(111、113、......、119)的取向。基于惯性的传感器提供了良好的用户体验,对传感器的使用具有较少的约束,并且可以计算有效的方式实现。然而,在一些情形中,基于惯性的传感器可能不如某些跟踪方法准确,并且可能会具有漂移误差和/或通过时间积分的累积误差。
例如,光学跟踪***可使用一个或多个相机来跟踪在相机的视场中的光学标记物的方向和/或取向。当光学标记物在相机的视场内时,由相机捕获的图像可用于计算光学标记物的位置和/或取向,因此计算使用光学标记物标记的部位的取向。然而,光学跟踪***可能不像基于惯性的跟踪***那样用户友好,并且部署起来可能更昂贵。此外,当光学标记物在相机的视场外部时,无法通过光学跟踪***确定光学标记物的位置和/或取向。
可训练预测模型(116)的人工神经网络以基于由基于惯性的跟踪***产生的测量结果来预测由光学跟踪***产生的测量结果。因此,可减小和/或抑制基于惯性的测量结果中的漂移误差和/或累积误差,这减少了重新校准基于惯性的跟踪***的需要。
图4示出了一种用于训练递归神经网络(RNN)(307)的方法。例如,可使用图4的方法来生成图1和/或图2的预测模型(116)。
在图4中,使用两个跟踪***(301和302)跟踪/测量人类运动(303)。例如,图2的基于惯性的***可用作跟踪***A(301);并且光学跟踪***可用作跟踪***B(302)。
例如,人可穿戴传感器装置(111、113、115、117和119),所述传感器装置包含用于基于惯性的***的IMU(例如,121、131、……)。要训练递归神经网络(RNN)(307),可将光学标记物附接到人以用于光学跟踪***(例如,302)。
任选地,光学标记物可一体地形成在传感器装置(111、113、115、117和119)上以跟踪运动(303),从而训练包括递归神经网络(RNN)(307)的预测模型(116)。
任选地,将附加光学标记物附接到用户的未穿戴包含IMU的传感器装置的某些部位。例如,如图1中所示,用户的前臂(112和114)和躯干(101)没有附接的IMU用于经由基于惯性的***(例如,301)测量其取向;然而,用户的前臂(112和114)和躯干(101)可具有光学标记物以使用光学跟踪***(例如,302)测量它们的取向。
一般而言,可用另一跟踪***替换光学跟踪***(例如,302),该另一跟踪***基于红外信号、超声波信号、射频识别标签(RFID)信号等来进行取向测量。此外,跟踪***的组合可用作跟踪***B(302),以获得人类运动(303)的最准确测量结果B(306)。跟踪***B(302)用于测量人的未被跟踪***A(301)测量的部位以及任选人的被跟踪***A(301)测量的部位中的至少一些的取向。
在人穿戴用于跟踪***A(301)和跟踪***B(302)的传感器模块和光学标记物之后,人可执行涉及运动链的各种运动模式的多个动作序列。
该序列可从共同校准姿势开始,所述共同校准姿势诸如图1中示出的姿势。校准姿势的其他示例可在2017年12月19日提交的标题为“Calibration of InertialMeasurement Units Attached to Arms of a User and a Head Mounted Device”的美国专利申请序列号15/847,669、2017年11月20日提交的标题为“Calibration of InertialMeasurement Units Attached to Arms of a User to Generate Inputs for ComputerSystems”的美国专利申请序列号15/817,646中找到,所述申请的全部公开内容特此以引用方式并入本文。
可同时使用跟踪***A和跟踪***B(301和302)来测量/跟踪人的部位(诸如头部(107)、臂(103、105、112、114)和手(106和108)以及躯干(101))的位置和/或取向,以分别生成测量结果A和测量结果B(305和306)。
可使用监督机器学习技术来训练递归神经网络(RNN)(307)以基于由跟踪***A(301)(例如,如图2中示出的基于惯性的***)生成的测量结果A(305)来预测由跟踪***B(302)(例如,光学跟踪***、另一跟踪***或跟踪***的组合)生成的测量结果B(306)。监督机器学习技术调整递归神经网络(RNN)(307)中的参数,以最小化实际测量结果B(306)与使用测量结果A(305)作为对递归神经网络(RNN)(307)的输入而做出的预测之间的差异。具有经调整的参数的递归神经网络(RNN)(307)提供RNN模型(309),该RNN模型可用作图1和/或图2中的预测模型(116)。
递归神经网络(RNN)(307)可包括长短期记忆(LSTM)单元的网络,以基于做出了何种预测而选择性地记住状态的历史记录。
可以预定时间间隔对由执行人类运动(303)的人所执行的动作序列进行采样,以获得用于训练递归神经网络(RNN)(307)的测量结果(305和306)。
在一些实例中,一些动作序列多次重复和/或以不同的速度重复;并且时间测量的缩放和/或双指数平滑可应用于输入参数以对准序列的数据集和/或使时标正规化。
在训练了RNN模型(309)以具有预测使用跟踪***B(302)生成的测量结果B(306)的能力之后,不再需要使用跟踪***B(302)。例如,可在制造设施和/或开发商的设施中开发RNN模型(309)。传感器模块(例如,111、113、……、119)的用户不需要穿戴在跟踪***B(302)中使用的光学标记物或其他装置,如图5中所示。
图5示出了根据一个实施方案的用于使用RNN基于一个跟踪***的移动测量结果来预测另一跟踪***的移动测量结果的方法。
在图5中,跟踪***A(301)(例如,图2中示出的基于惯性的***)被用来在没有跟踪***B(302)(例如,光学跟踪***)的情况下跟踪用户的用户运动(304)。使用跟踪***A(301)(例如,图2中示出的基于惯性的***)测量的用户运动(304)的测量结果A(315)在RNN模型(309)中用于生成对将由跟踪***B(302)生成的测量结果B的预测(316)。可将测量结果B的预测(316)提供给运动处理器(145)以控制骨架模型(143)(例如,如图3中所示),就好像使用了跟踪***B(302)来获得测量结果一样。
例如,可训练具有LSTM单元的RNN模型(309)以使用由具有IMU的传感器模块生成的运动链的部位的取向测量结果来预测由光学跟踪***针对运动链生成的取向测量结果。
例如,传感器模块(113和119)使用从传感器模块(113和119)中的IMU(例如,131)生成的测量结果附接到前臂运动链中的上臂(103)和手(119)。RNN模型(309)根据针对用户运动(304)的序列的IMU测量结果来预测将由光学跟踪***不仅针对前臂运动链中的前臂(112),而且还针对上臂(103)和手(108)生成的取向测量结果。在运动处理器(145)中使用预测的取向测量结果来配置骨架(143)的对应前臂运动链,包括前臂(233)、上臂(203)和手(208)。
在一些实例中,没有必要使用利用一种技术(例如,光学跟踪***)实现的跟踪***来校准使用另一种技术(例如,基于惯性的跟踪***)实现的跟踪***的测量结果。可训练预测模型(116)以在不使用多种训练技术的情况下预测缺失传感器模块的部位的取向,如图6中所示。
图6示出了一种用于训练递归神经网络(RNN)(337)以预测缺失传感器模块的测量结果的方法。
在图6中,测量穿戴了跟踪装置A(331)和跟踪装置B(332)两者的人的人类运动(303)。例如,跟踪装置A(331)对应于如图1和/或图2中示出的头部模块(111)、臂模块(113和115)以及手部模块(117和119)。在图1中,前臂(112和114)和躯干(101)缺失传感器模块。
要训练递归神经网络(RNN)(337)以预测缺失的传感器模块的测量结果,图6的方法使用跟踪装置B(332),该跟踪装置是附接到前臂(112和114)和躯干(101)的附加IMU模块。附加IMU模块可能与臂模块(113)相似并经由臂带、肩带和/或其他方式附接到前臂(112和114)以及躯干(101),以将模块附接到执行人类运动的人上的相应位置。
可使用由跟踪装置A(331)生成的测量结果A(335)将监督机器学习技术应用于递归神经网络(RNN)(337),以预测由跟踪装置B(333)生成的测量结果B(336)。监督机器学习调整递归神经网络(RNN)(337)的参数,以最小化测量结果B(336)与其通过应用测量结果A(335)作为对递归神经网络(RNN)(337)的输入而做出的预测之间的差异。递归神经网络(RNN)(337)以及其训练的参数提供RNN模型(339),该模型可用于预测跟踪装置B(332)的测量结果。因此,当使用了RNN模型(339)时,可省略跟踪装置B(332),如图7中所示。
图7示出了根据一个实施方案的用于使用利用图6的方法训练的RNN基于附接的传感器模块的移动测量结果来预测缺失的传感器模块的移动测量结果。
在图7中,跟踪装置A(331)(例如,图1和/或图2中的111、113、115、117和119)被用来在没有跟踪装置B(332)的情况下跟踪用户的用户运动(304)。使用跟踪装置A(331)(例如,111、113、115、117和119)测量的用户运动(304)的测量结果A(345)被用作RNN模型(339)的输入,以生成对将由跟踪装置B(332)(如果使用了跟踪装置B(332))生成的测量结果B的预测(346)。可将测量结果A(345)和测量结果B的预测(346)提供给运动处理器(145),以控制骨架模型(143)(例如,如图3中所示),就好像使用了跟踪装置A(331)和跟踪装置B(332)两者一样。
例如,可训练具有LSTM单元的RNN模型(339)以使用运动链的剩余部位的由具有IMU的传感器模块生成的取向测量结果来预测由具有IMU的传感器模块为运动链的一个或多个部位生成的取向测量结果,使得对于运动链的一个或多个部位可省略具有IMU的传感器模块。
例如,传感器模块(113和119)使用从传感器模块(113和119)中的IMU(例如,131)生成的测量结果附接到前臂运动链中的上臂(103)和手(119)。RNN模型(339)根据针对用户运动(304)的序列的IMU测量结果预测将由具有IMU的传感器模块(例如,与臂模块(113)相似)(如果此类传感器模块附接到前臂运动链中的前臂(112))生成的取向测量结果。在运动处理器(145)中一起使用前臂(112)的预测的取向测量结果(346)和上臂(103)和手(119)的测量结果来配置骨架(143)的对应前臂运动链,包括前臂(233)、上臂(203)和手(208)。
因为可通过使用传感器模块(113和119)获得预测(346)而无需实际使用传感器模块来跟踪前臂(112)的取向,所以执行用户运动(304)的用户不必将附加传感器模块穿戴在前臂(112)上。因此,改善了用户体验;并且降低了用户的跟踪***的成本。
图8示出了一种用于训练人工神经网络以预测取向测量结果的方法。
图8的方法包括将跟踪装置附接(401)到人的至少一个运动链,所述跟踪装置包括一个或多个运动链上由第二跟踪装置分开的第一跟踪装置。
例如,第一跟踪装置是上臂(105)上的臂模块(115)和手(106)上的手部模块(117);并且一个或多个第二跟踪装置包括前臂运动链上的前臂(114)上的跟踪装置,该前臂运动链包括经由肘关节和腕关节连接的上臂(105)、前臂(114)和手(106)。前臂(114)上的跟踪装置将前臂运动链上的臂模块(115)与手部模块(117)分开。臂模块(115)和手部模块(117)包括IMU以在基于惯性的跟踪***中跟踪它们的取向,并且可具有光学标记物以使用光学跟踪***单独测量它们的取向。前臂(114)上的跟踪装置可能是用于测量其在光学跟踪***中的取向的光学标记物,并且可任选地包括IMU以在基于惯性的跟踪***中跟踪其取向。当前臂(114)上的跟踪装置支持在基于惯性的跟踪***和光学跟踪***两者中进行跟踪时,可以与臂模块(115)相同的方式实现前臂(114)上的跟踪装置。
图8的方法还包括执行(403)涉及至少一个运动链的多个动作序列(303)。动作序列(303)从共同校准姿势(例如,如图1中所示或另一姿势)开始。所述动作可被设计成模拟应用(147)中的典型动作,所述应用诸如虚拟现实游戏、增强现实应用等。
图8的方法还包括:记录(405)序列中第一跟踪装置和第二跟踪装置的取向,其中使用第一***(301)(例如,基于惯性的跟踪***)和第二***(302)(例如,光学跟踪***)两者来跟踪第一跟踪装置的取向,并且使用第二***(302)来跟踪一个或多个第二跟踪装置的取向。任选地,一个或多个第二跟踪装置的取向也可使用第一***(301)(例如,基于惯性的跟踪***)来进行跟踪,并且在第二***(302)不能测量一个或多个第二跟踪装置的取向的情形下使用。例如,当在某个位置时,前臂(114)上的光学标记物不在光学跟踪***的跟踪相机的视场内,从附接到前臂(114)的IMU确定的取向可被用于生成前臂(114)的取向测量结果。例如,当光学标记物在动作序列中的模糊位置之前和/或之后可见时,可经由来自光学跟踪***的测量结果来校准前臂(114)的从前臂(114)的IMU测量结果获得的取向测量结果,从而以提高的精度计算前臂在模糊位置处的取向,该精度与光学跟踪***的测量结果基本相同。
图8方法还包括:训练(407)人工神经网络(例如,307),以基于由第一***(301)(例如,基于惯性的跟踪***)测量的第一跟踪装置的取向来预测由第二***(302)(例如,光学跟踪***)测量的第一跟踪装置和第二跟踪装置的取向。
在一些实例中,使用单独的人工神经网络将不同的运动链分开训练。经训练的网络可单独用于各个运动链,以提高计算效率。替代地,可针对整个骨架(143)的运动学模型训练人工神经网络,以用于通用应用。
可使用强化学习技术重新训练经训练的人工神经网络,以提高其在一些运动场景中的预测精度。
图9示出了一种用于使用利用图8的方法训练的人工神经网络来跟踪用户移动的方法。
图9方法包括:将跟踪装置附接(411)到用户的至少一个运动链,包括部位上的第一跟踪装置但不包括在一个或多个运动链上将第一跟踪装置分开的第二跟踪装置;从校准姿势开始,执行(413)涉及至少一个运动链的动作(304)序列;使用第一***(301)而不是第二***(302)生成(415)该序列中的第一跟踪装置的取向测量结果;将取向测量结果应用(417)到人工神经网络,该人工神经网络先前被训练(例如,使用图9的方法)以基于由第一***(301)跟踪的第一跟踪装置的测量结果预测如由第二***(302)测量的至少一个运动链的取向;以及通过将取向测量结果应用于人工神经网络来生成(419)至少一个运动链的预测的取向测量结果。
例如,计算***包括:多个传感器模块(例如,111、113、115、117和/或119)和计算装置(141)。传感器模块中的每个具有惯性测量单元(例如,121或113)并且附接到用户的一部分(例如,107、113、115、106或108)以生成识别用户的相应部分的取向序列的运动数据。惯性测量单元包括微机电***(MEMS)陀螺仪并且还可包括磁力计和MEMS加速度计。计算装置提供由传感器模块测量的取向的序列作为对人工神经网络(例如,116)的输入,至少获得用户的部位的取向测量结果作为来自人工神经网络(例如,116)的输出,使用从人工神经网络获得的取向测量结果来配置或设置代表用户的骨架模型(143)的运动链中的刚性部位的取向,并根据骨架模型(143)的状态控制应用(147)。
例如,人工神经网络可能是先前被训练以做出与使用光学跟踪***生成的取向测量结果相匹配的预测的递归神经网络。递归神经网络包含长短期记忆(LSTM)单元以记住从取向的输入序列得出的状态历史记录的集合,从而预测运动链的当前取向。
因为人工神经网络可预测使用光学跟踪技术生成的取向测量结果,所以不使用光学跟踪来跟踪用户的部位(以及用户的其他部位)。
例如,使用多个传感器模块中的一个跟踪用户的该部位的取向;并且人工神经网络被用来改进基于IMU的测量结果以移除漂移误差和/或累积误差。
例如,甚至不使用包含惯性测量单元的传感器模块跟踪用户的该部位的取向,因为可使用应用运动链中用户的其他部位的取向测量结果作为对人工神经网络的输入来预测其取向。
例如,多个传感器模块(例如,111、113、115、117和/或119)跟踪用户的对应于骨架模型(143)的运动链中的刚性部位(例如,207、203、205、206和/或208)的子集的部分(例如,107、103、105、106和/或108);并且对应于用户的未被跟踪的部位(例如,114、114或101)的刚性部位(例如,215、223或232)在运动链中分离刚性部位(例如,207、203、205、206和/或208)的子集。
例如,训练人工神经网络以预测使用单独的跟踪***生成的取向测量结果;并且人工神经网络提供将由单独的跟踪***为用户的多个传感器模块(例如,111、113、115、117和/或119)附加到的部分(例如,107、103、105、106和/或108)生成的预测的取向测量结果作为输出。
例如,要训练人工神经网络,将传感器模块的集合附接到执行多个运动序列的人以从传感器模块的集合生成第一取向测量结果和第二取向测量结果。监督机器学习技术用于训练人工神经网络以基于第一取向测量结果来预测第二取向测量结果。
例如,使用第一种技术测量第一取向测量结果;使用第二种技术测量第二取向测量结果;并且训练人工神经网络以基于使用第一种技术(例如,基于IMU的跟踪)生成的测量结果来预测使用第二种技术(例如,光学跟踪)做出的测量结果。
例如,当发现人工神经网络在一些场景中具有不准确的预测时,可基于结合此类场景做出的更多测量结果而使用强化学习技术进一步训练人工神经网络。
在一些实例中,第二取向测量结果识别多个传感器模块的取向;并且第一取向测量结果识别多个传感器模块的子集的取向,使得可将使用一种跟踪技术(例如,基于IMU的跟踪)做出的传感器模块的子集的测量结果与人工神经网络一起使用,以预测使用另一种跟踪技术(例如,光学跟踪)做出的传感器模块的整个集合的取向测量结果。
在其他实例中,第一取向测量结果识别多个传感器模块的第一子集的取向;并且第二取向测量结果识别多个传感器模块的第二子集的取向,使得来自传感器装置的一个子集的测量结果可用于预测由传感器装置的另一子集做出的测量结果。
通过用从用户的一个或多个部分的图像确定的预定义特征的取向来增强对递归神经网络(RNN)的输入,可进一步改进上面讨论的技术。借助于特征的取向的额外输入,RNN可做出更准确的预测和/或允许省略更多的传感器装置。例如,可使用配置在头戴式显示器(127)上的相机(126)来捕获图像;并且可使用人工神经网络(ANN)来处理图像,以按图10至图12中示出的方式确定预定义特征的取向。
图10至图12示出了处理示出用户的一部分的图像,以确定用户的该部分的预定义特征的取向。
图10示出了可使用配置在头戴式显示器(127)上的相机(126)捕获的图像(450)。任选地,具有与臂模块(113)中的IMU(131)相似的惯性测量单元的传感器装置(451)可被配置成具有适于穿戴在食指的中指骨(453)上的环的形状因数。传感器装置(451)可配置有触摸板,所述触摸板可由拇指(455)触摸以生成触摸输入。
图像(450)可被处理为ANN的输入,以预测用户的该部分的预定义特征(601至603)的取向。
在一些实施方案中,以黑/白格式将由相机(126)捕获的图10图像(450)转换成与图11的图像(500)相似的图像以进行处理,从而辨识预定义特征的取向。例如,由相机(126)捕获的图10图像(450)可由ANN(501)处理以确定特征在所连接的手掌中的取向(503),所述特征诸如前臂(613)、手腕(607)、手掌(611)、拇指的远端指骨(605)、拇指的中指骨(607)、食指的远端指骨(603)、食指的中指骨(615)、食指的近端(609)和食指的掌骨(611),如图12中所示。任选地,***以黑/白格式(500)将原始图像(450)从较高分辨率转换成较低分辨率,以促进辨识特征(例如,前臂(613)、手腕(607)、手掌(611)、远端指骨(617和605)、中间指骨(615和607)以及近端指骨(609)和掌骨(611),如图12中所示)的取向(503)。
例如,ANN(501)可能是使用训练数据集训练的卷积神经网络(CNN)。可通过捕获用户的多个图像来获得训练数据集。人类操作员可查看图像以识别表示特征的矢量(例如,603、601、609、611、605、607、613)。可相对于用户的骨架模型(200)的参考系来识别所述矢量。监督机器学习技术可用于训练CNN以从图像中预测矢量,其中经预测的矢量与由人类操作员识别的矢量之间的差异减小/最小化。
图13示出了一种用于训练递归神经网络(RNN)(307)的方法。例如,可使用图13的方法来生成图1和/或图2的预测模型(116)。
在图13中,使用两个跟踪***(301、302)跟踪/测量人类运动(303)。例如,图2的基于惯性的***可用作跟踪***A(301);并且光学跟踪***可用作跟踪***B(302)。此外,头戴式相机(126)可用于在人类运动(303)期间捕获用户的部分的图像(450)。ANN(501)可使用上面结合图10至图12讨论的技术从图像(450)中确定预定义特征的取向(1301)。预定义特征可在用户的部分上,其中在跟踪***A(301)中使用的跟踪装置位于所述部分上。
例如,人可穿戴传感器装置(111、113、115、117和119),所述传感器装置包含用于基于惯性的***的IMU(例如,121、131、……)。要训练递归神经网络(RNN)(307),可将光学标记物附接到人以用于光学跟踪***(例如,302)。此外,配置在头戴式显示器(127)上的相机(126)可用于捕获图像(450),以生成在用户的部位上或附近的特征的取向(1301),针对所述部位跟踪人类运动(303)。
任选地,光学标记物可一体地形成在传感器装置(111、113、115、117和119)上以跟踪运动(303),从而训练包括递归神经网络(RNN)(307)的预测模型(116)。
可同时使用跟踪***A和跟踪***B(301、302)来测量/跟踪人的部位(诸如头部(107)、臂(103、105、112、114)和手(106和108)以及躯干(101))的位置和/或取向,以分别生成测量结果A和测量结果B(305、306)。同时地,相机(126)可捕获图像(450)以确定用户的在图像(450)中可见的部分的特征的取向。例如,所述特征可包括臂(103、105、112、114)和手(106和108)以及躯干(101)、手指、手腕、手掌等的取向矢量。
可使用监督机器学习技术来训练递归神经网络(RNN)(307)以基于由跟踪***A(301)(例如,如图2中示出的基于惯性的***)生成的测量结果A(305)以及使用ANN(501)根据由相机(126)捕获的图像(450)确定的特征的取向(1301)来预测由跟踪***B(302)(例如,光学跟踪***、另一跟踪***或跟踪***的组合)生成的测量结果B(306)。监督机器学习技术调整递归神经网络(RNN)(307)中的参数,以最小化实际测量结果B(306)与使用测量结果A(305)和特征取向(1301)作为对递归神经网络(RNN)(307)的输入而做出的预测之间的差异。具有经调整的参数的递归神经网络(RNN)(307)提供RNN模型(309),该RNN模型可用作图1和/或图2中的预测模型(116)。
递归神经网络(RNN)(307)可包括长短期记忆(LSTM)单元的网络,以基于做出了何种预测而选择性地记住状态的历史记录。
可以预定时间间隔对由执行人类运动(303)的人所执行的动作序列进行采样,以获得用于训练递归神经网络(RNN)(307)的测量结果(305和306)。可以相同的时间间隔或不同的时间间隔(例如,大于对测量结果(305和306)进行取样的时间间隔)捕获图像(450)。
在一些实例中,一些动作序列多次重复和/或以不同的速度重复;并且时间测量的缩放和/或双指数平滑可应用于输入参数以对准序列的数据集和/或使时标正规化。
在训练了RNN模型(309)以具有预测使用跟踪***B(302)生成的测量结果B(306)的能力之后,不再需要使用跟踪***B(302)。例如,可在制造设施和/或开发商的设施中开发RNN模型(309)。传感器模块(例如,111、113、……、119)的用户不需要穿戴在跟踪***B(302)中使用的光学标记物或其他装置,如图14中所示。
图14示出了用于使用RNN基于一个跟踪***的移动测量结果和由头戴式相机(126)捕获的图像来预测另一跟踪***的移动测量结果的方法。
在图14中,跟踪***A(301)(例如,图2中示出的基于惯性的***)被用来在没有跟踪***B(302)(例如,光学跟踪***)的情况下跟踪用户的用户运动(304)。从由相机(126)捕获的图像(450)使用ANN(501)确定特征取向(1301)。特征取向和使用跟踪***A(301)(例如,图2中示出的基于惯性的***)测量的用户运动(304)的测量结果A(315)在RNN模型(309)中用于生成对将由跟踪***B(302)生成的测量结果B的预测(316)。可将测量结果B的预测(316)提供给运动处理器(145)以控制骨架模型(143)(例如,如图3中所示),就好像使用了跟踪***B(302)来获得测量结果一样。
相似地,可训练具有LSTM单元的RNN模型(309)以使用由具有IMU的传感器模块生成的运动链的部位的取向测量结果和特征取向(1301)来预测由光学跟踪***针对运动链生成的取向测量结果,这允许省略运动链上的一个或多个区段上的IMU。
例如,传感器模块(113和119)使用从传感器模块(113和119)中的IMU(例如,131)生成的测量结果附接到前臂运动链中的上臂(103)和手(119)。RNN模型(309)根据针对用户运动(304)的序列的IMU测量结果以及从图像(450)生成的特征取向(1301)来预测将由光学跟踪***不仅针对前臂运动链中的前臂(112),而且还针对上臂(103)和手(108)生成的取向测量结果。例如,传感器模块(例如,451和113)可放置在手指和上臂上;并且RNN模型(309)可被配置成基于来自传感器模块(例如,451和133)的测量结果和来自头戴式相机(126)的图像(450)来预测具有手指的手以及连接手和上臂的前臂的取向测量结果。在运动处理器(145)中使用预测的取向测量结果来配置骨架(143)的对应前臂运动链,包括前臂(233)、上臂(203)和手(208)。
在一些实例中,没有必要使用利用一种技术(例如,光学跟踪***)实现的跟踪***来校准使用另一种技术(例如,基于惯性的跟踪***)实现的跟踪***的测量结果。可训练预测模型(116)以在不使用多种训练技术的情况下预测缺失传感器模块的部位的取向,如图15中所示。
图15示出了一种用于训练递归神经网络(RNN)(337)以预测缺失传感器模块的测量结果的方法。
在图15中,测量穿戴了跟踪装置A(331)和跟踪装置B(332)两者的人的人类运动(303)。例如,跟踪装置A(331)对应于如图1和/或图2中示出的头部模块(111)、臂模块(113和115)以及手部模块(117和119)。在图1中,前臂(112和114)和躯干(101)缺失传感器模块。
在图15中,跟踪装置B(332)是附接到前臂(112和114)和躯干(101)的附加IMU模块,所述IMU模块对应于图1和/或图2中的缺失传感器模块。附加IMU模块可能与臂模块(113)相似并经由臂带、肩带和/或其他方式附接到前臂(112和114)以及躯干(101),以将模块附接到执行人类运动的人上的相应位置。
使用由跟踪装置A(331)生成的测量结果A(335)以及从由头戴式相机(126)捕获的图像(450)中生成的特征取向(1301)训练递归神经网络(RNN)(337)以预测由跟踪装置B(332)生成的测量结果B(336)。
可使用由跟踪装置A(331)生成的测量结果A(335)和特征取向(1301)将监督机器学习技术应用于递归神经网络(RNN)(337),以预测由跟踪装置B(333)生成的测量结果B(336)。监督机器学习可调整递归神经网络(RNN)(337)的参数,以最小化测量结果B(336)与其由RNN(337)使用测量结果A(335)和特征取向(1301)做出的预测之间的差异。递归神经网络(RNN)(337)以及其训练的参数提供RNN模型(339),该模型可用于预测跟踪装置B(332)的测量结果。因此,当使用了RNN模型(339)时,可省略跟踪装置B(332),如图16中所示。
图16示出了一种用于使用利用图15的方法训练的RNN基于附接的传感器模块的移动测量结果和从使用头戴式相机(126)捕获的图像中确定的特征取向来预测缺失的传感器模块的移动测量结果。
在图16中,跟踪装置A(331)(例如,图1和/或图2中的111、113、115、117和119)被用来在没有跟踪装置B(332)的情况下跟踪用户的用户运动(304)。特征取向(1301)和使用跟踪装置A(331)(例如,111、113、115、117和119)测量的用户运动(304)的测量结果A(345)被用作RNN模型(339)的输入,以生成对将由跟踪装置B(332)(如果使用了跟踪装置B(332))生成的测量结果B的预测(346)。可将测量结果A(345)和测量结果B的预测(346)提供给运动处理器(145),以控制骨架模型(143)(例如,如图3中所示),就好像跟踪装置A(331)和跟踪装置B(332)都被使用了一样。
RNN模型(339)可训练LSTM单元以使用运动链的剩余部位的由具有IMU的传感器模块生成的取向测量结果(335)以及特征取向(1301)来预测由具有IMU的传感器模块为运动链的一个或多个部位生成的取向测量结果(例如,336),使得对于运动链的一个或多个部位可省略具有IMU的传感器模块(例如,332)。
因为可通过使用传感器模块(113和119)获得预测(346)而无需实际使用传感器模块来跟踪前臂(112)的取向,所以执行用户运动(304)的用户不必将附加传感器模块穿戴在前臂(112)上。因此,改善了用户体验;并且降低了用户的跟踪***的成本。
图17示出了一种用于基于图像和惯性测量单元(IMU)测量结果两者来预测刚性部位的取向的方法。例如,图17的***可在图2和/或图1的***中使用,以使用按图10至图12中示出的方式确定的特征取向并且使用来自附接到骨架模型的刚性部位中的一些的IMU的测量结果控制图3的骨架模型。
在图17中,该方法包括:接收(1701)图像(450),该图像示出了穿戴多个传感器模块(例如,111、113、115、117、119)的用户的一部分。传感器模块中的每个具有惯性测量单元(IMU),该IMU被配置成确定惯性测量单元的取向;并且用户的骨架模型包括具有经由关节连接的多个刚性部位的运动链,如图3中所示。图17的方法还包括:接收(1703)由传感器模块(例如,111、113、115、117、119)为第一刚性部位生成的第一取向测量结果,其中经由用户穿戴的传感器模块(例如,111、113、115、117、119)跟踪运动链中的第一刚性部位的取向;从图像(450、500、600)中确定(1705)用户的部分的一个或多个特征的第二取向测量结果;提供(1707)第一取向测量结果和第二取向测量结果作为对第一人工神经网络(ANN)的输入;由第一人工神经网络(ANN)基于第一取向测量结果和第二取向测量结果生成(1709)一个或多个第二刚性部位的预测的取向测量结果,并且未使用惯性测量单元跟踪运动链中的一个或多个第二刚性部位。
例如,该***可接收(1701)图像(450),该图像示出穿戴多个传感器模块(例如,111、113、115、117、119)的用户的一部分,传感器模块中的每个具有惯性测量单元(IMU),所述IMU被配置成确定惯性测量单元的取向。在一些实施方案中,用户的骨架模型(300)包括运动链,该运动链具有经由关节(例如,肘部)连接的多个刚性部位(例如,前臂、上臂)。在其他实施方案中,经由用户穿戴的传感器模块(例如,111、113、115、117、119)来跟踪运动链中的第一刚性部位的取向。在一些实例中,未使用惯性测量单元(IMU)跟踪运动链中的一个或多个第二刚性部位。
例如,***可接收(1703)由传感器模块(例如,111、113、115、117、119)为第一刚性部位生成的取向测量结果的第一集合。在一些实施方案中,***然后可从图像(450)中确定(1705)用户的部分的一个或多个特征(600)的取向测量结果的第二集合。在一些实例中,可使用第二人工神经网络(ANN)从图像中确定一个或多个特征的取向测量结果的第二集合。在其他实施方案中,第二ANN可以是卷积神经网络(CNN)。
例如,***可提供(1707)取向测量结果的第一集合和取向测量结果的第二集合作为对第一人工神经网络的输入。在一些实施方案中,第一人工神经网络可以是递归神经网络(RNN)。
例如,***可基于取向测量结果的第一集合和取向测量结果的第二集合来预测(1709)一个或多个第二刚性部位的取向测量结果。在一些实施方案中,***可使用第一ANN基于取向测量结果的第一集合和取向测量结果的第二集合来预测一个或多个第二刚性部位的取向测量结果。在一些实施方案中,第一人工神经网络可以是递归神经网络(RNN)。
例如,可周期性地捕获图像(450)。在一些实施方案中,图像可由头戴式显示器(207)中的相机(206)捕获。在其他实施方案中,可周期性地捕获图像(450)以向第二ANN提供输入。在一些实例中,第二ANN可从图像生成一个或多个特征的取向测量结果作为对第一ANN的输入。在一些实施方案中,传感器模块可生成第一刚性部位的取向测量结果作为对第一ANN的输入。在一些实例中,由第二ANN生成一个或多个特征的取向测量结果作为对第一ANN的输入的频率低于由传感器模块生成第一刚性部位的取向测量结果作为对第一ANN的输入的频率。
本公开包括执行这些方法的方法和设备,包括执行这些方法的数据处理***,以及包含指令的计算机可读介质,所述指令在数据处理***上执行时致使***执行这些方法。
例如,计算装置(141)、臂模块(113、115)和/或头部模块(111)可使用一个或多个数据处理***来实现。
典型的数据处理***可包括互连件(例如,总线和***核心逻辑),该互连件互连微处理器和存储器。微处理器通常联接到高速缓存存储器。
互连件将微处理器和存储器互连在一起,并且还经由I/O控制器将它们互连到输入/输出(I/O)装置。I/O装置可能包括显示装置和/或***装置,诸如鼠标、键盘、调制解调器、网络接口、打印机、扫描仪、摄像机和本领域已知的其他装置。在一个实施方案中,当数据处理***是服务器***时,I/O装置中的一些(诸如打印机、扫描仪、鼠标和/或键盘)是任选的。
互连件可包括通过各种桥接器、控制器和/或适配器彼此连接的一个或多个总线。在一个实施方案中,I/O控制器包括用于控制USB***设备的USB(通用串行总线)适配器,和/或用于控制IEEE-1394***设备的IEEE-1394总线适配器。
存储器可包括以下各项中的一者或多者:ROM(只读存储器)、易失性RAM(随机存取存储器)和非易失性存储器(诸如硬盘驱动器、快闪存储器等)。
易失性RAM通常被实现为动态RAM(DRAM),它需要持续供电以便刷新或维持存储器中的数据。非易失性存储器通常是磁性硬盘驱动器、磁性光学驱动器、光学驱动器(例如,DVD RAM)或即使在***断电之后也能维持数据的其他类型的存储器***。非易失性存储器也可以是随机存取存储器。
非易失性存储器可以是直接联接到数据处理***中的其余部件的本地装置。也可使用远离***的非易失性存储器,诸如通过网络接口(诸如调制解调器或以太网接口)联接到数据处理***的网络存储装置。
在本公开中,为了简化描述,将一些功能和操作描述为由软件代码执行或致使。但是,此类表达也用于指定功能是通过处理器(诸如,微处理器)执行代码/指令而发生的。
替代地或组合地,如此处描述的功能和操作可使用具有或不具有软件指令的专用电路来实现,诸如使用专用集成电路(ASIC)或现场可编程门阵列(FPGA)。可使用没有软件指令的硬接线电路或结合软件指令来实现实施方案。因此,所述技术既不限于硬件电路和软件的任何具体组合,也不限于由数据处理***执行的指令的任何特定源。
虽然一个实施方案可在功能齐全的计算机和计算机***中实现,但各种实施方案能够以多种形式作为计算产品分布,并且无论用于实际实现该分布的特定类型的机器或计算机可读介质为何都能够应用。
所公开的至少一些方面可至少部分地在软件中体现。也就是说,可响应于计算机***或其他数据处理***的处理器(诸如微处理器)执行存储器(诸如ROM、易失性RAM、非易失性存储器、高速缓存或远程存储装置)中包含的指令序列,而在所述计算机***或其他数据处理***中执行该技术。
为实现实施方案而执行的例程可作为操作***或称为“计算机程序”的具体应用、部件、程序、对象、模块或指令序列的一部分实现。计算机程序通常包括在不同时间设置在计算机中的各种存储器和存储装置中的一个或多个指令,并且所述一个或多个指令在由计算机中的一个或多个处理器读取和执行时,致使计算机执行为执行涉及各种方面的要素所需的操作。
机器可读介质可用于存储软件和数据,所述软件和数据在由数据处理***执行时使***执行各种方法。可执行软件和数据可存储在各种位置,包括例如ROM、易失性RAM、非易失性存储器和/或高速缓存。该软件和/或数据的部分可存储在这些存储装置中的任何一者中。此外,可从集中式服务器或对等网络获得数据和指令。可在不同的时间并且在不同的通信会话或同一通信会话中从不同的中央服务器和/或对等网络获得数据和指令的不同部分。可在执行应用之前完整地获得数据和指令。替代地,可在需要执行时及时动态地获得数据和指令的部分。因此,不要求数据和指令在特定时间实例全部位于机器可读介质上。
计算机可读介质的示例包括但不限于非暂时性、可记录和不可记录类型的介质,诸如易失性和非易失性存储器装置、只读存储器(ROM)、随机存取存储器(RAM)、快闪存储器装置、软盘和其他可移除磁盘、磁盘存储介质、光存储介质(例如,光盘只读存储器(CDROM)、数字多功能盘(DVD)等)等等。计算机可读介质可存储指令。
指令还可体现在用于电气、光学、声学或其他形式的传播信号(诸如,载波、红外信号、数字信号等)的数字和模拟通信链路中。然而,传播的信号(诸如,载波、红外信号、数字信号等)不是有形的机器可读介质并且没有被配置成存储指令。
一般而言,机器可读介质包括提供(即,存储和/或传输)呈机器(例如,计算机、网络装置、个人数字助理、制造工具、具有一个或多个处理器的集合的任何装置等)可访问的形式的信息的任何机构。
在各种实施方案中,硬连线电路可与软件指令结合使用以实现所述技术。因此,所述技术既不限于硬件电路和软件的任何具体组合,也不限于由数据处理***执行的指令的任何特定源。
在前述说明书中,已经参考其具体示例性实施方案描述了本公开。明显的是,可在不脱离以下权利要求中提出的更广泛的精神和范围的情况下对本公开做出各种修改。因此,说明书和附图应被视为说明性含义而非限制性含义。
Claims (20)
1.一种方法,包括:
接收图像,所述图像示出穿戴多个传感器模块的用户的一部分,所述传感器模块中的每个具有惯性测量单元,所述惯性测量单元被配置成确定所述惯性测量单元的取向,其中所述用户的骨架模型包括具有经由关节连接的多个刚性部位的运动链,其中经由所述用户穿戴的所述传感器模块来跟踪所述运动链中的第一刚性部位的取向;并且
未使用惯性测量单元跟踪所述运动链中的一个或多个第二刚性部位;
接收由所述传感器模块为所述第一刚性部位生成的第一取向测量结果;
从所述图像中确定所述用户的所述部分的一个或多个特征的第二取向测量结果;
提供所述第一取向测量结果和所述第二取向测量结果作为对第一人工神经网络的输入;以及
由所述第一人工神经网络基于所述第一取向测量结果和所述第二取向测量结果生成所述一个或多个第二刚性部位的预测取向测量结果。
2.如权利要求1所述的方法,其中使用第二人工神经网络(ANN)从所述图像中确定所述一个或多个特征的所述第二取向测量结果。
3.如权利要求2所述的方法,其中所述第二ANN是卷积神经网络。
4.如权利要求3所述的方法,其中所述第一人工神经网络是递归神经网络。
5.如权利要求4所述的方法,还包括:
使用头戴式显示器中的相机周期性地捕获图像以向所述第二ANN提供输入,所述第二ANN在频率下从所述图像中生成一个或多个特征的取向测量结果作为所述第一ANN的输入,所述频率低于所述传感器模块生成所述第一刚性部位的取向测量结果作为所述第一ANN的输入的频率。
6.如权利要求5所述的方法,其中训练所述第一人工神经网络以预测所述第二刚性部位的使用光学跟踪***测量的取向测量结果。
7.如权利要求5所述的方法,其中训练所述第一人工神经网络以预测所述第一刚性部位的使用所述光学跟踪***测量的取向测量结果。
8.一种***,包括:
一个或多个处理器;以及
非暂时性计算机可读介质,所述非暂时性计算机可读介质包括一个或多个指令序列,所述一个或多个指令序列在由所述一个或多个处理器执行时致使:
接收图像,所述图像示出穿戴多个传感器模块的用户的一部分,所述传感器模块中的每个具有惯性测量单元,所述惯性测量单元被配置成确定所述惯性测量单元的取向,其中所述用户的骨架模型包括具有经由关节连接的多个刚性部位的运动链,其中经由所述用户穿戴的所述传感器模块来跟踪所述运动链中的第一刚性部位的取向;并且
未使用惯性测量单元跟踪所述运动链中的一个或多个第二刚性部位;
接收由所述传感器模块为所述第一刚性部位生成的第一取向测量结果;
从所述图像中确定所述用户的所述部分的一个或多个特征的第二取向测量结果;
提供所述第一取向测量结果和所述第二取向测量结果作为对第一人工神经网络的输入;以及
由所述第一人工神经网络基于所述第一取向测量结果和所述第二取向测量结果生成所述一个或多个第二刚性部位的预测取向测量结果。
9.如权利要求8所述的***,其中使用第二人工神经网络(ANN)从所述图像中确定所述一个或多个特征的所述第二取向测量结果。
10.如权利要求9所述的***,其中所述第二ANN是卷积神经网络。
11.如权利要求10所述的***,其中所述第一人工神经网络是递归神经网络。
12.如权利要求11所述的***,还包括:
使用头戴式显示器中的相机周期性地捕获图像以向所述第二ANN提供输入,所述第二ANN在频率下从所述图像中生成一个或多个特征的取向测量结果作为所述第一ANN的输入,所述频率低于所述传感器模块生成所述第一刚性部位的取向测量结果作为所述第一ANN的输入的频率。
13.如权利要求12所述的***,其中训练所述第一人工神经网络以预测所述第二刚性部位的使用光学跟踪***测量的取向测量结果。
14.如权利要求12所述的***,其中训练所述第一人工神经网络以预测所述第一刚性部位的使用所述光学跟踪***测量的取向测量结果。
15.一种存储指令的非暂时性计算机存储介质,所述指令在由计算装置执行时致使所述计算装置执行方法,所述方法包括:
接收图像,所述图像示出穿戴多个传感器模块的用户的一部分,所述传感器模块中的每个具有惯性测量单元,所述惯性测量单元被配置成确定所述惯性测量单元的取向,其中所述用户的骨架模型包括具有经由关节连接的多个刚性部位的运动链,其中经由所述用户穿戴的所述传感器模块来跟踪所述运动链中的第一刚性部位的取向;并且
未使用惯性测量单元跟踪所述运动链中的一个或多个第二刚性部位;
接收由所述传感器模块为所述第一刚性部位生成的第一取向测量结果;
从所述图像中确定所述用户的所述部分的一个或多个特征的第二取向测量结果;
提供所述第一取向测量结果和所述第二取向测量结果作为对第一人工神经网络的输入;以及
由所述第一人工神经网络基于所述第一取向测量结果和所述第二取向测量结果生成所述一个或多个第二刚性部位的预测取向测量结果。
16.如权利要求15所述的非暂时性计算机存储介质,其中使用第二人工神经网络(ANN)从所述图像中确定所述一个或多个特征的所述第二取向测量结果。
17.如权利要求16所述的非暂时性计算机存储介质,其中所述第二ANN是卷积神经网络。
18.如权利要求17所述的非暂时性计算机存储介质,其中所述第一人工神经网络是递归神经网络。
19.如权利要求18所述的非暂时性计算机存储介质,还包括:
使用头戴式显示器中的相机周期性地捕获图像以向所述第二ANN提供输入,所述第二ANN在频率下从所述图像中生成一个或多个特征的取向测量结果作为所述第一ANN的输入,所述频率低于所述传感器模块生成所述第一刚性部位的取向测量结果作为所述第一ANN的输入的频率。
20.如权利要求19所述的非暂时性计算机存储介质,其中训练所述第一人工神经网络以预测所述第二刚性部位的使用光学跟踪***测量的取向测量结果。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/576,672 US11175729B2 (en) | 2019-09-19 | 2019-09-19 | Orientation determination based on both images and inertial measurement units |
US16/576,672 | 2019-09-19 | ||
PCT/US2020/047222 WO2021055133A1 (en) | 2019-09-19 | 2020-08-20 | Orientation determination based on both images and inertial measurement units |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114503057A true CN114503057A (zh) | 2022-05-13 |
Family
ID=74881843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080066111.6A Pending CN114503057A (zh) | 2019-09-19 | 2020-08-20 | 基于图像和惯性测量单元两者的取向确定 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11175729B2 (zh) |
EP (1) | EP4031959A1 (zh) |
CN (1) | CN114503057A (zh) |
WO (1) | WO2021055133A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11474593B2 (en) | 2018-05-07 | 2022-10-18 | Finch Technologies Ltd. | Tracking user movements to control a skeleton model in a computer system |
US11531392B2 (en) * | 2019-12-02 | 2022-12-20 | Finchxr Ltd. | Tracking upper arm movements using sensor modules attached to the hand and forearm |
CN113900516A (zh) * | 2021-09-27 | 2022-01-07 | 阿里巴巴达摩院(杭州)科技有限公司 | 数据处理方法、装置、电子设备和存储介质 |
TWI814208B (zh) * | 2021-09-28 | 2023-09-01 | 宏達國際電子股份有限公司 | 虛擬影像顯示裝置及其虛擬影像的物件的選取方法 |
WO2023113694A2 (en) * | 2021-12-17 | 2023-06-22 | Refract Technologies Pte Ltd | Tracking system for simulating body motion |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090322763A1 (en) * | 2008-06-30 | 2009-12-31 | Samsung Electronics Co., Ltd. | Motion Capture Apparatus and Method |
US20130222565A1 (en) * | 2012-02-28 | 2013-08-29 | The Johns Hopkins University | System and Method for Sensor Fusion of Single Range Camera Data and Inertial Measurement for Motion Capture |
CN106922185A (zh) * | 2014-09-30 | 2017-07-04 | 微软技术许可有限责任公司 | 经由可穿戴和移动设备的基于自然运动的控制 |
US20180020978A1 (en) * | 2016-07-25 | 2018-01-25 | Patrick Kaifosh | System and method for measuring the movements of articulated rigid bodies |
CN109923500A (zh) * | 2016-08-22 | 2019-06-21 | 奇跃公司 | 具有深度学习传感器的增强现实显示装置 |
US20190212359A1 (en) * | 2018-01-11 | 2019-07-11 | Finch Technologies Ltd. | Correction of Accumulated Errors in Inertial Measurement Units Attached to a User |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2040903C (en) | 1991-04-22 | 2003-10-07 | John G. Sutherland | Neural networks |
US6982697B2 (en) | 2002-02-07 | 2006-01-03 | Microsoft Corporation | System and process for selecting objects in a ubiquitous computing environment |
JP2010534316A (ja) | 2007-07-10 | 2010-11-04 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 対象物の動きを捕捉するシステム及び方法 |
GB0720412D0 (en) | 2007-10-18 | 2007-11-28 | Melexis Nv | Combined mems accelerometer and gyroscope |
US9019349B2 (en) | 2009-07-31 | 2015-04-28 | Naturalpoint, Inc. | Automated collective camera calibration for motion capture |
US8279418B2 (en) | 2010-03-17 | 2012-10-02 | Microsoft Corporation | Raster scanning for depth detection |
US10321873B2 (en) | 2013-09-17 | 2019-06-18 | Medibotics Llc | Smart clothing for ambulatory human motion capture |
US10716510B2 (en) | 2013-09-17 | 2020-07-21 | Medibotics | Smart clothing with converging/diverging bend or stretch sensors for measuring body motion or configuration |
JP6392756B2 (ja) | 2012-09-05 | 2018-09-19 | ボディ パス リミテッド | 2次元画像シーケンスから正確な身体サイズ測定値を得るためのシステム及び方法 |
US20150177842A1 (en) | 2013-12-23 | 2015-06-25 | Yuliya Rudenko | 3D Gesture Based User Authorization and Device Control Methods |
US9524580B2 (en) | 2014-01-06 | 2016-12-20 | Oculus Vr, Llc | Calibration of virtual reality systems |
US10019059B2 (en) | 2014-08-22 | 2018-07-10 | Sony Interactive Entertainment Inc. | Glove interface object |
US9552070B2 (en) | 2014-09-23 | 2017-01-24 | Microsoft Technology Licensing, Llc | Tracking hand/body pose |
US10606341B2 (en) | 2015-02-22 | 2020-03-31 | Technion Research & Development Foundation Limited | Gesture recognition using multi-sensory data |
US10388053B1 (en) | 2015-03-27 | 2019-08-20 | Electronic Arts Inc. | System for seamless animation transition |
US9911219B2 (en) | 2015-05-13 | 2018-03-06 | Intel Corporation | Detection, tracking, and pose estimation of an articulated body |
US9676098B2 (en) | 2015-07-31 | 2017-06-13 | Heinz Hemken | Data collection from living subjects and controlling an autonomous robot using the data |
US10318008B2 (en) | 2015-12-15 | 2019-06-11 | Purdue Research Foundation | Method and system for hand pose detection |
US10037624B2 (en) | 2015-12-29 | 2018-07-31 | Microsoft Technology Licensing, Llc | Calibrating object shape |
US10019629B2 (en) | 2016-05-31 | 2018-07-10 | Microsoft Technology Licensing, Llc | Skeleton-based action detection using recurrent neural network |
CN106127120B (zh) | 2016-06-16 | 2018-03-13 | 北京市商汤科技开发有限公司 | 姿势估计方法和装置、计算机*** |
US10129691B2 (en) | 2016-10-14 | 2018-11-13 | OneMarket Network LLC | Systems and methods to determine a location of a mobile device |
US20180293756A1 (en) | 2016-11-18 | 2018-10-11 | Intel Corporation | Enhanced localization method and apparatus |
US10496157B2 (en) | 2017-05-09 | 2019-12-03 | Microsoft Technology Licensing, Llc | Controlling handheld object light sources for tracking |
US10614591B2 (en) | 2017-05-31 | 2020-04-07 | Google Llc | Hand tracking based on articulated distance field |
US11474593B2 (en) | 2018-05-07 | 2022-10-18 | Finch Technologies Ltd. | Tracking user movements to control a skeleton model in a computer system |
US10416755B1 (en) | 2018-06-01 | 2019-09-17 | Finch Technologies Ltd. | Motion predictions of overlapping kinematic chains of a skeleton model used to control a computer system |
US11009941B2 (en) | 2018-07-25 | 2021-05-18 | Finch Technologies Ltd. | Calibration of measurement units in alignment with a skeleton model to control a computer system |
EP3843617B1 (en) | 2018-08-31 | 2023-10-04 | Facebook Technologies, LLC. | Camera-guided interpretation of neuromuscular signals |
-
2019
- 2019-09-19 US US16/576,672 patent/US11175729B2/en active Active
-
2020
- 2020-08-20 WO PCT/US2020/047222 patent/WO2021055133A1/en unknown
- 2020-08-20 EP EP20864415.3A patent/EP4031959A1/en not_active Withdrawn
- 2020-08-20 CN CN202080066111.6A patent/CN114503057A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090322763A1 (en) * | 2008-06-30 | 2009-12-31 | Samsung Electronics Co., Ltd. | Motion Capture Apparatus and Method |
US20130222565A1 (en) * | 2012-02-28 | 2013-08-29 | The Johns Hopkins University | System and Method for Sensor Fusion of Single Range Camera Data and Inertial Measurement for Motion Capture |
CN106922185A (zh) * | 2014-09-30 | 2017-07-04 | 微软技术许可有限责任公司 | 经由可穿戴和移动设备的基于自然运动的控制 |
US20180020978A1 (en) * | 2016-07-25 | 2018-01-25 | Patrick Kaifosh | System and method for measuring the movements of articulated rigid bodies |
CN109923500A (zh) * | 2016-08-22 | 2019-06-21 | 奇跃公司 | 具有深度学习传感器的增强现实显示装置 |
US20190212359A1 (en) * | 2018-01-11 | 2019-07-11 | Finch Technologies Ltd. | Correction of Accumulated Errors in Inertial Measurement Units Attached to a User |
Also Published As
Publication number | Publication date |
---|---|
US20210089116A1 (en) | 2021-03-25 |
EP4031959A1 (en) | 2022-07-27 |
US11175729B2 (en) | 2021-11-16 |
WO2021055133A1 (en) | 2021-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11009941B2 (en) | Calibration of measurement units in alignment with a skeleton model to control a computer system | |
US10860091B2 (en) | Motion predictions of overlapping kinematic chains of a skeleton model used to control a computer system | |
US11474593B2 (en) | Tracking user movements to control a skeleton model in a computer system | |
US10976863B1 (en) | Calibration of inertial measurement units in alignment with a skeleton model to control a computer system based on determination of orientation of an inertial measurement unit from an image of a portion of a user | |
US11587242B1 (en) | Real-time processing of handstate representation model estimates | |
US10817795B2 (en) | Handstate reconstruction based on multiple inputs | |
US10775946B2 (en) | Universal handheld controller of a computer system | |
US11069148B2 (en) | Visualization of reconstructed handstate information | |
US20180335843A1 (en) | Tracking finger movements to generate inputs for computer systems | |
CN114503057A (zh) | 基于图像和惯性测量单元两者的取向确定 | |
US11079860B2 (en) | Kinematic chain motion predictions using results from multiple approaches combined via an artificial neural network | |
US11054923B2 (en) | Automatic switching between different modes of tracking user motions to control computer applications | |
Fang et al. | A novel data glove using inertial and magnetic sensors for motion capture and robotic arm-hand teleoperation | |
US11237632B2 (en) | Ring device having an antenna, a touch pad, and/or a charging pad to control a computing device based on user motions | |
US11009964B2 (en) | Length calibration for computer models of users to generate inputs for computer systems | |
WO2020009715A2 (en) | Tracking user movements to control a skeleton model in a computer system | |
US20210068674A1 (en) | Track user movements and biological responses in generating inputs for computer systems | |
US20230011082A1 (en) | Combine Orientation Tracking Techniques of Different Data Rates to Generate Inputs to a Computing System | |
US20230214027A1 (en) | Reduction of Time Lag Between Positions and Orientations Being Measured and Display Corresponding to the Measurements | |
US20210318759A1 (en) | Input device to control a computing device with a touch pad having a curved surface configured to sense touch input | |
US20210072820A1 (en) | Sticky device to track arm movements in generating inputs for computer systems | |
US20230103932A1 (en) | Motion Sensor Modules with Dynamic Protocol Support for Communications with a Computing Device | |
Zhou et al. | CSM-420 A Survey-Human Movement Tracking and Stroke Rehabilitation |
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 |