CN113111678B - 一种用户的肢体节点的位置确定方法、装置、介质及系统 - Google Patents
一种用户的肢体节点的位置确定方法、装置、介质及系统 Download PDFInfo
- Publication number
- CN113111678B CN113111678B CN201911358174.4A CN201911358174A CN113111678B CN 113111678 B CN113111678 B CN 113111678B CN 201911358174 A CN201911358174 A CN 201911358174A CN 113111678 B CN113111678 B CN 113111678B
- Authority
- CN
- China
- Prior art keywords
- occluded
- time
- limb
- limb node
- motion
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000006073 displacement reaction Methods 0.000 claims abstract description 172
- 238000012549 training Methods 0.000 claims description 73
- 238000013528 artificial neural network Methods 0.000 claims description 65
- 230000000306 recurrent effect Effects 0.000 claims description 63
- 230000001133 acceleration Effects 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 48
- 230000015654 memory Effects 0.000 claims description 33
- 238000003860 storage Methods 0.000 claims description 14
- 230000002457 bidirectional effect Effects 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 9
- 230000006403 short-term memory Effects 0.000 claims description 5
- 210000003414 extremity Anatomy 0.000 description 509
- 210000000707 wrist Anatomy 0.000 description 47
- 210000002569 neuron Anatomy 0.000 description 37
- 238000010586 diagram Methods 0.000 description 17
- 208000006440 Open Bite Diseases 0.000 description 16
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000004913 activation Effects 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 4
- 210000001513 elbow Anatomy 0.000 description 4
- 210000002832 shoulder Anatomy 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 210000003423 ankle Anatomy 0.000 description 3
- 210000003128 head Anatomy 0.000 description 3
- 210000003127 knee Anatomy 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000000386 athletic effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 238000003874 inverse correlation nuclear magnetic resonance spectroscopy Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本申请涉及一种确定用户的至少一个肢体节点的位置的方法,包括:在至少一个肢体节点未被遮挡的情况下,根据至少一个肢体节点在第一时刻的位置和在第二时刻的位置,确定至少一个肢体节点在第一时刻和第二时刻之间的第一时间段内的第一位移;获取与至少一个肢体节点在第一时间段内的运动相关的第一运动数据;至少部分地根据第一位移和第一运动数据,训练推测模型,其中推测模型用于在至少一个肢体节点被遮挡的情况下,推测至少一个肢体节点的被遮挡位置。在本申请中,利用存在直接的对应关系的运动数据和位移来训练推测模型,可以提高推测模型的准确性和鲁棒性。本申请还涉及一种确定用户的至少一个肢体节点的位置的装置、介质及系统。
Description
技术领域
本申请的一个或多个实施例通常涉及人工智能领域,具体涉及一种用户的肢体节点的位置确定方法、装置、介质及系统。
背景技术
基于图像的人体姿态识别中,经常遇到部分肢体不可见(被遮挡、超出摄像头视野等)的情况,此时该部分肢体的姿态通常难以准确估计,给上层的应用带来不便。
在现有技术中,通常直接通过深度学习(如神经网络)猜测被遮挡肢体的位置。具体方法为,在训练样本集中,人工标注被遮挡部位的可能姿态,通过训练让模型学习这些被遮挡的情况,并在使用过程中,直接推测被遮挡部分肢体的姿态。
发明内容
以下从多个方面介绍本申请,以下多个方面的实施方式和有益效果可互相参考。
第一方面,本申请实施例提供了一种确定用户的至少一个肢体节点的位置的方法,该方法包括在至少一个肢体节点未被遮挡的情况下,根据至少一个肢体节点在第一时刻的位置和在第二时刻的位置,确定至少一个肢体节点在第一时刻和第二时刻之间的第一时间段内的第一位移;获取与至少一个肢体节点在第一时间段内的运动相关的第一运动数据;至少部分地根据第一位移和第一运动数据,训练推测模型,其中推测模型用于在至少一个肢体节点被遮挡的情况下,推测至少一个肢体节点的被遮挡位置。
根据本申请的实施例,在用户肢体的至少一个肢体节点未被遮挡的情况下,利用用户肢体的至少一个肢体节点的运动数据和位移来训练推测模型,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中在训练推测模型时以人工猜测被遮挡部位的可能姿态作为训练标签,本申请实施例的推测模型的准确性和鲁棒性会更高。
在一些实施例中,第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
在一些实施例中,根据至少一个肢体节点在第一时刻的位置和在第二时刻的位置,确定至少一个肢体节点在第一时刻和第二时刻之间的第一时间段内的第一位移,还包括:在第一时刻获取第一图像帧,并且在第二时刻获取第二图像帧;根据第一图像帧中至少一个肢体节点的位置和在第二图像帧中至少一个肢体节点的位置,确定至少一个肢体节点在第一时间段内的第一位移。
在一些实施例中,至少部分地根据第一位移和第一运动数据,训练推测模型,还包括:至少部分地将第一运动数据作为特征输入并且将第一位移作为目标类别,训练推测模型。
在一些实施例中,推测模型包括循环神经网络(recurrent neural network,RNN)、长短期记忆(long short-term memory,LSTM)网络、门控循环单元(gated recurrentunit,GRU)网络、双向循环神经网络(bidirectional recurrent neural network,BRNN)中的至少一种。
在一些实施例中,该方法还包括:在至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与第二时间段内的运动相关的第二运动数据,其中第二时间段包括至少一个肢体节点在未被遮挡的时刻到被遮挡的时刻之间的时间段;利用推测模型,基于第二运动数据,推测至少一个肢体节点在第二时间段内的第二位移;至少部分地基于第二位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置,确定至少一个肢体节点在被遮挡的情况下的被遮挡位置。
根据本申请的实施例,基于推测模型,利用用户肢体的至少一个肢体节点在从未被遮挡到被遮挡的时间段内的运动数据来推测用户肢体的至少一个肢体节点在该时间段内的位移,进而得到至少一个肢体节点在被遮挡的情况下的被遮挡位置,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中利用人工猜测的被遮挡部位的可能姿态,根据本申请实施例推测的位移的准确性更高。
在一些实施例中,第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
在一些实施例中,第二时间段的长度与第一时间段的长度相同。
在一些实施例中,该方法还包括:在至少一个肢体节点在从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第三时间段内的运动相关的第三运动数据,其中,第三时间段包括在未被遮挡的时刻和再次未被遮挡的时刻之间的时间段;利用推测模型,基于第三运动数据,推测至少一个肢体节点在第三时间段内的第三位移;至少部分地基于第三位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置和在再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定至少一个肢体节点在被遮挡的情况下的被遮挡位置。
根据本申请的实施例,以肢体节点在被遮挡时刻和再次未被遮挡的时刻之间的运动数据作为后验知识,推测肢体节点在未被遮挡时刻和被遮挡时刻之间的位移,可以提高位移推测的准确性。
在一些实施例中,第三运动数据包括第三加速度、第三角速度、第三运动方向以及第三运动模式中的至少一个。
在一些实施例中,其中第三时间段的长度与第一时间段的长度相同。
在一些实施例中,该方法还包括:接收用于至少一个其他用户的其他推测模型,其中其他推测模型用于在至少一个其他用户的至少一个肢体节点被遮挡的情况下,推测至少一个其他用户的至少一个肢体节点的被遮挡位置;对推测模型和其他推测模型进行集成,并获取集成的推测模型;在用户的至少一个肢体节点被遮挡的情况下,利用集成的推测模型推测至少一个肢体节点的被遮挡位置。
根据本申请的实施例,通过对用户的推测模型和其他用户的推测模型进行集成,可以提升对用户肢体节点的位移的推测精度,尤其是在用户的训练数据较少导致用户的推测模型的推测性能较差的情况下。
第二方面,本申请实施例提供了一种确定用户的至少一个肢体节点的位置的方法,该方法包括:在至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中第一时间段包括至少一个肢体节点在未被遮挡的时刻到被遮挡的时刻之间的时间段;利用推测模型,基于第一运动数据,推测至少一个肢体节点在第一时间段内的第一位移;至少部分地基于第一位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置,确定至少一个肢体节点在被遮挡的时刻的被遮挡位置。
根据本申请的实施例,基于推测模型,利用用户肢体的至少一个肢体节点在从未被遮挡到被遮挡的时间段内的运动数据来推测用户肢体的至少一个肢体节点在该时间段内的位移,进而得到至少一个肢体节点在被遮挡的时刻的被遮挡位置,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中利用人工猜测的被遮挡部位的可能姿态,根据本申请实施例推测的位移的准确性更高。
在一些实施例中,第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
在一些实施例中,推测模型包括至少部分地基于至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中至少一个肢体节点在第二时间段内未被遮挡,并且第二时间段的长度与第一时间段的长度相同。
在一些实施例中,第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个
在一些实施例中,推测模型包括循环神经网络、长短期记忆网络、门控循环单元中的至少一种。
在一些实施例中,至少部分地基于第一位移以及至少一个肢体节点在未被遮挡时刻的未被遮挡位置,确定至少一个肢体节点在被遮挡时刻的被遮挡位置,还包括:在未被遮挡的时刻获取至少一个肢体节点的未被遮挡图像帧,并根据未被遮挡图像帧确定未被遮挡位置。
第三方面,本申请实施例提供了一种确定用户的至少一个肢体节点的位置的方法,该方法包括,在用户的至少一个肢体节点从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中第一时间段包括在未被遮挡的时刻和再次未被遮挡的时刻之间的时间段;利用推测模型,基于第一运动数据,推测至少一个肢体节点在第一时间段内的第一位移;至少部分地基于第一位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置和再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定至少一个肢体节点在被遮挡的时刻的被遮挡位置。
根据本申请的实施例,基于推测模型,利用用户肢体的至少一个肢体节点在从未被遮挡到再次未被遮挡的时间段内的运动数据来推测用户肢体的至少一个肢体节点在该时间段内的位移,进而得到至少一个肢体节点在被遮挡的时刻的被遮挡位置,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中利用人工猜测的被遮挡部位的可能姿态,根据本申请实施例推测的位移的准确性更高,另外,以肢体节点在被遮挡时刻和再次未被遮挡的时刻之间的运动数据作为后验知识,推测肢体节点在未被遮挡时刻和被遮挡时刻之间的位移,可以进一步提高位移推测的准确性。
在一些实施例中,第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
在一些实施例中,推测模型包括至少部分地基于至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中至少一个肢体节点在第二时间段内未被遮挡,并且其中第二时间段的长度与从未被遮挡的时刻到被遮挡的时刻之间的时间段的长度相同,和/或,第二时间段的长度与从被遮挡的时刻到再次未被遮挡的时刻之间的时间段的长度相同。
在一些实施例中,第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
在一些实施例中,推测模型包括双向循环神经网络。
在一些实施例中,第一位移包括从未被遮挡位置到被遮挡位置的位移和从被遮挡位置到再次未被遮挡位置的位移中的至少一个。
在一些实施例中,至少部分地基于第一位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置和再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定至少一个肢体节点在被遮挡情况下的被遮挡位置,还包括:获取至少一个肢体节点在未被遮挡的时刻的未被遮挡图像帧,并根据未被遮挡图像帧确定未被遮挡位置;和/或获取至少一个肢体节点在再次未被遮挡的时刻的再次未被遮挡图像帧,并根据再次未被遮挡图像帧确定再次未被遮挡位置。
第四方面,本申请实施例提供了一种计算机可读存储介质,在该计算机可读存储上存储有指令,当指令在机器上运行时,使得机器执行以上任意一种方法。
第五方面,本申请实施例提供了一种确定用户的至少一个肢体节点的位置的系统,该系统包括:处理器;存储器,在存储器上存储有指令,当指令被处理器运行时,使得处理器执行以上任意一种方法。
第六方面,本申请实施例提供了一种确定用户的至少一个肢体节点的位置的装置,该装置包括:图像处理模块,用于在至少一个肢体节点未被遮挡的情况下,根据至少一个肢体节点在第一时刻的位置和在第二时刻的位置,确定至少一个肢体节点在第一时刻和第二时刻之间的第一时间段内的第一位移;运动数据获取模块,获取与至少一个肢体节点在第一时间段内的运动相关的第一运动数据;推测模型训练模块,至少部分地根据第一位移和第一运动数据,训练推测模型,其中推测模型用于在至少一个肢体节点被遮挡的情况下,推测至少一个肢体节点的被遮挡位置。
根据本申请的实施例,在用户肢体的至少一个肢体节点未被遮挡的情况下,利用用户肢体的至少一个肢体节点的运动数据和位移来训练推测模型,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中在训练推测模型时以人工猜测被遮挡部位的可能姿态作为训练标签,本申请实施例的推测模型的准确性和鲁棒性会更高。
在一些实施例中,第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
在一些实施例中,所述装置还包括图像采集模块,用于在所述第一时刻获取第一图像帧,并且在所述第二时刻获取第二图像帧;并且其中,所述图像处理模块根据所述第一图像帧中所述至少一个肢体节点的位置和在所述第二图像帧中所述至少一个肢体节点的位置,确定所述至少一个肢体节点在所述第一时间段内的所述第一位移。
在一些实施例中,推测模型训练模块用于至少部分地根据第一位移和第一运动数据,训练推测模型,包括用于:至少部分地将第一运动数据作为特征输入并且将第一位移作为目标类别,训练推测模型。
在一些实施例中,推测模型包括循环神经网络、长短期记忆网络、门控循环单元网络、双向循环神经网络中的至少一种。
在一些实施例中,运动数据获取模块还用于,在至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与第二时间段内的运动相关的第二运动数据,其中第二时间段包括至少一个肢体节点在未被遮挡的时刻到被遮挡的时刻之间的时间段;和装置还包括推测模块,推测模块用于,利用推测模型,基于第二运动数据,推测至少一个肢体节点在第二时间段内的第二位移;以及推测模块还用于,至少部分地基于第二位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置,确定至少一个肢体节点在被遮挡的情况下的被遮挡位置。
根据本申请的实施例,基于推测模型,利用用户肢体的至少一个肢体节点在从未被遮挡到被遮挡的时间段内的运动数据来推测用户肢体的至少一个肢体节点在该时间段内的位移,进而得到至少一个肢体节点在被遮挡的情况下的被遮挡位置,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中利用人工猜测的被遮挡部位的可能姿态,根据本申请实施例推测的位移的准确性更高。
在一些实施例中,第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
在一些实施例中,第二时间段的长度与第一时间段的长度相同。
在一些实施例中,运动数据获取模块还用于,在至少一个肢体节点在从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第三时间段内的运动相关的第三运动数据,其中,第三时间段包括在未被遮挡的时刻和再次未被遮挡的时刻之间的时间段;装置还包括推测模块,推测模块用于,利用推测模型,基于第三运动数据,推测至少一个肢体节点在第三时间段内的第三位移;以及推测模块还用于,至少部分地基于第三位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置和在再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定至少一个肢体节点在被遮挡的情况下的被遮挡位置。
根据本申请的实施例,以肢体节点在被遮挡时刻和再次未被遮挡的时刻之间的运动数据作为后验知识,推测肢体节点在未被遮挡时刻和被遮挡时刻之间的位移,可以提高位移推测的准确性。
在一些实施例中,第三运动数据包括第三加速度、第三角速度、第三运动方向以及第三运动模式中的至少一个。
在一些实施例中,其中第三时间段的长度与第一时间段的长度相同。
在一些实施例中,装置还包括通信模块,用于接收用于至少一个其他用户的其他推测模型,其中其他推测模型用于在至少一个其他用户的至少一个肢体节点被遮挡的情况下,推测至少一个其他用户的至少一个肢体节点的被遮挡位置;和推测模型训练模块还用于,对推测模型和其他推测模型进行集成,并获取集成的推测模型;以及推测模块还用于,在用户的至少一个肢体节点被遮挡的情况下,利用集成的推测模型推测至少一个肢体节点的被遮挡位置。
根据本申请的实施例,通过对用户的推测模型和其他用户的推测模型进行集成,可以提升对用户肢体节点的位移的推测精度,尤其是在用户的训练数据较少导致用户的推测模型的推测性能较差的情况下。
第七方面,本申请实施例提供了一种确定用户的至少一个肢体节点的位置的装置,该装置包括:运动数据获取模块,用于在至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中第一时间段包括至少一个肢体节点在未被遮挡的时刻到被遮挡的时刻之间的时间段;推测模块,用于利用推测模型,基于第一运动数据,推测至少一个肢体节点在第一时间段内的第一位移;推测模块还用于,至少部分地基于第一位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置,确定至少一个肢体节点在被遮挡的时刻的被遮挡位置。
根据本申请的实施例,基于推测模型,利用用户肢体的至少一个肢体节点在从未被遮挡到被遮挡的时间段内的运动数据来推测用户肢体的至少一个肢体节点在该时间段内的位移,进而得到至少一个肢体节点在被遮挡的时刻的被遮挡位置,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中利用人工猜测的被遮挡部位的可能姿态,根据本申请实施例推测的位移的准确性更高。
在一些实施例中,第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
在一些实施例中,推测模型包括至少部分地基于至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中至少一个肢体节点在第二时间段内未被遮挡,并且第二时间段的长度与第一时间段的长度相同。
在一些实施例中,第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
在一些实施例中,推测模型包括循环神经网络、长短期记忆网络、门控循环单元中的至少一种。
在一些实施例中,该装置还包括图像采集模块和图像处理模块,其中,图像采集模块用于在未被遮挡的时刻获取至少一个肢体节点的未被遮挡图像帧,图像处理模块用于根据未被遮挡图像帧确定未被遮挡位置。
第八方面,本申请实施例提供了一种确定用户的至少一个肢体节点的位置的装置,该装置包括:运动数据获取模块,用于在用户的至少一个肢体节点从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中第一时间段包括在未被遮挡的时刻和再次未被遮挡的时刻之间的时间段;推测模块,用于利用推测模型,基于第一运动数据,推测至少一个肢体节点在第一时间段内的第一位移;推测模块还用于,至少部分地基于第一位移以及至少一个肢体节点在未被遮挡的时刻的未被遮挡位置和再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定至少一个肢体节点在被遮挡的时刻的被遮挡位置。
根据本申请的实施例,基于推测模型,利用用户肢体的至少一个肢体节点在从未被遮挡到再次未被遮挡的时间段内的运动数据来推测用户肢体的至少一个肢体节点在该时间段内的位移,进而得到至少一个肢体节点在被遮挡的时刻的被遮挡位置,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中利用人工猜测的被遮挡部位的可能姿态,根据本申请实施例推测的位移的准确性更高,另外,以肢体节点在被遮挡时刻和再次未被遮挡的时刻之间的运动数据作为后验知识,推测肢体节点在未被遮挡时刻和被遮挡时刻之间的位移,可以进一步提高位移推测的准确性。
在一些实施例中,第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
在一些实施例中,推测模型包括至少部分地基于至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中至少一个肢体节点在第二时间段内未被遮挡,并且其中第二时间段的长度与从未被遮挡的时刻到被遮挡的时刻之间的时间段的长度相同,和/或,第二时间段的长度与从被遮挡的时刻到再次未被遮挡的时刻之间的时间段的长度相同。
在一些实施例中,第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
在一些实施例中,推测模型包括双向循环神经网络。
在一些实施例中,第一位移包括从未被遮挡位置到被遮挡位置的位移和从被遮挡位置到再次未被遮挡位置的位移中的至少一个。
在一些实施例中,装置还包括:图像采集模块,用于获取至少一个肢体节点在未被遮挡的时刻的未被遮挡图像帧,和/或,获取至少一个肢体节点在再次未被遮挡的时刻的再次未被遮挡图像帧;图像处理模块,用于根据未被遮挡图像帧确定未被遮挡位置,和/或,根据再次未被遮挡图像帧确定再次未被遮挡位置。
附图说明
图1示出根据本申请实施例的肢体姿态推测的原理示意图;
图2示出了根据本申请实施例的肢体姿态推测装置的一种结构示意图;
图3示出了根据本申请实施例的肢体未被遮挡时的图像帧序列的示意图;
图4示出了根据本申请实施例的循环神经网络的一种结构示意图;
图5示出了根据本申请实施例的双向循环神经网络的一种结构示意图;
图6A示出了根据本申请实施例的包括肢体被遮挡图像帧的图像帧序列的一种示意图;
图6B示出了根据本申请实施例的包括肢体被遮挡图像帧的图像帧序列的另一种示意图;
图7示出了根据本申请实施例的用于肢体姿态推测的推测模型的训练方法的一种流程示意图;
图8示出了根据本申请实施例的肢体姿态推测方法的一种流程示意图;
图9示出了根据本申请实施例的肢体姿态推测方法的另一种流程示意图;
图10示出了根据本申请实施例的肢体姿态推测系统的一种结构示意图。
具体实施方式
下面结合具体实施例和附图对本申请做进一步说明。此处描述的具体实施例仅仅是为了解释本申请,而非对本申请的限定。此外,为了便于描述,附图中仅示出了与本申请相关的部分而非全部的结构或过程。应注意的是,在本说明书中,相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
图1示出了根据本申请实施例的肢体姿态推测的原理示意图,其中,肢体姿态指的是肢体呈现的姿势或状态,肢体姿态可以通过肢体的多个肢体节点的位置来确定,其中,肢体节点可以包括,但不限于,骨骼节点,例如,在肢体是手臂的情况下,肢体节点可以包括,但不限于,手、手腕、手肘以及肩膀。
如图1所示,肢体姿态推测包括两个阶段,即推测模型的训练阶段和推测阶段,其中,推测模型的训练阶段包括在用户肢体的至少一个肢体节点未被遮挡的情况下(例如,但不限于,未被其他物体遮挡或者未超出图像的采集范围),获取肢体的至少一个肢体节点在两个未被遮挡时刻的位置10,并以此确定肢体的至少一个肢体节点在该两个未被遮挡时刻之间的位移20,其中,未被遮挡时刻可以包括,但不限于,肢体的至少一个肢体节点未被遮挡的图像帧的采集时刻,肢体的至少一个肢体节点在未被遮挡时刻的位置10可以包括,但不限于,肢体的至少一个肢体节点在未被遮挡时刻采集的图像帧中的位置。推测模型的训练阶段还包括获取与肢体的至少一个肢体节点在该两个未被遮挡时刻之间的运动相关的运动数据30,其中,肢体的至少一个肢体节点的运动指的是肢体的至少一个肢体节点的非静止状态,与肢体的至少一个肢体节点的运动相关的运动数据30可以包括,但不限于体现至少一个肢体节点的上述运动状态的数据,例如,运动数据30可以包括,但不限于,加速度、角速度、运动方向等中的至少一个,其中,加速度、角速度和运动方向等可以通过例如佩戴在肢体的至少一个肢体节点上的传感器(例如,但不限于,加速度传感器、陀螺仪、磁力计等)采集获得,或者通过其他方式获得,运动数据30还可以包括运动模式,运动模式指的是用户正在进行的肢体动作的类型,例如,但不限于,跳跃动作、深蹲动作、手臂上举动作等,运动模式可以作为先验知识而获得。推测模型的训练阶段还包括利用肢体的至少一个肢体节点在该两个未被遮挡时刻之间的位移20以及运动数据30训练推测模型40。
推测模型的推测阶段包括在用户肢体的至少一个肢体节点被遮挡的情况下(例如,但不限于,被其他物体遮挡或者超出图像的采集范围),利用推测模型40,基于肢体的至少一个肢体节点从未被遮挡时刻到被遮挡时刻的运动数据30,推测肢体的至少一个肢体节点从未被遮挡时刻到被遮挡时刻的位移20,其中,遮挡时刻可以包括,但不限于,肢体的至少一个肢体节点被遮挡的图像帧的采集时刻。推测模型的推测阶段还包括根据肢体的至少一个肢体节点从未被遮挡时刻到被遮挡时刻的位移20,以及肢体的至少一个肢体节点在未被遮挡时刻的位置10,确定肢体的至少一个肢体节点在被遮挡时刻的位置50,最后,根据肢体的至少一个肢体节点在被遮挡时刻的位置50确定肢体在被遮挡时刻的姿态60,其中,肢体的至少一个肢体节点在被遮挡时刻的位置50可以包括,但不限于,肢体的至少一个肢体节点在被遮挡时刻采集的图像帧中的被遮挡位置。
图2示出了根据本申请实施例的肢体姿态推测装置100的一种结构示意图,如图2所示,肢体姿态推测装置100包括,但不限于,图像采集模块110、图像处理模块120、运动数据获取模块130、推测模型训练模块140、推测模块150以及可选的通信模块160。其中,肢体姿态推测装置100的一个或多个组件(例如,图像采集模块110、图像处理模块120、运动数据获取模块130、推测模型训练模块140、推测模块150以及通信模块160中的一个或多个),可以由专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的(共享、专用或组)处理器和/或存储器、组合逻辑电路、提供所描述的功能的其他合适的组件的任意组合构成。根据一个方面,处理器可以是微处理器、数字信号处理器、微控制器等,和/或其任何组合。根据另一个方面,所述处理器可以是单核处理器,多核处理器等,和/或其任何组合。
根据本申请的一些实施例,图像采集模块110用于采集用户的图像数据,其中图像数据可以包括多个图像帧,图像采集模块110的示例可以是,但不限于,摄像机、照相机等。
根据本申请的一些实施例,图像处理模块120用于通过,但不限于,骨骼节点识别技术,对图像采集模块110采集的多个图像帧中的用户进行节点识别。图像处理模块120还用于在用户肢体的至少一个肢体节点未被遮挡的情况下,确定用户肢体的至少一个肢体节点在多个图像帧中的位置(例如,坐标),并以此确定用户肢体的至少一个肢体节点在两个图像帧的采集时刻之间的位移,其中,该两个图像帧的采集时刻可以具有预定的时间间隔,该预定的时间间隔可以是图像采集帧率的倒数的倍数,例如,但不限于,帧率倒数的1倍、2倍、3倍等。
根据本申请的一些实施例,运动数据获取模块130用于获取图1中的运动数据30,在运动数据30包括加速度、角速度、运动方向等中的至少一个的情况下,运动数据获取模块130可以包括但不限于,佩戴在用户肢体的至少一个肢体节点上的至少一个传感器,例如,但不限于,加速度传感器、陀螺仪、磁力计等,其中,加速度传感器用于获取肢体节点的加速度,陀螺仪用于获取肢体节点的角速度,磁力计用于获取肢体节点的运动方向等。另外,运动数据获取模块130的时间可以与图像采集模块110的时间同步。
根据本申请的另一些实施例,在运动数据30还包括运动模式的情况下,运动数据获取模块130可以基于用户接收的指令而获知用户当前的运动模式,其中,该指令要求用户进行某个类型的肢体工作,并且该指令可以来自肢体姿态推测装置100,也可以来自其他装置。在另一种示例中,运动数据获取模块130可以通过利用图像处理模块120确定的多个图像帧中未被遮挡的肢体节点的位置,确定用户当前的运动模式。
根据本申请的一些实施例,推测模型训练模块140用于在用户肢体的至少一个肢体节点未被遮挡的情况下,根据从图像处理模块120获取的用户肢体的至少一个肢体节点在两个图像帧的采集时刻之间的位移,以及从运动数据获取模块130获取的用户肢体的至少一个肢体节点在该两个图像帧的采集时刻之间的运动数据,训练推测模型。需要说明的是,推测模型训练模块140可以获取与多组图像帧相关的多个位移和运动数据,其中,每组图像帧包括两个图像帧,并且这两个图像帧的采集时刻具有以上所述的预定的时间间隔。推测模型的示例可以包括,但不限于,循环神经网络(recurrent neural network,RNN)、长短期记忆(long short-term memory,LSTM)网络、门控循环单元(gated recurrent unit,GRU)网络、双向循环神经网络(bidirectional recurrent neural network,BRNN)中的至少一种。
根据本申请的一些实施例,推测模型训练模块140还用于对用户的推测模型和其他用户的推测模型进行集成,以提升推测模型的推测精度。
根据本申请的一些实施例,推测模块150用于在用户肢体的至少一个肢体节点被遮挡的情况下,根据从传感器模块13获取的肢体的至少一个肢体节点从未被遮挡时刻到被遮挡时刻的运动数据,推测肢体的至少一个肢体节点从未被遮挡时刻到被遮挡时刻的位移,并且根据肢体的至少一个肢体节点在未被遮挡时刻的图像帧中的位置,确定肢体的至少一个肢体节点在被遮挡时刻的图像帧中的位置。其中,未被遮挡时刻和被遮挡时刻之间的时间段与以上所述的预定的时间间隔相同。
根据本申请的一些实施例,推测模块150还用于根据肢体的至少一个肢体节点在被遮挡时刻的图像帧中的位置确定肢体在被遮挡时刻的图像帧中的姿态。
根据本申请的一些实施例,通信模块160用于向外部服务器发送用户的推测模型,以及从外部服务器接收至少一个其他用户的推测模型。
以下,参考图3-图6进一步介绍图2中肢体姿态推测装置100的多个模块的功能。
根据本申请的一些实施例,图像处理模块120可以确定用户肢体的至少一个肢体节点在两个图像帧的采集时刻之间的位移。图3示出了通过图像处理模块120对图像帧序列F1-F5进行节点识别的结果,以用户的肢体为右手臂作为举例,右手臂包括四个节点,右手、右手腕、右手肘以及右肩膀,在右手腕佩戴传感器的情况下,图2的图像处理模块120可以确定右手腕(在图3中以灰色示出的节点)在图像帧F1-F5中的位置坐标,并确定右手腕在图像帧F1-F5中的两个图像帧的采集时刻之间的位移。在一种示例中,两个图像帧的采集时刻之间的时间间隔可以是帧率的倒数的1倍,即图2的图像处理模块120可以确定右手腕在图像帧F1和F2的采集时刻之间的位移s1、图像帧F2和F3的采集时刻之间的位移s2、图像帧F3和F4的采集时刻之间的位移s3以及图像帧F4和F5的采集时刻之间的位移s4。在另一种示例中,两个图像帧的采集时刻之间的时间间隔可以是帧率的倒数的2倍,图2的图像处理模块120可以确定右手腕在图像帧F1和F3的采集时刻之间的位移s5、图像帧F3和F5的采集时刻之间的位移s6。
需要说明的是,右手臂的其他节点,例如右手、右手肘以及右肩膀中的一个或多个也可以佩戴传感器,并且图2的图像处理模块120同样也可以确定这些节点在多个图像帧中的位置以及在两个图像帧的采集时刻之间的位移。另外,经图像采集模块采集的图像帧的数量以及图像帧中用户的姿态不限于图3中所示出的。
根据本申请的一些实施例,推测模型训练模块140可以从运动数据获取模块130获取用户肢体的至少一个肢体节点在两个图像帧的采集时刻之间的运动数据,例如,但不限于,加速度、角速度、运动方向等。例如,在图3的示例中,图2的推测模型训练模块140可以从运动数据获取模块130获取右手腕在图像帧F1和F2的采集时刻之间的运动数据x1、图像帧F2和F3的采集时刻之间的运动数据x2、图像帧F3和F4的采集时刻之间的运动数据x3以及图像帧F4和F5的采集时刻之间的运动数据x4。然后,推测模型训练模块140可以以用户肢体的至少一个肢体节点在两个图像帧的采集时刻之间的运动数据作为训练数据,以用户肢体的至少一个肢体节点在该两个图像帧的采集时刻之间的位移作为训练标签,训练推测模型。
在一种示例中,推测模型训练模块140可以通过反向传播算法(BackPropagation,BP)、牛顿梯度下降算法或其他算法来训练循环神经网络。图4示出了循环神经网络的一种结构示意图,如图4所示,循环神经网络包括t(t为正整数)个神经元A1-At,第t个神经的输入为xt,输出为yt,隐藏状态为ht,在本申请的实施例中,第t个神经元的输入xt可以包括用户肢体的一个节点在两个图像帧的采集时刻之间的运动数据例如,但不限于,加速度、角速度、运动方向等,输出yt可以包括用户肢体的一个节点在该两个图像帧的采集时刻之间的位移。在循环神经网络中,第t组神经元的输出yt和隐藏状态ht可以通过以下公式计算:
ht=f(Uxt+Wht-1) 公式1
yt=g(Vht) 公式2
其中,ht-1表示第t-1个神经元的隐藏状态,f和g均为激活函数,其中f可以是tanh、relu、sigmoid等激活函数,g可以是softmax等激活函数,U表示与输入相关的权重,W表示与隐藏状态相关的权重,V表示与输出相关的权重。因此,在循环神经网络中,一个神经元的输出不仅与该神经元的输入相关,还与该神经元的前一个神经元的隐藏状态相关。
以反向传播算法为例,推测模型训练模块140在训练循环神经网络时,对于用户肢体的一个节点,推测模型训练模块140可以初始化循环神经网络的隐藏状态和权重参数,以该节点与多组图像帧相关的多组运动数据分别作为循环神经网络的各个神经元的输入,得到各个神经元的输出,即该节点与多组图像帧相关的多个位移,然后推测模型训练模块140可以根据各个神经元输出的位移与通过图像处理模块120确定的各个真实位移之间的误差值,反向优化循环神经网络的权重参数。例如,在图3的示例中,图2的推测模型训练模块140可以将右手腕的运动数据x1、x2、x3、x4分别作为图4中的循环神经网络的第1至4个神经元的输入,并根据右手腕的真实位移s1、s2、s3、s4来优化循环神经网络的权重参数。
需要说明的是,推测模型训练模块140可以基于类似的原理训练肢体的佩戴传感器的其他节点的推测模型,并且推测模型训练模块140也可以基于类似的原理训练长短期记忆(long short-term memory,LSTM)网络、门控循环单元(gated recurrent unit,GRU)网络或者其他具有记忆能力的神经网络。
在另一种示例中,推测模型训练模块140可以通过反向传播算法(BackPropagation,BP)、牛顿梯度下降算法或其他算法来训练双向循环神经网络。图5示出了双向循环神经网络的一种结构示意图,如图5所示,双向循环神经网络由两个方向相反的循环神经网络上下叠加在一起组成,包括t+1(t为正整数)组神经元(A1,A′1)~(At+1,A′t+1),第t组神经元的输入为xt,输出为yt,正向隐藏状态为ht,反向隐藏状态为h′t,在本申请的实施例中,第t组神经的输入xt可以包括用户肢体的一个节点在两个图像帧的采集时刻之间的运动数据,例如,但不限于,加速度、角速度、运动方向等,输出yt可以包括用户肢体的一个节点在该两个图像帧的采集时刻之间的位移。在循环神经网络中,第t组神经元的输出yt、隐藏状态ht和隐藏状态h′t可以通过以下公式计算:
ht=f(Uxt+Wht-1) 公式3
h′t=f(U′xt+W′h′t+1) 公式4
yt=g(Vht+V′h′t) 公式5
其中,ht-1表示第t-1组神经元的正向隐藏状态,h′t+1表示第t+1组神经元的反向隐藏状态,f和g均为激活函数,其中f可以是tanh、relu、sigmoid等激活函数,g可以是softmax等激活函数,U表示正向循环神经网络的与输入相关的权重,U′表示反向循环神经网络的与输入相关的权重,W表示正向循环神经网络的与隐藏状态相关的权重,W′表示反向循环神经网络的与隐藏状态相关的权重,V表示正向循环神经网络的与输出相关的权重,V′表示反向循环神经网络的与输出相关的权重。因此,在双向循环神经网络中,一组神经元的输出不仅与该组神经元的输入相关,还与该组神经元的前后两组神经元的隐藏状态相关。
推测模型训练模块140对双向循环神经网络的训练过程可以参照上述对循环神经网络的训练过程,在此不再赘述。
根据本申请的另一些实施例,在运动数据30还包括运动模式的情况下,对于一个运动模式,推测模型训练模块140可以使用通过运动数据获取模块130获取的、肢体节点在该运动模式下的加速度、角速度、运动方向等数据,以上述实施例中描述的方式,训练肢体节点在该运动模式下的推测模型。
根据本申请的一些实施例,推测模块150可以在用户肢体的至少一个肢体节点被遮挡的情况下,推测肢体的至少一个肢体节点在被遮挡时刻的图像帧中的位置。图6A示出了图像处理模块120对图像帧序列F6-F9进行节点识别后的结果,如图所示,以用户的右手腕(在图6中以灰色节点示出)为例,用户的右手腕在图像帧F6的采集时刻t6和图像帧F7的采集时刻t7未被遮挡,在图像帧F8的采集时刻t8和图像帧F9的采集时刻t9被遮挡,那么推测模块150可以利用推测模型,基于用户的右手腕在t7时刻和t8时刻之间的运动数据(例如,但不限于,加速度、角速度、运动方向等)来推测用户的右手腕在t7时刻和t8时刻之间的位移,基于用户的右手腕在t8时刻和t9时刻之间的运动数据(例如,但不限于,加速度、角速度、运动方向等)来推测用户的右手腕在t8时刻和t9时刻之间的位移。例如,在图4循环神经网络的示例中,令t=2,推测模块150可以将用户的右手腕在t7时刻和t8时刻之间的运动数据(例如,但不限于,加速度、角速度、运动方向等)以及在t8时刻和t9时刻之间的运动数据(例如,但不限于,加速度、角速度、运动方向等)分别作为神经元A1和A2的输入,那么该两个神经元的输出可以分别包括用户的右手腕在t7时刻和t8时刻之间以及在t8时刻和t9时刻之间的位移。
进一步地,推测模块150可以基于通过图像处理模块120确定的用户的右手腕在t7时刻的图像帧中的位置坐标,以及用户的右手腕在t7时刻和t8时刻之间的位移,确定用户的右手腕在t8时刻的图像帧中的位置坐标;同样地,推测模块150可以基于用户的右手腕在t8时刻的图像帧中的位置坐标,以及用户的右手腕在t8时刻和t9时刻之间的位移,确定用户的右手腕在t9时刻的图像帧中的位置坐标。
需要说明的是,由于在循环神经网络中,一个神经元的输出与该神经元的输入和该神经元的前一神经元的隐藏状态相关,因此推测模块150可以使用循环神经网络实时地推测肢体的至少一个肢体节点在被遮挡时刻的图像帧中的位置,另外,循环神经网络也可以用于肢体节点位置的非实时推测场景中。
图6B示出了图6A中的图像帧序列还包括图像帧F10的情况,如图所示,用户的右手腕在图像帧F10的采集时刻t10再次未被遮挡,那么推测模块150可以利用推测模型,基于用户的右手腕在t7时刻和t8时刻之间、在t8时刻和t9时刻之间以及在t9时刻和t10时刻之间的运动数据(例如,但不限于,加速度、角速度、运动方向等)来推测用户的右手腕在t7时刻和t8时刻之间以及在t8时刻和t9时刻之间的位移。例如,在图6双向循环神经网络的示例中,令t=2,那么推测模块150可以将用户的右手腕在t7时刻和t8时刻之间、在t8时刻和t9时刻之间以及在t9时刻和t10时刻之间的运动数据(例如,但不限于,加速度、角速度、运动方向等)分别作为神经元组(A1,A′1)~(A3,A′3)的输入,那么该三个神经元组的输出可以分别包括用户的右手腕在t7时刻和t8时刻之间、在t8时刻和t9时刻之间以及在t9时刻和t10时刻之间的位移。
进一步地,推测模块150可以基于通过图像处理模块120确定的用户的右手腕在t7时刻图像帧中的位置坐标,以及用户的右手腕在t7时刻和t8时刻之间、在t8时刻和t9时刻之间的位移,确定用户的右手腕在t8时刻和t9时刻的图像帧中的位置坐标;或者,可以基于通过图像处理模块120确定的用户的右手腕在t10时刻图像帧中的位置坐标,以及用户的右手腕在t9时刻和t10时刻之间、在t8时刻和t9时刻之间的位移,确定用户的右手腕在t9时刻和t8时刻的图像帧中的位置坐标。
需要说明的是,由于在双向循环神经网络中,一个神经元组的输出既与该神经元组的输入和该神经元组的前一神经元组的隐藏状态相关,又需要该神经元组的后一神经元组的隐藏状态作为后验知识,因此推测模块150可以使用双向循环神经网络非实时地推测肢体的至少一个肢体节点在被遮挡时刻的图像帧中的位置。
根据本申请的另一些实施例,在用于训练推测模型的运动数据30还包括运动模式的情况下,推测模块150可以以通过运动数据获取模块130获取的用户当前的运动模式作为先验知识来推测用户肢体的至少一个肢体节点在被遮挡时刻的位置。具体地,推测模块150可以通过用户当前的运动模式,确定与该运动模式相对应的推测模型,然后利用推测模型,以上述实施例中描述的方式,推测用户肢体的至少一个肢体节点在被遮挡时刻的位置。
根据本申请的另一些实施例,在用于训练推测模型的运动数据30不包括运动模式的情况下,推测模块150也可以以通过运动数据获取模块130获取的用户当前的运动模式作为先验知识来推测用户肢体的至少一个肢体节点在被遮挡时刻的位置。具体地,在用户肢体的至少一个肢体节点被遮挡的情况下,推测模块150可以利用推测模型,基于从运动数据获取模块130获取的用户肢体的至少一个肢体节点的运动数据(例如,但不限于,加速度、角速度、运动方向等),获得多个位移的推测(或分类)概率,推测模块150可以减小该多个位移中不符合用户当前的运动模式的位移的概率,并相应地增大符合用户当前的运动模式的位移的概率,最终输出具有最大推测概率的位移。
需要说明的是,推测模块150可以基于与上述类似的原理推测用户右手腕的其他节点在被遮挡时刻的图像帧中的位置坐标,并由此确定用户的右手臂在被遮挡时刻的图像帧中的姿态。进一步地,在用户右手臂的被遮挡的至少一个肢体节点中,如果只有部分节点佩戴了传感器,那么推测模块150也可以基于该部分节点在被遮挡时刻的图像帧中的位置坐标,推测用户右手臂的被遮挡的其他节点在被遮挡时刻的图像帧中的位置坐标,进而确定用户的右手臂在被遮挡时刻的图像帧中的姿态。例如,在用户的右手臂均被遮挡并且只有用户的右手腕佩戴了传感器的情况下,在一种示例中,推测模块150可以通过,反向运动学方法(Inverse Kinematics,IK),基于用户右手腕在被遮挡时刻的图像帧中的位置坐标,确定用户右手臂的被遮挡的其他节点在被遮挡时刻的图像帧中的位置坐标,其中,反向运动学方法通过给定肢端和固定端的位置求解肢体运动链上各关节的转角;在另一种示例中,推测模块150可以基于人体关节运动的限制、手臂长度是固定的以及肢体节点的位置是连续变化的这几个约束,利用用户右手腕在被遮挡时刻的图像帧中的位置坐标,来推测用户右手臂的被遮挡的其他节点在被遮挡时刻的图像帧中的位置坐标。
需要说明的是,由于肢体的一个肢体节点的运动数据(例如,但不限于,加速度、角速度、运动方向等)与该肢体的各个肢体节点的位移相关联,因此,在构成肢体的多个肢体节点中存在未佩戴传感器的肢体节点的情况下,为了确定肢体在被遮挡时刻的姿态,在肢体的至少一个肢体节点(包括佩戴传感器的肢体节点和未佩戴传感器的肢体节点)未被遮挡的情况下,对于肢体的一个佩戴传感器的肢体节点(例如,右手臂的右手腕),推测模型训练模块140可以利用通过图像处理模块120确定的、该佩戴传感器的肢体节点和未佩戴传感器的肢体节点(例如,右手臂的右手肘)在两个图像帧的采集时刻之间的位移,以及从运动数据获取模块130获得的、该佩戴传感器的肢体节点在两个图像帧的采集时刻之间的运动数据(例如,但不限于,加速度、角速度、运动方向等),训练推测模型;在肢体的至少一个肢体节点(包括佩戴传感器的肢体节点和未佩戴传感器的肢体节点)被遮挡的情况下,对于肢体的一个佩戴传感器的肢体节点(例如,右手臂的右手腕),推测模块150可以利用该佩戴传感器的肢体节点的推测模型,推测该佩戴传感器的肢体节点以及未佩戴传感器的肢体节点(例如,右手臂的右手肘)从未被遮挡时刻到被遮挡时刻的位移,进而确定该佩戴传感器的肢体节点以及未佩戴传感器的肢体节点在遮挡时刻的位置,以及肢体在被遮挡时刻的姿态(例如,右手臂的姿态)。
需要说明的是,经图像采集模块110采集的图像帧的数量以及图像帧中用户的姿态不限于图6A和图6B中所示出的,并且推测模块150可以基于与上述类似的原理推测用户其他肢体的至少一个肢体节点在被遮挡时刻的图像帧中的位置坐标。
根据本申请的实施例,在用户肢体的至少一个肢体节点未被遮挡的情况下,推测模块150也可以通过推测模型推测用户肢体的至少一个肢体节点在未被遮挡时刻的图像帧中的位置坐标,推测模型训练模块140可以将其与通过图像处理模块120确定的用户肢体的至少一个肢体节点在未被遮挡时刻的图像帧中的位置坐标进行对比,并获得推测模型的推测精度。在一种示例中,对于与用户肢体的一个节点对应的推测模型,推测模型训练模块140可以计算通过该推测模型推测的该节点在一个图像帧中的位置坐标与通过图像处理模块120确定的该节点在该图像帧中的位置坐标之间的距离(例如,但不限于,欧式距离、余弦距离等),并根据与多个图像帧相关的多个距离计算推测模型的推测精度,例如,以这些距离的均值、最大值、中位数等作为推测模型的推测精度。
进一步地,推测模型训练模块140可以通过通信模块160,将用户的身体参数(例如,但不限于,肢体各部位的长度)、用户肢体的至少一个肢体节点的推测模型以及推测模型的推测精度,发送给外部服务器。外部服务器可以返回与用户的身体参数相近的其他用户的推测模型,其中,其他用户的推测模型用于在其他用户的肢体的至少一个肢体节点在被遮挡的情况下,推测其他用户的肢体的至少一个肢体节点在被遮挡时刻的位置,并且其他用户的推测模型的推测精度大于或等于预定的精度值。
进一步地,在用户肢体的至少一个肢体节点未被遮挡的情况下,推测模型训练模块140可以对用户的推测模型和其他用户的推测模型进行集成,并且在用户肢体的至少一个肢体节点被遮挡的情况下,推测模块150可以使用集成的推测模型推测用户肢体的至少一个肢体节点在被遮挡时刻的位置。在一种示例中,推测模型训练模块140可以基于Bagging算法(bootstrap aggregating,引导聚集算法)进行集成,Bagging算法通过组合多个模型来减少泛化误差的技术,其原理是单独训练多个不同的模型,然后按照规则对多个模型在测试集的输出进行票选,例如,以多个模型的输出的平均值作为最后的输出,其中,在本申请的实施例中,测试集可以包括在肢体的至少一个肢体节点未被遮挡的情况下,肢体的至少一个肢体节点在两个图像帧的采集时刻之间的运动数据,并且推测模型训练模块140可以根据通过图像处理模块120确定的肢体的至少一个肢体节点在该两个图像帧的采集时刻之间的真实位移来优化票选规则。
在本申请的实施例中,在用户肢体的至少一个肢体节点未被遮挡的情况下,利用用户肢体的至少一个肢体节点的运动数据和位移来训练推测模型,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中在训练推测模型时以人工猜测被遮挡部位的可能姿态作为训练标签,根据本申请实施例的推测模型的准确性和鲁棒性会更高。
进一步地,在本申请的实施例中,在肢体姿态的非实时推测场景下,通过使用双向循环网络,以肢体节点在被遮挡时刻之后的运动数据以及肢体节点在再次未被遮挡时刻的位置作为后验知识,推测肢体节点的位移,可以提高位移推测的准确性。
进一步地,在本申请的实施例中,以用户的运动模式作为先验知识来推测用户肢体的至少一个肢体节点在被遮挡时刻的位置,可以提高位移推测的准确性。
进一步地,在本申请的实施例中,通过对用户的推测模型和其他用户的推测模型进行集成,可以提升对用户肢体节点的位移的推测精度,尤其是在用户的训练数据较少导致用户的推测模型的推测性能较差的情况下。
图7示出了根据本申请实施例的用于肢体姿态推测的推测模型的训练方法的一种流程示意图,图2中的肢体姿态推测装置100的一个或多个模块可以实施该方法的不同块或其他部分。对于上述装置实施例中未描述的内容,可以参见下述方法实施例,同样,对于方法实施例中未描述的内容,可参见上述装置实施例。如图7所示,用于肢体姿态推测的推测模型的训练方法可以包括:
块701,在用户肢体的至少一个肢体节点未被遮挡的情况下,通过图像采集模块110,采集用户运动的图像数据,其中图像数据可以包括多个图像帧,图像采集模块110的示例可以是,但不限于,摄像机、照相机等。
块702,通过图像处理模块120,对图像采集模块110采集的多个图像帧中的用户进行节点识别,例如,但不限于,通过骨骼节点识别技术,识别用户的骨骼节点,诸如头部、手腕、手肘、肩膀、膝盖、脚踝等。
块703,通过图像处理模块120,确定用户肢体的至少一个肢体节点在多个图像帧中的位置以及在两个图像帧的采集时刻之间的位移。
其中,用户肢体的至少一个肢体节点在多个图像帧中的位置可以包括,但不限于,用户肢体的至少一个肢体节点在多个图像帧中的相对坐标。其中,两个图像帧的采集时刻可以具有预定的时间间隔,该预定的时间间隔可以是图像采集帧率的倒数的倍数,例如,但不限于,帧率倒数的1倍、2倍、3倍等。需要说明的是,图像处理模块120可以确定用户肢体的至少一个肢体节点与多组图像帧相关的位移,其中,每组图像帧包括两个图像帧,并且这两个图像帧的采集时刻具有以上所述的预定的时间间隔。
块704,通过运动数据获取模块130,获取用户肢体的至少一个肢体节点的运动数据,例如,但不限于,加速度、角速度、运动方向、运动模式等。
块705,通过推测模型训练模块140,根据从图像处理模块120获取的用户肢体的至少一个肢体节点在两个图像帧的采集时刻之间的位移,以及从运动数据获取模块130获取的用户肢体的至少一个肢体节点在该两个图像帧的采集时刻之间的运动数据,训练推测模型。
需要说明的是,推测模型训练模块140可以获取与多组图像帧相关的多个位移和运动数据,其中,每组图像帧包括两个图像帧,并且这两个图像帧的采集时刻具有以上所述的预定的时间间隔。
推测模型的示例可以包括,但不限于,循环神经网络(recurrent neuralnetwork,RNN)、长短期记忆(long short-term memory,LSTM)网络、门控循环单元(gatedrecurrent unit,GRU)网络、双向循环神经网络(bidirectional recurrent neuralnetwork,BRNN)中的至少一种。另外,对推测模型的具体训练过程可以参照以上与推测模型训练模块140相关的描述,在此不再赘述。
块706,在用户肢体的至少一个肢体节点未被遮挡的情况下,通过推测模型训练模块140确定推测模型的推测精度,并通过通信模块160,将用户的身体参数(例如,但不限于,肢体各部位的长度)、用户肢体的至少一个肢体节点的推测模型以及推测模型的推测精度发送给外部服务器。
在一种示例中,在用户肢体的至少一个肢体节点未被遮挡的情况下,可以通过推测模块150,利用推测模型推测用户肢体的至少一个肢体节点在未被遮挡时刻的图像帧中的位置坐标,推测模型训练模块140可以将其与通过图像处理模块120确定的用户肢体的至少一个肢体节点在未被遮挡时刻的图像帧中的位置坐标进行对比,并获得推测模型的推测精度。例如,对于与用户肢体的一个节点对应的推测模型,推测模型训练模块140可以计算通过该推测模型推测的该节点在一个图像帧中的位置坐标与通过图像处理模块120确定的该节点在该图像帧中的位置坐标之间的距离(例如,但不限于,欧式距离、余弦距离等),并根据与多个图像帧相关的多个距离计算该推测模型的推测精度,例如,以这些距离的均值、最大值、中位数等作为推测模型的推测精度。
块707,通过通信模块160,从外部服务器接收与用户的身体参数相近的其他用户的推测模型,其中,其他用户的推测模型用于在其他用户的肢体的至少一个肢体节点在被遮挡的情况下,推测其他用户的肢体的至少一个肢体节点在被遮挡时刻的位置,并且其他用户的推测模型的推测精度大于或等于预定的精度值。
块708,通过推测模型训练模块140,对用户的推测模型和至少一个其他用户的推测模型进行集成,并获得集成后的推测模型。
在一种示例中,推测模型训练模块140可以基于Bagging算法(bootstrapaggregating,引导聚集算法)进行集成,Bagging算法通过组合多个模型来减少泛化误差的技术,其原理是单独训练多个不同的模型,然后按照规则对多个模型在测试集的输出进行票选,例如,以多个模型的输出的平均值作为最后的输出,其中,在本申请的实施例中,测试集可以包括在肢体的至少一个肢体节点未被遮挡的情况下,肢体的至少一个肢体节点在两个图像帧的采集时刻之间的运动数据,并且推测模型训练模块140可以根据通过图像处理模块120确定的肢体的至少一个肢体节点在该两个图像帧的采集时刻之间的真实位移来优化票选规则。
图8示出了根据本申请实施例的肢体姿态推测方法的一种流程示意图,图2中的肢体姿态推测装置100的一个或多个模块可以实施方法的不同块或其他部分。对于上述装置实施例中未描述的内容,可以参见下述方法实施例,同样,对于方法实施例中未描述的内容,可参见上述装置实施例。如图7所示,肢体姿态推测方法可以包括:
块801,通过图像采集模块110,采集用户运动的图像数据,其中图像数据可以包括图像帧,图像采集模块110的示例可以是,但不限于,摄像机、照相机等。
块802,通过图像处理模块120,对当前图像帧中的用户进行节点识别,例如,但不限于,通过骨骼节点识别技术,识别用户的骨骼节点,诸如头部、手腕、手肘、肩膀、膝盖、脚踝等。
块803,通过图像处理模块120,确定当前图像帧中是否存在肢体的节点被遮挡,若是,则执行块804,若否,则执行块807。
作为一种示例,图像处理模块120可以将对当前图像帧的节点识别结果与人体的完整节点相比较,以确定在当前图像帧中,是否存在用户肢体的节点被遮挡,以及哪些节点被遮挡。
块804,通过图像处理模块120,确定与当前图像帧的前一图像帧,并确定用户肢体的被遮挡的至少一个肢体节点在当前图像帧和前一图像帧的采集时刻之间的运动数据,例如,但不限于,加速度、角速度、运动方向、运动模式等。
其中,前一图像帧与当前图像帧的采集时刻具有预定的时间间隔,该预定的时间间隔可以是图像采集帧率的倒数的倍数,例如,但不限于,帧率倒数的1倍、2倍、3倍等。另外,肢体的该至少一个肢体节点在前一图像帧中的位置是已知的,例如,在前一图像帧中,在肢体的该至少一个肢体节点未被遮挡的情况下,可以通过图像处理模块120确定肢体的该至少一个肢体节点在前一图像帧中的位置;在前一图像帧中,在肢体的该至少一个肢体节点被遮挡的情况下,可以通过推测模块150,根据本实施例确定肢体的该至少一个肢体节点在前一图像帧中的位置。
块805,通过推测模块150,利用推测模型,例如,但不限于,循环神经网络基于肢体被遮挡的至少一个肢体节点在当前图像帧和前一图像帧的采集时刻之间的运动数据,推测肢体被遮挡的至少一个肢体节点在当前图像帧和前一图像帧的采集时刻之间的位移。
需要说明的是,对利用推测模型的具体推测过程可以参照以上与推测模块150相关的描述,在此不再赘述。
块806,通过推测模块150,基于肢体被遮挡的至少一个肢体节点在前一图像帧中的位置,以及在块805中确定的肢体被遮挡的至少一个肢体节点在当前图像帧和前一图像帧的采集时刻之间的位移,确定肢体被遮挡的至少一个肢体节点在当前图像帧中的位置。
块807,通过推测模块150,基于肢体的各个肢体节点在当前图像帧中的位置,确定肢体的姿态。
在用户肢体的被遮挡的多个肢体节点中,如果只有部分节点佩戴了传感器,那么推测模块150也可以基于该部分肢体节点在当前图像帧中的位置,推测用户肢体的被遮挡的其他肢体节点在当前图像帧中的位置,进而确定用户肢体在当前图像帧中的姿态。例如,在用户的右手臂均被遮挡并且只有用户的右手腕佩戴了传感器的情况下,推测模块150可以通过,但不限于,反向运动学方法,来确定用户右手臂的其他肢体节点在当前图像帧中的位置,其中,反向运动学方法通过给定肢端和固定端的位置求解肢体运动链上各关节的转角;在另一种示例中,推测模块150可以基于人体关节运动的限制、手臂长度是固定的以及肢体节点的位置是连续变化的这几个约束,利用用户右手腕在被遮挡时刻的图像帧中的位置坐标,来推测用户右手臂的被遮挡的其他节点在被遮挡时刻的图像帧中的位置坐标。
图9示出了根据本申请实施例的肢体姿态推测方法的一种流程示意图,图2中的肢体姿态推测装置100的一个或多个模块可以实施方法的不同块或其他部分。对于上述装置实施例中未描述的内容,可以参见下述方法实施例,同样,对于方法实施例中未描述的内容,可参见上述装置实施例。如图9所示,肢体姿态推测方法可以包括:
块901,通过图像采集模块110,采集用户运动的图像数据,其中图像数据可以包括多个图像帧,图像采集模块110的示例可以是,但不限于,摄像机、照相机等。
块902,通过图像处理模块120,对图像采集模块110采集的多个图像帧中的用户进行节点识别,例如,但不限于,通过骨骼节点识别技术,识别用户的骨骼节点,诸如头部、手腕、手肘、肩膀、膝盖、脚踝等。
块903,通过图像处理模块120,确定多个图像帧中是否存在肢体节点被遮挡的图像帧,若是,则执行块904,若否,则执行块908。
作为一种示例,图像处理模块120可以将对多个图像帧的节点识别结果与人体的完整节点相比较,以确定在多个图像帧的每个图像帧中,是否存在肢体节点被遮挡以及哪些肢体节点被遮挡。
块904,通过图像处理模块120,对于在多个图像帧的至少一个图像帧中被遮挡的一个肢体节点,在多个图像帧中确定该肢体节点被遮挡前的未被遮挡时刻的图像帧以及再次未被遮挡时刻的图像帧。
其中,在该肢体节点的未被遮挡时刻的图像帧和再次未被遮挡时刻的图像帧之间可以包括至少一个被遮挡时刻的图像帧,并且在未被遮挡时刻的图像帧、被遮挡时刻的图像帧以及再次未被遮挡时刻的图像帧中,时间上相邻的两个图像帧的采集时刻可以包括预定的时间间隔,该预定的时间间隔可以是图像采集帧率的倒数的倍数,例如,但不限于,帧率倒数的1倍、2倍、3倍等。
块905,通过运动数据获取模块130,获取用户肢体的至少一个肢体节点的运动数据,例如,但不限于,加速度、角速度、运动方向、运动模式等,其中,包括在多个图像帧的至少一个图像帧中被遮挡的至少一个肢体节点的运动数据。
块906,对于在多个图像帧的至少一个图像帧中被遮挡的一个肢体节点,通过推测模块150,利用推测模型,基于该肢体节点在两个图像帧的采集时刻之间的运动数据,推测该肢体节点在两个图像帧的采集时刻之间的位移。
其中,该两个图像帧是在未被遮挡时刻的图像帧、被遮挡时刻的图像帧以及再次未被遮挡时刻的图像帧中,时间上相邻的两个图像帧。
需要说明的是,对利用推测模型的具体推测过程可以参照以上与推测模块150相关的描述,在此不再赘述。
块907,对于在多个图像帧的至少一个图像帧中被遮挡的一个肢体节点,通过推测模块150,基于该肢体节点在未被遮挡时刻的图像帧中的位置,以及在块906中确定的该肢体节点在两个图像帧的采集时刻之间的位移,确定该肢体节点在至少一个被遮挡时刻的图像帧中的位置。
在另一种示例中,对于在多个图像帧的至少一个图像帧中被遮挡的一个肢体节点,通过推测模块,基于该肢体节点在再次未被遮挡时刻的图像帧中的位置,以及在块907中确定的该肢体节点在两个图像帧的采集时刻之间的位移,确定该肢体节点在至少一个被遮挡时刻的图像帧中的位置。
块908,通过推测模块150,基于肢体的各个肢体节点在被遮挡时刻的图像帧中的位置,确定肢体在被遮挡时刻的图像帧中的姿态。
对于用户肢体的至少一个肢体节点被遮挡的一个图像帧,如果在这些被遮挡肢体节点中,只有部分肢体节点佩戴了传感器,那么推测模块150也可以基于该部分肢体节点在该图像帧中的位置,例如通过,但不限于,反向运动学方法,推测用户肢体的其他被遮挡肢体节点在该图像帧中的位置,进而确定用户肢体在该图像帧中的姿态。
在本申请的实施例中,在用户肢体的至少一个肢体节点未被遮挡的情况下,利用用户肢体的至少一个肢体节点的运动数据和位移来训练推测模型,由于用户肢体的至少一个肢体节点的运动数据和位移之间存在直接的对应关系,因此,相对于现有技术中在训练推测模型时以人工猜测被遮挡部位的可能姿态作为训练标签,根据本申请实施例的推测模型的准确性和鲁棒性会更高。
进一步地,在本申请的实施例中,在肢体姿态的非实时推测场景下,通过使用双向循环网络,以肢体节点在被遮挡时刻之后的运动数据以及肢体节点在再次未被遮挡时刻的位置作为后验知识,推测肢体节点的位移,可以提高位移推测的准确性。
进一步地,在本申请的实施例中,以用户的运动模式作为先验知识来推测用户肢体的至少一个肢体节点在被遮挡时刻的位置,可以提高位移推测的准确性。
进一步地,在本申请的实施例中,通过对用户的推测模型和其他用户的推测模型进行集成,可以提升对用户肢体节点的位移的推测精度,尤其是在用户的训练数据较少导致用户的推测模型的推测性能较差的情况下。
图10示出了根据本申请实施例的跑步路线处理装置1000的一种结构示意图。装置1000可以包括一个或多个处理器1002,与处理器1002中的至少一个连接的系统控制逻辑1008,与系统控制逻辑1008连接的系统内存1004,与系统控制逻辑1008连接的非易失性存储器(NVM)1006,以及与系统控制逻辑1008连接的网络接口1010。
处理器1002可以包括一个或多个单核或多核处理器。处理器1002可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任何组合。在本申请的实施例中,处理器1002可以被配置为执行根据如图7-9所示的各种实施例的一个或多个实施例。
在一些实施例中,系统控制逻辑1008可以包括任意合适的接口控制器,以向处理器1002中的至少一个和/或与系统控制逻辑1008通信的任意合适的设备或组件提供任意合适的接口。
在一些实施例中,系统控制逻辑1008可以包括一个或多个存储器控制器,以提供连接到系统内存1004的接口。系统内存1004可以用于加载以及存储数据和/或指令。在一些实施例中装置1000的内存1004可以包括任意合适的易失性存储器,例如合适的动态随机存取存储器(DRAM)。
NVM/存储器1006可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,NVM/存储器1006可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如HDD(Hard Disk Drive,硬盘驱动器),CD(Compact Disc,光盘)驱动器,DVD(Digital Versatile Disc,数字通用光盘)驱动器中的至少一个。
NVM/存储器1006可以包括安装在装置1000的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口1010通过网络访问NVM/存储1006。
特别地,系统内存1004和NVM/存储器1006可以分别包括:指令1020的暂时副本和永久副本。指令1020可以包括:由处理器1002中的至少一个执行时导致装置1000实施如图3-4所示的方法的指令。在一些实施例中,指令1020、硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑1008,网络接口1010和/或处理器1002中。
网络接口1010可以包括收发器,用于为装置1000提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中,网络接口1010可以集成于装置1000的其他组件。例如,网络接口1010可以集成于处理器1002的,系统内存1004,NVM/存储器1006,和具有指令的固件设备(未示出)中的至少一种。
网络接口1010可以进一步包括任意合适的硬件和/或固件,以提供多输入多输出无线电接口。例如,网络接口1010可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。
在一个实施例中,处理器1002中的至少一个可以与用于系统控制逻辑1008的一个或多个控制器的逻辑封装在一起,以形成系统封装(SiP)。在一个实施例中,处理器1002中的至少一个可以与用于系统控制逻辑1008的一个或多个控制器的逻辑集成在同一管芯上,以形成片上系统(SoC)。
装置1000可以进一步包括:输入/输出(I/O)接口1012。I/O接口1012可以包括用户界面,使得用户能够与装置1000进行交互;外围组件接口的设计使得外围组件也能够与装置1000交互。在一些实施例中,装置1000还包括传感器,用于确定与装置1000相关的环境条件和位置信息的至少一种。
在一些实施例中,用户界面可包括但不限于显示器(例如,液晶显示器,触摸屏显示器等),扬声器,麦克风,一个或多个相机(例如,静止图像照相机和/或摄像机),手电筒(例如,发光二极管闪光灯)和键盘。
在一些实施例中,外围组件接口可以包括但不限于非易失性存储器端口、音频插孔和电源接口。
在一些实施例中,传感器可包括但不限于陀螺仪传感器,加速度计,近程传感器,环境光线传感器和定位单元。定位单元还可以是网络接口1010的一部分或与网络接口1010交互,以与定位网络的组件(例如,全球定位系统(GPS)卫星)进行通信。
虽然本申请的描述将结合较佳实施例一起介绍,但这并不代表此发明的特征仅限于该实施方式。恰恰相反,结合实施方式作发明介绍的目的是为了覆盖基于本申请的权利要求而有可能延伸出的其它选择或改造。为了提供对本申请的深度了解,以下描述中将包含许多具体的细节。本申请也可以不使用这些细节实施。此外,为了避免混乱或模糊本申请的重点,有些具体细节将在描述中被省略。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
此外,各种操作将以最有助于理解说明性实施例的方式被描述为多个离散操作;然而,描述的顺序不应被解释为暗示这些操作必须依赖于顺序。特别是,这些操作不需要按呈现顺序执行。
除非上下文另有规定,否则术语“包含”,“具有”和“包括”是同义词。短语“A/B”表示“A或B”。短语“A和/或B”表示“(A和B)或者(A或B)”。
如这里所使用的,术语“模块”或“单元”可以指代、是或者包括:专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的(共享、专用或组)处理器和/或存储器、组合逻辑电路和/或提供所描述的功能的其他合适的组件。
在附图中,以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可以不需要这样的特定布置和/或排序。在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包含结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。在一些情况下,至少一些实施例的一个或多个方面可以由存储在计算机可读存储介质上的表示性指令来实现,指令表示处理器中的各种逻辑,指令在被机器读取时使得该机器制作用于执行本申请所述的技术的逻辑。被称为“IP核”的这些表示可以被存储在有形的计算机可读存储介质上,并被提供给多个客户或生产设施以加载到实际制造该逻辑或处理器的制造机器中。
这样的计算机可读存储介质可以包括但不限于通过机器或设备制造或形成的物品的非瞬态的有形安排,其包括存储介质,诸如:硬盘任何其它类型的盘,包括软盘、光盘、紧致盘只读存储器(CD-ROM)、紧致盘可重写(CD-RW)以及磁光盘;半导体器件,例如只读存储器(ROM)、诸如动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)之类的随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、闪存、电可擦除可编程只读存储器(EEPROM);相变存储器(PCM);磁卡或光卡;或适于存储电子指令的任何其它类型的介质。
因此,本申请的各实施例还包括非瞬态的计算机可读存储介质,该介质包含指令或包含设计数据,诸如硬件描述语言(HDL),它定义本申请中描述的结构、电路、装置、处理器和/或系统特征。
Claims (52)
1.一种确定用户的至少一个肢体节点的位置的方法,其特征在于,所述方法包括:
在所述至少一个肢体节点未被遮挡的情况下,根据所述至少一个肢体节点在第一时刻的位置和在第二时刻的位置,确定所述至少一个肢体节点在所述第一时刻和所述第二时刻之间的第一时间段内的第一位移;
获取与所述至少一个肢体节点在所述第一时间段内的运动相关的第一运动数据;
至少部分地根据所述第一位移和所述第一运动数据,训练推测模型,其中所述推测模型用于在所述至少一个肢体节点从未被遮挡到被遮挡的情况下,根据第二时间段内的运动相关的第二运动数据,推测所述至少一个肢体节点在所述第二时间段内的第二位移,其中,所述第二时间段包括所述至少一个肢体节点在所述未被遮挡的时刻到所述被遮挡的时刻之间的时间段,以及所述推测模型还用于基于所述第二位移和所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置确定所述至少一个肢体节点在所述被遮挡的情况下的被遮挡位置。
2.如权利要求1所述的方法,其特征在于,所述第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
3.如权利要求1所述的方法,其特征在于,根据所述至少一个肢体节点在第一时刻的位置和在第二时刻的位置,确定所述至少一个肢体节点在所述第一时刻和所述第二时刻之间的第一时间段内的第一位移,还包括:
在所述第一时刻获取第一图像帧,并且在所述第二时刻获取第二图像帧;
根据所述第一图像帧中所述至少一个肢体节点的位置和在所述第二图像帧中所述至少一个肢体节点的位置,确定所述至少一个肢体节点在所述第一时间段内的所述第一位移。
4.如权利要求1所述的方法,其特征在于,所述至少部分地根据所述第一位移和所述第一运动数据,训练推测模型,还包括:
至少部分地将所述第一运动数据作为特征输入并且将所述第一位移作为目标类别,训练所述推测模型。
5.如权利要求1所述的方法,其特征在于,所述推测模型包括循环神经网络(recurrentneural network,RNN)、长短期记忆(long short-term memory,LSTM)网络、门控循环单元(gated recurrent unit,GRU)网络、双向循环神经网络(bidirectional recurrentneural network,BRNN)中的至少一种。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
在所述至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与所述第二时间段内的运动相关的所述第二运动数据;
利用所述推测模型,基于所述第二运动数据,推测所述至少一个肢体节点在所述第二时间段内的所述第二位移;
至少部分地基于所述第二位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置,确定所述至少一个肢体节点在所述被遮挡的情况下的所述被遮挡位置。
7.如权利要求6所述的方法,其特征在于,所述第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
8.如权利要求6所述的方法,其特征在于,所述第二时间段的长度与所述第一时间段的长度相同。
9.如权利要求1所述的方法,其特征在于,所述方法还包括:
在所述至少一个肢体节点在从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第三时间段内的运动相关的第三运动数据,其中,所述第三时间段包括在所述未被遮挡的时刻和所述再次未被遮挡的时刻之间的时间段;
利用所述推测模型,基于所述第三运动数据,推测所述至少一个肢体节点在所述第三时间段内的第三位移;
至少部分地基于所述第三位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置和在所述再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定所述至少一个肢体节点在所述被遮挡的情况下的所述被遮挡位置。
10.如权利要求9所述的方法,其特征在于,所述第三运动数据包括第三加速度、第三角速度、第三运动方向以及第三运动模式中的至少一个。
11.如权利要求9所述的方法,其特征在于,其中所述第三时间段的长度与所述第一时间段的长度相同。
12.如权利要求1至11中任一项所述的方法,其特征在于,所述方法还包括:
接收用于至少一个其他用户的其他推测模型,其中所述其他推测模型用于在所述至少一个其他用户的至少一个肢体节点被遮挡的情况下,推测所述至少一个其他用户的所述至少一个肢体节点的被遮挡位置;
对所述推测模型和所述其他推测模型进行集成,并获取集成的推测模型;
在所述用户的所述至少一个肢体节点被遮挡的情况下,利用所述集成的推测模型推测所述至少一个肢体节点的所述被遮挡位置。
13.一种确定用户的至少一个肢体节点的位置的方法,其特征在于,所述方法包括:
在所述至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中所述第一时间段包括所述至少一个肢体节点在所述未被遮挡的时刻到所述被遮挡的时刻之间的时间段;
利用推测模型,基于所述第一运动数据,推测所述至少一个肢体节点在所述第一时间段内的第一位移;
至少部分地基于所述第一位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置,确定所述至少一个肢体节点在所述被遮挡的时刻的被遮挡位置。
14.如权利要求13所述的方法,其特征在于,所述第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
15.如权利要求13所述的方法,其特征在于,所述推测模型包括至少部分地基于所述至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中所述至少一个肢体节点在所述第二时间段内未被遮挡,并且所述第二时间段的长度与所述第一时间段的长度相同。
16.如权利要求15所述的方法,其特征在于,所述第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
17.如权利要求13至16中任一项所述的方法,其特征在于,所述推测模型包括循环神经网络、长短期记忆网络、门控循环单元中的至少一种。
18.如权利要求13至16中任一项所述的方法,其特征在于,所述至少部分地基于所述第一位移以及所述至少一个肢体节点在所述未被遮挡时刻的未被遮挡位置,确定所述至少一个肢体节点在所述被遮挡时刻的所述被遮挡位置,还包括:
在所述未被遮挡的时刻获取所述至少一个肢体节点的未被遮挡图像帧,并根据所述未被遮挡图像帧确定所述未被遮挡位置。
19.一种确定用户的至少一个肢体节点的位置的方法,其特征在于,所述方法包括:
在用户的至少一个肢体节点从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中所述第一时间段包括在所述未被遮挡的时刻和所述再次未被遮挡的时刻之间的时间段;
利用推测模型,基于所述第一运动数据,推测所述至少一个肢体节点在所述第一时间段内的第一位移;
至少部分地基于所述第一位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置和所述再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定所述至少一个肢体节点在所述被遮挡的时刻的被遮挡位置。
20.如权利要求19所述的方法,其特征在于,所述第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
21.如权利要求19所述的方法,其特征在于,所述推测模型包括至少部分地基于所述至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中所述至少一个肢体节点在所述第二时间段内未被遮挡,并且其中所述第二时间段的长度与从所述未被遮挡的时刻到所述被遮挡的时刻之间的时间段的长度相同,和/或,所述第二时间段的长度与从所述被遮挡的时刻到所述再次未被遮挡的时刻之间的时间段的长度相同。
22.如权利要求21所述的方法,其特征在于,所述第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
23.如权利要求19至22中任一项所述的方法,其特征在于,所述推测模型包括双向循环神经网络。
24.如权利要求19至22中任一项所述的方法,其特征在于,所述第一位移包括从所述未被遮挡位置到所述被遮挡位置的位移和从所述被遮挡位置到所述再次未被遮挡位置的位移中的至少一个。
25.如权利要求19至22中任一项所述的方法,其特征在于,所述至少部分地基于所述第一位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置和所述再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定所述至少一个肢体节点在所述被遮挡情况下的被遮挡位置,还包括:
获取所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡图像帧,并根据所述未被遮挡图像帧确定所述未被遮挡位置;和/或
获取所述至少一个肢体节点在所述再次未被遮挡的时刻的再次未被遮挡图像帧,并根据所述再次未被遮挡图像帧确定所述再次未被遮挡位置。
26.一种计算机可读存储介质,其特征在于,在所述计算机可读存储上存储有指令,当所述指令在机器上运行时,使得所述机器执行权利要求1至25中任意一项所述的方法。
27.一种确定用户的至少一个肢体节点的位置的系统,其特征在于,包括:
处理器;
存储器,在所述存储器上存储有指令,当所述指令被所述处理器运行时,使得所述处理器执行权利要求1至25中任意一项所述的方法。
28.一种确定用户的至少一个肢体节点的位置的装置,其特征在于,所述装置包括:
图像处理模块,用于在所述至少一个肢体节点未被遮挡的情况下,根据所述至少一个肢体节点在第一时刻的位置和在第二时刻的位置,确定所述至少一个肢体节点在所述第一时刻和所述第二时刻之间的第一时间段内的第一位移;
运动数据获取模块,获取与所述至少一个肢体节点在所述第一时间段内的运动相关的第一运动数据;
推测模型训练模块,至少部分地根据所述第一位移和所述第一运动数据,训练推测模型,其中所述推测模型用于在所述至少一个肢体节点从未被遮挡到被遮挡的情况下,根据第二时间段内的运动相关的第二运动数据,推测所述至少一个肢体节点在所述第二时间段内的第二位移,其中,所述第二时间段包括所述至少一个肢体节点在所述未被遮挡的时刻到所述被遮挡的时刻之间的时间段,以及所述推测模型还用于基于所述第二位移和所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置确定所述至少一个肢体节点在所述被遮挡的情况下的被遮挡位置。
29.如权利要求28所述的装置,其特征在于,所述第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
30.如权利要求28所述的装置,其特征在于,所述装置还包括图像采集模块,用于在所述第一时刻获取第一图像帧,并且在所述第二时刻获取第二图像帧;并且
其中,所述图像处理模块根据所述第一图像帧中所述至少一个肢体节点的位置和在所述第二图像帧中所述至少一个肢体节点的位置,确定所述至少一个肢体节点在所述第一时间段内的所述第一位移。
31.如权利要求28所述的装置,其特征在于,所述推测模型训练模块用于至少部分地根据所述第一位移和所述第一运动数据,训练推测模型,包括用于:
至少部分地将所述第一运动数据作为特征输入并且将所述第一位移作为目标类别,训练所述推测模型。
32.如权利要求28所述的装置,其特征在于,所述推测模型包括循环神经网络、长短期记忆网络、门控循环单元网络、双向循环神经网络中的至少一种。
33.如权利要求28所述的装置,其特征在于:
所述运动数据获取模块还用于,在所述至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与所述第二时间段内的运动相关的所述第二运动数据;和
所述装置还包括推测模块,所述推测模块用于,利用所述推测模型,基于所述第二运动数据,推测所述至少一个肢体节点在所述第二时间段内的所述第二位移;以及
所述推测模块还用于,至少部分地基于所述第二位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置,确定所述至少一个肢体节点在所述被遮挡的情况下的所述被遮挡位置。
34.如权利要求33所述的装置,其特征在于,所述第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
35.如权利要求33所述的装置,其特征在于,所述第二时间段的长度与所述第一时间段的长度相同。
36.如权利要求28所述的装置,其特征在于:
所述运动数据获取模块还用于,在所述至少一个肢体节点在从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第三时间段内的运动相关的第三运动数据,其中,所述第三时间段包括在所述未被遮挡的时刻和所述再次未被遮挡的时刻之间的时间段;
所述装置还包括推测模块,所述推测模块用于,利用所述推测模型,基于所述第三运动数据,推测所述至少一个肢体节点在所述第三时间段内的第三位移;以及
所述推测模块还用于,至少部分地基于所述第三位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置和在所述再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定所述至少一个肢体节点在所述被遮挡的情况下的所述被遮挡位置。
37.如权利要求36所述的装置,其特征在于,所述第三运动数据包括第三加速度、第三角速度、第三运动方向以及第三运动模式中的至少一个。
38.如权利要求36所述的装置,其特征在于,其中所述第三时间段的长度与所述第一时间段的长度相同。
39.如权利要求33至38中任一项所述的装置,其特征在于:
所述装置还包括通信模块,用于接收用于至少一个其他用户的其他推测模型,其中所述其他推测模型用于在所述至少一个其他用户的至少一个肢体节点被遮挡的情况下,推测所述至少一个其他用户的所述至少一个肢体节点的被遮挡位置;和
所述推测模型训练模块还用于,对所述推测模型和所述其他推测模型进行集成,并获取集成的推测模型;以及
所述推测模块还用于,在所述用户的所述至少一个肢体节点被遮挡的情况下,利用所述集成的推测模型推测所述至少一个肢体节点的所述被遮挡位置。
40.一种确定用户的至少一个肢体节点的位置的装置,其特征在于,所述装置包括:
运动数据获取模块,用于在所述至少一个肢体节点从未被遮挡到被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中所述第一时间段包括所述至少一个肢体节点在所述未被遮挡的时刻到所述被遮挡的时刻之间的时间段;
推测模块,用于利用推测模型,基于所述第一运动数据,推测所述至少一个肢体节点在所述第一时间段内的第一位移;
所述推测模块还用于,至少部分地基于所述第一位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置,确定所述至少一个肢体节点在所述被遮挡的时刻的被遮挡位置。
41.如权利要求40所述的装置,其特征在于,所述第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
42.如权利要求40所述的装置,其特征在于,所述推测模型包括至少部分地基于所述至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中所述至少一个肢体节点在所述第二时间段内未被遮挡,并且所述第二时间段的长度与所述第一时间段的长度相同。
43.如权利要求42所述的装置,其特征在于,所述第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
44.如权利要求40至43中任一项所述的装置,其特征在于,所述推测模型包括循环神经网络、长短期记忆网络、门控循环单元中的至少一种。
45.如权利要求40至43中任一项所述的装置,其特征在于,所述装置还包括图像采集模块和图像处理模块,其中,所述图像采集模块用于在所述未被遮挡的时刻获取所述至少一个肢体节点的未被遮挡图像帧,所述图像处理模块用于根据所述未被遮挡图像帧确定所述未被遮挡位置。
46.一种确定用户的至少一个肢体节点的位置的装置,其特征在于,所述装置包括:
运动数据获取模块,用于在用户的至少一个肢体节点从未被遮挡经被遮挡到再次未被遮挡的情况下,获取与第一时间段内的运动相关的第一运动数据,其中所述第一时间段包括在所述未被遮挡的时刻和所述再次未被遮挡的时刻之间的时间段;
推测模块,用于利用推测模型,基于所述第一运动数据,推测所述至少一个肢体节点在所述第一时间段内的第一位移;
所述推测模块还用于,至少部分地基于所述第一位移以及所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡位置和所述再次未被遮挡的时刻的再次未被遮挡位置中的至少一个,确定所述至少一个肢体节点在所述被遮挡的时刻的被遮挡位置。
47.如权利要求46所述的装置,其特征在于,所述第一运动数据包括第一加速度、第一角速度、第一运动方向以及第一运动模式中的至少一个。
48.如权利要求46所述的装置,其特征在于,所述推测模型包括至少部分地基于所述至少一个肢体节点在第二时间段内的第二运动数据和第二位移训练的模型,其中所述至少一个肢体节点在所述第二时间段内未被遮挡,并且其中所述第二时间段的长度与从所述未被遮挡的时刻到所述被遮挡的时刻之间的时间段的长度相同,和/或,所述第二时间段的长度与从所述被遮挡的时刻到所述再次未被遮挡的时刻之间的时间段的长度相同。
49.如权利要求48所述的装置,其特征在于,所述第二运动数据包括第二加速度、第二角速度、第二运动方向以及第二运动模式中的至少一个。
50.如权利要求46至49中任一项所述的装置,其特征在于,所述推测模型包括双向循环神经网络。
51.如权利要求46至49中任一项所述的装置,其特征在于,所述第一位移包括从所述未被遮挡位置到所述被遮挡位置的位移和从所述被遮挡位置到所述再次未被遮挡位置的位移中的至少一个。
52.如权利要求46至49中任一项所述的装置,其特征在于,所述装置还包括:
图像采集模块,用于获取所述至少一个肢体节点在所述未被遮挡的时刻的未被遮挡图像帧,和/或,获取所述至少一个肢体节点在所述再次未被遮挡的时刻的再次未被遮挡图像帧;
图像处理模块,用于根据所述未被遮挡图像帧确定所述未被遮挡位置,和/或,根据所述再次未被遮挡图像帧确定所述再次未被遮挡位置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911358174.4A CN113111678B (zh) | 2019-12-25 | 2019-12-25 | 一种用户的肢体节点的位置确定方法、装置、介质及系统 |
PCT/CN2020/136834 WO2021129487A1 (zh) | 2019-12-25 | 2020-12-16 | 一种用户的肢体节点的位置确定方法、装置、介质及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911358174.4A CN113111678B (zh) | 2019-12-25 | 2019-12-25 | 一种用户的肢体节点的位置确定方法、装置、介质及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113111678A CN113111678A (zh) | 2021-07-13 |
CN113111678B true CN113111678B (zh) | 2024-05-24 |
Family
ID=76573673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911358174.4A Active CN113111678B (zh) | 2019-12-25 | 2019-12-25 | 一种用户的肢体节点的位置确定方法、装置、介质及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113111678B (zh) |
WO (1) | WO2021129487A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116681216A (zh) * | 2023-07-31 | 2023-09-01 | 山东莱恩光电科技股份有限公司 | 基于安全光幕历史数据的冲压器械安全监测方法 |
CN118094475B (zh) * | 2024-04-19 | 2024-07-23 | 华南理工大学 | 一种基于多传感器融合的手势识别系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017168029A (ja) * | 2016-03-18 | 2017-09-21 | Kddi株式会社 | 行動価値によって調査対象の位置を予測する装置、プログラム及び方法 |
CN107833271A (zh) * | 2017-09-30 | 2018-03-23 | 中国科学院自动化研究所 | 一种基于Kinect的骨骼重定向方法及装置 |
CN107847187A (zh) * | 2015-07-07 | 2018-03-27 | 皇家飞利浦有限公司 | 用于对肢体的至少部分进行运动跟踪的装置和方法 |
CN108537156A (zh) * | 2018-03-30 | 2018-09-14 | 广州幻境科技有限公司 | 一种抗遮挡的手部关键节点追踪方法 |
CN108919943A (zh) * | 2018-05-22 | 2018-11-30 | 南京邮电大学 | 一种基于深度传感器的实时手部追踪方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9165199B2 (en) * | 2007-12-21 | 2015-10-20 | Honda Motor Co., Ltd. | Controlled human pose estimation from depth image streams |
TWI427558B (zh) * | 2010-12-06 | 2014-02-21 | Ind Tech Res Inst | 遮蔽骨架之位置估算系統、遮蔽骨架之位置估算方法及遮蔽骨架之重建方法 |
-
2019
- 2019-12-25 CN CN201911358174.4A patent/CN113111678B/zh active Active
-
2020
- 2020-12-16 WO PCT/CN2020/136834 patent/WO2021129487A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107847187A (zh) * | 2015-07-07 | 2018-03-27 | 皇家飞利浦有限公司 | 用于对肢体的至少部分进行运动跟踪的装置和方法 |
JP2017168029A (ja) * | 2016-03-18 | 2017-09-21 | Kddi株式会社 | 行動価値によって調査対象の位置を予測する装置、プログラム及び方法 |
CN107833271A (zh) * | 2017-09-30 | 2018-03-23 | 中国科学院自动化研究所 | 一种基于Kinect的骨骼重定向方法及装置 |
CN108537156A (zh) * | 2018-03-30 | 2018-09-14 | 广州幻境科技有限公司 | 一种抗遮挡的手部关键节点追踪方法 |
CN108919943A (zh) * | 2018-05-22 | 2018-11-30 | 南京邮电大学 | 一种基于深度传感器的实时手部追踪方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113111678A (zh) | 2021-07-13 |
WO2021129487A1 (zh) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11798271B2 (en) | Depth and motion estimations in machine learning environments | |
US20190065872A1 (en) | Behavior recognition apparatus, learning apparatus, and method and program therefor | |
Piao et al. | Real-time visual–inertial SLAM based on adaptive keyframe selection for mobile AR applications | |
CN110717927A (zh) | 基于深度学习和视惯融合的室内机器人运动估计方法 | |
JP5893726B2 (ja) | 複数のデバイス状態を分類するための方法および装置 | |
CN110770758A (zh) | 确定可移动的设备的位置 | |
CN113111678B (zh) | 一种用户的肢体节点的位置确定方法、装置、介质及系统 | |
WO2021051224A1 (en) | Stochastic trajectory prediction using social graph networks | |
CN113221726A (zh) | 一种基于视觉与惯性信息融合的手部姿态估计方法及系统 | |
EP2899706B1 (en) | Method and system for analyzing human behavior in an intelligent surveillance system | |
KR102436906B1 (ko) | 대상자의 보행 패턴을 식별하는 방법 및 이를 수행하는 전자 장치 | |
Olmschenk et al. | Pitch and roll camera orientation from a single 2D image using convolutional neural networks | |
Takano et al. | Action database for categorizing and inferring human poses from video sequences | |
Jo et al. | Mixture density-PoseNet and its application to monocular camera-based global localization | |
CN110785777A (zh) | 确定可移动的设备的位置 | |
Pavllo et al. | Real-time marker-based finger tracking with neural networks | |
TWI812053B (zh) | 定位方法、電子設備及電腦可讀儲存媒體 | |
CN114863566A (zh) | 一种人体运动行为识别方法 | |
KR20200057572A (ko) | 딥러닝 기반 손 인식 증강현실 상호 작용 장치 및 방법 | |
Chen et al. | An integrated sensor network method for safety management of construction workers | |
US20240095527A1 (en) | Training machine learning models using simulation for robotics systems and applications | |
Zhang et al. | A Low-Cost Skiing Motion Capture System Based on Monocular RGB Camera and MINS Fusion | |
US20240331360A1 (en) | Method and apparatus for extracting result information using machine learning | |
CN109325962A (zh) | 信息处理方法、装置、设备以及计算机可读存储介质 | |
US20240355026A1 (en) | Skeleton correction method of avatar, virtual reality system, and computer-readable medium |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |