CN116824689A - 骨骼序列行为识别方法、装置、设备及存储介质 - Google Patents
骨骼序列行为识别方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116824689A CN116824689A CN202310446265.3A CN202310446265A CN116824689A CN 116824689 A CN116824689 A CN 116824689A CN 202310446265 A CN202310446265 A CN 202310446265A CN 116824689 A CN116824689 A CN 116824689A
- Authority
- CN
- China
- Prior art keywords
- capsule
- action
- bone
- layer
- space
- 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
- 210000000988 bone and bone Anatomy 0.000 title claims abstract description 137
- 238000000034 method Methods 0.000 title claims abstract description 70
- 239000002775 capsule Substances 0.000 claims abstract description 253
- 230000009471 action Effects 0.000 claims abstract description 148
- 230000033001 locomotion Effects 0.000 claims abstract description 86
- 230000007246 mechanism Effects 0.000 claims abstract description 36
- 230000004931 aggregating effect Effects 0.000 claims abstract description 3
- 239000013598 vector Substances 0.000 claims description 75
- 230000006399 behavior Effects 0.000 claims description 42
- 239000011159 matrix material Substances 0.000 claims description 26
- 230000000875 corresponding effect Effects 0.000 claims description 17
- 238000011176 pooling Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 16
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 12
- 210000002569 neuron Anatomy 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 8
- 238000010606 normalization Methods 0.000 claims description 7
- 230000002441 reversible effect Effects 0.000 claims description 5
- 230000004913 activation Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 4
- 230000004069 differentiation Effects 0.000 claims 1
- 238000013528 artificial neural network Methods 0.000 description 13
- 238000013473 artificial intelligence Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 11
- 238000013527 convolutional neural network Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000013519 translation Methods 0.000 description 7
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000000605 extraction Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007847 structural defect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000725 suspension Substances 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
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/52—Scale-space analysis, e.g. wavelet analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/62—Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
- G06V10/765—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects using rules for classification or partitioning the feature space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/809—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of classification results, e.g. where the classifiers operate on the same input data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及图像识别技术领域,公开一种骨骼序列行为识别方法、装置、设备及存储介质。该方法包括:获取骨骼序列图像的骨骼数据;将骨骼数据输入预设的胶囊网络模型;提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果;根据区分结果以及骨骼点的时空特征构建主胶囊;迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,每一个动作胶囊对应一种动作类别;通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果。本发明实施例可以提高骨骼动作识别的准确性和可用性。
Description
技术领域
本发明涉及图像识别技术领域,尤其是一种骨骼序列行为识别方法、装置、设备及存储介质。
背景技术
在过去几年中,骨骼动作识别已经成为计算机视觉领域的一个热门研究方向。在许多实际场景中,例如体育比赛、医疗康复和安防等领域,对于人体动作的精确识别和分类具有非常重要的应用价值。然而,由于传统的基于图像或视频的动作识别方法受到了光照、噪声等因素的影响,因此在实际应用中存在一定的局限性。
为解决上述技术问题,相关技术中,研究者们采用基于神经网络的动作识别方法对输入的骨骼关节数据进行识别,以实现骨骼动作识别,具有较强的鲁棒性和准确性,现有的基于神经网络的动作识别方法大多采用传统的深度神经网络模型,如卷积神经网络和循环神经网络,这些模型对于复杂的人体动作模式的建模能力有一定限制,准确性偏低。
发明内容
本发明的目的是提供一种骨骼序列行为识别方法、装置、设备及存储介质,旨在提高骨骼动作识别的准确性和可用性。
第一方面,提供一种骨骼序列行为识别方法,包括:
获取骨骼序列图像的骨骼数据,所述骨骼数据由多个骨骼点组成;
将骨骼数据输入预设的胶囊网络模型,所述胶囊网络模型包括残差时间卷积层和胶囊网络层,所述胶囊网络层包括主胶囊子层、动作胶囊子层和分类子层;
基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果;
基于主胶囊子层,根据区分结果以及骨骼点的时空特征构建主胶囊,所述主胶囊为符合动态路由机制的神经元集合;
基于动作胶囊子层,迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,每一个动作胶囊对应一种动作类别;
基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果。
在一些实施例中,所述胶囊网络模型还包括前处理层,所述骨骼序列行为识别方法,还包括:
将各骨骼点转换至同一坐标系内进行表示,得到坐标转换数据;
对坐标转换数据进行归一化处理,得到归一化转换数据;
对各归一化转换数据的坐标向量进行动作特征提取,将提取得到的多个动作特征向量进行拼接,得到用于输入残差时间卷积层的前处理数据。
在一些实施例中,所述基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果,包括:
将骨骼数据映射到高维空间,通过卷积操作提取映射到高维空间的骨骼数据的时空特征,得到时空特征向量;
在帧级和关节级对时空特征向量进行池化处理,得到池化特征;
根据池化特征在针对时空特征的注意力机制中的注意评分确定对应骨骼点的重要程度,根据骨骼点的重要程度对骨骼点的时空特征赋予相应权重,作为区分结果。
在一些实施例中,所述针对时空特征的注意力机制具体表示如下:
其中,fin和fout表示输入和输出特征映射,表示连接操作,/>和⊙分别表示通道外积和元素积,poolt(·)和poolv(·)分别是帧级和关节级上的平均池化操作,σ(·)和θ(·)分别代表Sigmoid和HardSwish激活函数,/>是可训练的参数。
在一些实施例中,所述迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,包括:
基于动态路由机制将主胶囊的时空特征传递至动作胶囊,通过动作胶囊学习主胶囊对应动作的特征表示,计算各动作胶囊之间的空间关系和方向,得到姿态矩阵;
基于姿态矩阵计算各动作胶囊之间的距离和相对方向,通过反向动态路由机制迭代更新各动作胶囊向上传递的权重分配向量以及权重分配向量的加权系数,得到调整后的权重分配向量和加权系数;
基于调整后的权重分配向量和加权系数,使用动作胶囊提取主胶囊的动作特征,得到动作预测信息。
在一些实施例中,所述基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果,包括:
测量动作胶囊输出的动作预测信息与训练集中的预设预测信息之间的距离,得到预测差距值;
将预测差距值映射到具体的动作类别,计算预测差距值相对于各个动作类别的概率值,得到动作概率值,将动作概率值进行归一化处理,得到归一化概率值;
对动作类别在每个阶段得到的归一化概率值进行求和,以概率求和结果最大的动作类别作为识别结果。
在一些实施例中,所述骨骼序列行为识别方法,还包括:
通过量化三个维度间的关系,即按照一定的比例缩放系数配置模型的宽度、深度以及分辨率,得到多个不同规模的网络,再通过对比不同规模的网络的性能,选择出适合的模型,得到胶囊网络模型。
第二方面,提供一种骨骼序列行为识别装置,所述装置包括:
第一模块,用于获取骨骼序列图像的骨骼数据,所述骨骼数据由多个骨骼点组成;
第二模块,用于将骨骼数据输入预设的胶囊网络模型,所述胶囊网络模型包括残差时间卷积层和胶囊网络层,所述胶囊网络层包括主胶囊子层、动作胶囊子层和分类子层;
第三模块,用于基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果;
第四模块,用于基于主胶囊子层,根据区分结果以及骨骼点的时空特征构建主胶囊,所述主胶囊为符合动态路由机制的神经元集合;
第五模块,用于基于动作胶囊子层,迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,每一个动作胶囊对应一种动作类别;
第六模块,用于基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果。
第三方面,提供一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的骨骼序列行为识别方法。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的骨骼序列行为识别方法。
本发明的有益效果:基于胶囊网络模型对骨骼序列图像的动作类别进行识别,使用结合了针对时空特征的注意力机制的残差时间卷积模块从骨骼数据提取时空特征,通过区分出携带目标时空特征的骨骼点来确定骨骼点的重要程度,在主胶囊子层构造主胶囊来表示骨骼点,通过动作胶囊子层迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的动作特征,每个主胶囊可通过动态路由将输出送至动作胶囊,迭代过程将剔除导致错误分类的骨骼点信息并强调有效骨骼点,使胶囊网络模型能有效地通过关注特定骨骼点以识别对应的动作类别,能更好地捕捉骨骼点之间的关系和组件的方向,使相似动作的区分得到较大的改善,提高骨骼动作识别的准确性和可用性。
附图说明
图1是本申请第一个实施例提供的骨骼序列行为识别方法的流程图。
图2是本申请第二个实施例提供的骨骼序列行为识别方法的流程图。
图3是图1中的步骤S103的流程图。
图4是图1中的步骤S105的流程图。
图5是图1中的步骤S106的流程图。
图6是本申请实施例提供的骨骼序列行为识别装置的结构示意图。
图7是本申请实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
首先,对本申请中涉及的若干名词进行解析:
人工智能(artificial intelligence,AI):是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
胶囊网络(CapsNet):是一种向量型神经网络,在网络中能保存被处理对象的姿态信息(如精确的目标位置、旋转、厚度、倾斜、大小等信息),而不是丢失了之后再恢复,胶囊网络不仅蕴含特征出现的概率,还蕴含经典卷积神经网络由于池化等操作所丢失的诸如位置、倾斜、大小等姿态信息。胶囊网络由“胶囊”组成,“胶”是一组神经元,而不是单个神经元经典神经网络由神经元组成,每个经典神经元的输入输出都是标量每个胶囊的输入和输出都是向量,每个胶囊代表了被处理对象的一种属性胶囊的向量值对应该属性的值。
相关技术中,基于骨骼关节数据的动作识别方法大多采用传统的深度神经网络模型,如卷积神经网络(GCN)和循环神经网络(RNN),这些模型对于复杂的人体动作模式的建模能力有一定限制。
循环神经网络(RNN)结构具有缺陷,缺乏有效学习骨骼关节之间空间关系的能力。同时,基于循环神经网络(RNN)的方法需要自动调整观察点,为动作识别中的视点动态变化问题的解决增加了复杂度。另外,由于处理时空动态问题需要较深的神经网络以保证特征提取的完整性,而循环神经网络(RNN)在网络结构太深时,网络权重容易不稳定,而导致梯度爆炸和消失问题,骨骼动作特征捕获效果并不理想。
卷积神经网络(CNN)需要大量的标注数据进行训练,在处理时间和空间动态方面的问题时,这是一项非常耗费时间和资源的任务。同时,由于卷积神经网络结构缺陷,无法保留动作过程中所涉及的关节之间的空间关系,比如空间信息会在池化层中被丢弃,而卷积神经网络的每一层只是生成局部特征,这导致了关于关节之间关系的信息丢失。最后,卷积神经网络通常用于基于图像处理的任务,而基于骨架序列的行为识别任务是一个强依赖于时间维度的问题,需要平衡且更充分地利用空间信息和时域信息。为了满足卷积神经网络(CNN)输入的需要,三维的骨架序列数据通常要从向量序列转换为伪图像,然而获得具有时空信息的表征并不容易,将骨架关节编码为多个二维的伪图像后输入到卷积神经网络中来学习特征的解决方法只考虑相邻的关节,无法解释后期层中所有关节的共现。基于图卷积神经网络(GCN)的大多数方法采用静态图和固定邻接矩阵来捕获节点特征表示的空间相关性。然而,人体在运动时的每个节点都是动态变化的,基于静态图的图卷积无法动态捕获节点的特征。另外,图卷积神经网络难以获取三维骨架序列数据背后的潜在信息。由于骨架数据本身就是时空耦合的,因此将骨架数据转换为图时,关节和骨骼之间的连接也应该是时空耦合的,在时间和空间维度上有效地提取骨架数据的动态仍然具有挑战性。
基于此,本申请实施例提供了一种骨骼序列行为识别方法、装置、设备及存储介质,旨在提高骨骼动作识别的准确性和可用性。
本申请实施例提供的骨骼序列行为识别方法和装置、电子设备及存储介质,具体通过如下实施例进行说明,首先描述本申请实施例中的骨骼序列行为识别方法。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本申请实施例提供的骨骼序列行为识别方法,涉及人工智能技术领域。本申请实施例提供的骨骼序列行为识别方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现骨骼序列行为识别方法的应用等,但并不局限于以上形式。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本申请的各个具体实施方式中,当涉及到需要根据用户信息、用户行为数据,用户历史数据以及用户位置信息等与用户身份或特性相关的数据进行相关处理时,都会先获得用户的许可或者同意,而且,对这些数据的收集、使用和处理等,都会遵守相关国家和地区的相关法律法规和标准。此外,当本申请实施例需要获取用户的敏感个人信息时,会通过弹窗或者跳转到确认页面等方式获得用户的单独许可或者单独同意,在明确获得用户的单独许可或者单独同意之后,再获取用于使本申请实施例能够正常运行的必要的用户相关数据。
图1是本申请实施例提供的骨骼序列行为识别方法的第一个可选的流程图,图1中的方法可以包括但不限于包括步骤S101至步骤S106。
步骤S101,获取骨骼序列图像的骨骼数据。
所述骨骼数据由多个骨骼点组成。
在步骤S101中,获取骨骼序列图像的骨骼数据,具体是从不同帧的图像中标注骨骼序列图像的骨骼点(颈部,肩膀,肘部等),通过标准化处理,使得每个人体运动的三维骨骼数据都具有相同的骨骼点数量和格式,再连接各骨骼点构成骨骼,最终得到骨骼序列数据。
步骤S102,将骨骼数据输入预设的胶囊网络模型。
其中,胶囊网络模型包括残差时间卷积层和胶囊网络层,胶囊网络层包括主胶囊子层、动作胶囊子层和分类子层。
步骤S103,基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果。
其中,时空特征包括骨骼数据中各特征点的时间特征和空间特征。
在步骤S103中,残差时间卷积层用于依据每个骨骼数据的时空特征为每个骨骼点的特征进行编码,并由一个针对时空特征的注意力机制区分出带有更多信息的骨骼点,即携带目标时空特征的骨骼点,为每个骨骼点赋予不同的权重,作为区分结果。
残差时间卷积层用于提取输入数据中的局部特征。从骨骼数据提取时空特征,确定时空特征的重要程度,区分出携带目标时空特征的骨骼点。具体而言,该层使用了一个残差时间卷积网络,其中包含多个卷积层和激活函数,每个卷积层中插入了针对时空特征的注意力机制,卷积操作将输入的骨架数据映射到高维空间中,并提取出每个骨骼点的特征向量。
可以理解的是,针对时空特征的注意力机制用于从整个骨架序列中找到最为关键的骨骼点,增强模型提取判别特征的能力,同时该注意模块可以免去处理数据时在骨架图中手工划分部位的步骤,从而避免了需要在每个部位的节点上设计适当的池化规则问题。
步骤S104,基于主胶囊子层,根据区分结果以及骨骼点的时空特征构建主胶囊。
其中,主胶囊为符合动态路由机制的神经元集合。
在步骤S104中,主胶囊子层中的每个主胶囊对应一个骨骼点,主胶囊子层的输入为残差时间卷积模块输出的对应骨骼点的特征向量,通过动态路由算法将残差时间卷积层输出的特征向量转化为胶囊表示形式。
在主胶囊子层中,利用对应骨骼点的特征向量构建主胶囊。具体来说,骨骼点的特征向量表示为ui,主胶囊i与动作胶囊j之间信息传递的权重矩阵表示为Wij,用耦合系数cij描述主胶囊i的输出对动作胶囊j的贡献强度,初始化得到log先验矩阵binit。在主胶囊的构建过程中,权重矩阵与输入相乘,表示为:
同时,利用softmax函数初始化耦合系数:
cij←softmax(bij)。
步骤S105,基于动作胶囊子层,迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息。
每一个动作胶囊对应一种动作类别,动作类别可以是引体向上、屈臂悬垂、仰卧起坐和俯卧撑等。
在步骤S105中,使用多个预设的动作胶囊,每个动作胶囊分别代表一个特定的动作类别,当动作胶囊子层接收到主胶囊子层输出的特征向量时,每个动作胶囊会计算出与其它动作胶囊之间的空间关系和方向,并将这些信息表示为姿态矩阵和向量,动作胶囊所输出向量的模则表示序列中动作存在的可能性,然后,动作胶囊子层通过姿态矩阵计算动作胶囊单元之间的距离和相对方向,学习整个动作的模式和流程。
优选地,主胶囊子层和动作胶囊子层通过动态路由算法来进行的信息传递,该算法以迭代的机制从主胶囊中聚合信息并将其传递给动作胶囊,在迭代的过程中,通过耦合系数的变化,在淡化或剔除错误的关节信息的同时强调了重要节点的信息。
步骤S106,基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果。
在步骤S106中,根据动作预测信息确定骨骼序列图像的动作类别,具体是采用动态时间规则算法来测量动作胶囊子层输出的动作预测信息与训练集中每个类别的胶囊输出向量之间的距离,通过全连接层和Softmax函数将动作胶囊子层输出的动作预测信息映射到具体的动作类别上,并计算各个动作类别的概率值。
本申请实施例所示意的步骤S101至步骤S106,基于胶囊网络模型对骨骼序列图像的动作类别进行识别,使用结合了针对时空特征的注意力机制的残差时间卷积模块从骨骼数据提取时空特征,通过区分出携带目标时空特征的骨骼点来确定骨骼点的重要程度,在主胶囊子层构造主胶囊来表示骨骼点,通过动作胶囊子层迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的动作特征,每个主胶囊可通过动态路由将输出送至动作胶囊,迭代过程将剔除导致错误分类的骨骼点信息并强调有效骨骼点,使胶囊网络模型能有效地通过关注特定骨骼点以识别对应的动作类别,能更好地捕捉骨骼点之间的关系和组件的方向,使相似动作的区分得到较大的改善,提高骨骼动作识别的准确性和可用性。
图2是本申请实施例提供的骨骼序列行为识别方法的第二个可选的流程图,在图1实施例的基础上,在步骤S102之后执行图2中的方法,可以包括但不限于包括步骤S201至步骤S203。
其中,胶囊网络模型还包括前处理层,前处理层包括坐标系变换子层、归一化子层和卷积子层。
步骤S201,将各骨骼点转换至同一坐标系内进行表示,得到坐标转换数据。
步骤S202,对坐标转换数据进行归一化处理,得到归一化转换数据。
步骤S203,对各归一化转换数据的坐标向量进行动作特征提取,将提取得到的多个动作特征向量进行拼接,得到用于输入残差时间卷积层的前处理数据。
在步骤S201中,基于坐标系变换子层,采用了先旋转后平移的变换方式,将骨骼数据统一到同一个坐标系,具体地,将第一个骨骼点的坐标作为坐标系的原点,将第二个骨骼点和第一个骨骼点之间的向量沿着Y轴旋转,使其在XY平面上,然后将骨骼数据沿X轴和Y轴进行平移,使其位于一个标准的矩形区域内。骨骼序列中的关节点表示为一个固定长度的向量,使用以下公式计算:
其中,vi表示关节点i在x,y,z三个方向上的位置,分别表示骨骼点i在x,y,z三个方向上的速度,ai表示关节点i的其他属性,例如角度、加速度等,j为骨骼点的数量。
对骨骼序列进行平移、旋转、缩放等操作分别定义为:
平移:P(vi)=vi+t,
旋转:R(vi)=R*vi,
缩放:S(vi)=s*vi,
其中,P(vi)表示对骨骼点vi进行平移操作后的结果,R(vi)表示对骨骼点vi进行旋转操作后的结果,S(vi)表示对骨骼点vi进行缩放操作后的结果,t表示平移向量,R表示旋转矩阵,s表示缩放因子。
在步骤S202中,基于归一化子层,对坐标系变换后的骨骼数据进行归一化处理,具体地,将所有的骨骼数据除以身高,并将其缩放到[-1,1]的范围内,这样做的好处是可以消除不同人之间的身材差异,使模型具备更加健壮的鲁棒性。
在步骤S203中,基于卷积子层,利用卷积核对归一化后的骨骼数据进行特征提取并对骨骼序列编码,具体地,采用双向时间序列网络作为卷积子层,通过前向和后向两个方向对骨骼数据进行卷积,时间序列网络会对每个关节的坐标进行特征提取,然后将这些特征向量拼接成一个固定长度的向量,并将其输入到后续的胶囊网络中进行进一步的处理。
将所有关节点的向量串联起来形成一个固定长度的向量可以表示为:
V=[v1,v2,...,vj]
其中,V表示编码后的向量,j表示骨架序列中关节点的数量。
总的来说,数据处理的三个操作都是为了对骨骼数据进行预处理,以便于后续的网络训练和识别。其中,坐标系变换操作和归一化操作可以消除不同采集设备和不同人之间的差异,使模型具备更加好的鲁棒性。
请参阅图3,在一些实施例中,步骤S103可以包括但不限于包括步骤S301至步骤S303。
步骤S301,将骨骼数据映射到高维空间,通过卷积操作提取映射到高维空间的骨骼数据的时空特征,得到时空特征向量。
步骤S302,在帧级和关节级对时空特征向量进行池化处理,得到池化特征。
步骤S303,根据池化特征在针对时空特征的注意力机制中的注意评分确定对应骨骼点的重要程度,根据骨骼点的重要程度对骨骼点的时空特征赋予相应权重,作为区分结果。
本实施例中,通过一个残差时间卷积模块来提取动作特征,残差时间卷积块由三个连续的时间卷积层以及一个最大池化层组成,残差连接结构存在于时间卷积层和最大池化层之间,随后是一个针对时空特征的注意力机制,根据不同关节点的重要性为它们已编码的特征向量赋子相应的权重。注意模块用于从整个骨骼序列中找到最为关键的骨骼点,增强模型提取判别特征的能力,同时注意模块可以免去处理预处理数据时在骨架图中手工划分部位的步骤,从而避免了需要在每个部位的节点上设计适当的池化规则问题。
本实施例中,所述针对时空特征的注意力机制具体表示如下:
其中,fin和fout表示输入和输出特征映射,表示连接操作,/>和⊙分别表示通道外积和元素积,poolt(·)和poolv(·)分别是帧级和关节级上的平均池化操作,σ(·)和θ(·)分别代表Sigmoid和HardSwish激活函数,/>是可训练的参数。
请参阅图4,在一些实施例中,步骤S105可以包括但不限于包括步骤S401至步骤S403。
步骤S401,基于动态路由机制将主胶囊的时空特征传递至动作胶囊,通过动作胶囊学习主胶囊对应动作的特征表示,计算各动作胶囊之间的空间关系和方向,得到姿态矩阵。
步骤S402,基于姿态矩阵计算各动作胶囊之间的距离和相对方向,通过反向动态路由机制迭代更新各动作胶囊向上传递的权重分配向量以及权重分配向量的加权系数,得到调整后的权重分配向量和加权系数。
步骤S403,基于调整后的权重分配向量和加权系数,使用动作胶囊提取主胶囊的动作特征,得到动作预测信息。
在步骤S401中,主胶囊子层利用目标骨骼点的动作特征构建的主胶囊传递至动作胶囊,通过计算得到的输出向量和特征矩阵来学习每个动作胶囊对应的动作特征的表示,具体地,每个动作胶囊对应一个特定的动作类,动作胶囊j所输出的向量表示为sj,对于每一个输出向量,需要利用squash函数将动作胶囊所输出的向量的模压缩到0和1之间,此时,压缩后输出向量的模则表示动作存在的可能性。squash函数压缩向量表示为:
姿态矩阵用于捕捉不同动作之间的姿态差异,计算公式为:
其中,squash(sj)表示第j个动作胶囊的输出向量,sj表示第j个动作胶囊的输入向量,ui和uj分别表示第i个动作胶囊和第j个动作胶囊的预测向量,Mi,j表示从第j个动作胶囊到第i个动作胶囊的姿态矩阵。
可以理解的是,姿态矩阵由动作胶囊子层中的每个动作胶囊生成,姿态矩阵可以表示每个动作胶囊的旋转、平移和缩放信息,这些信息在不同的动作之间有所不同。姿态矩阵可以被看作是不同动作的表示之间的距离度量,可以帮助模型更好地区分不同的动作。
利用动态路由算法在主胶囊和动作胶囊之间进行的信息传递,动态路由算法的具体描述如下:
在步骤S402中,基于姿态矩阵计算各动作胶囊之间的距离和相对方向具体是利用姿态矩阵所表示的动作胶囊的旋转、平移和缩放信息等计算各动作胶囊之间的距离和相对方向,通过反向动态路由机制迭代更新各动作胶囊向上传递的权重分配向量以及权重分配向量的加权系数具体是在底层动作胶囊的输出向量计算完毕后,通过计算动作顶层胶囊的姿态矩阵和当前层动作胶囊的权重分配向量,然后反复迭代更新胶囊之间的权重分配和路由,最终得到合适的权重分配向量,可以帮助模型更好地学习输入数据的复杂特征,在反向动态路由算法中,胶囊网络层会通过学习一个权重系数矩阵,动态调整输入数据在胶囊之间的分配方式,从而实现更好的输入特征学习。
请参阅图5,在一些实施例中,步骤S106可以包括但不限于包括步骤S501至步骤S503。
步骤S501,测量动作胶囊输出的动作预测信息与训练集中的预设预测信息之间的距离,得到预测差距值。
步骤S502,将预测差距值映射到具体的动作类别,计算预测差距值相对于各个动作类别的概率值,得到动作概率值,将动作概率值进行归一化处理,得到归一化概率值。
步骤S503,对动作类别在每个阶段得到的归一化概率值进行求和,以概率求和结果最大的动作类别作为识别结果。
本实施例中,分类器层包含了两个子分类器:基于动态时间规整的分类器和基于全连接层和Softmax函数的分类器。
在步骤S501中,首先计算动作预测信息和预设预测信息之间的距离矩阵,其中矩阵元素表示动作预测信息中一个动作胶囊的输出向量与训练序列中的一个动作胶囊的输出向量之间的距离,然后使用动态规划算法计算从当前的动作胶囊子层的起始位置到任意一个训练序列位置的最小距离路径,最终通过将所有路径的距离加起来来计算动作胶囊子层与训练序列之间的动态时间规整算法距离,得到预测差距值。
步骤S502基于全连接层和Softmax函数的分类器实现,其目标是将输入映射到输出标签的概率分布,全连接层和Softmax函数被用作一种基于特征匹配的分类器,将输入的动作特征向量(动作预测信息)映射到输出标签的概率分布,从而将输入序列分类到正确的动作类别。
在步骤S502中,全连接层的输入向量为动作胶囊子层的输出向量(动作预测信息),权重矩阵和偏置向量是需要训练的模型参数,全连接层的输出向量将作为分类器层的输入,用于计算各个类别的概率值,Softmax函数将全连接层的输出向量转换为各个类别的概率值,最终输出预测结果。更为具体地,通过全连接层和Softmax函数将动作胶囊子层的输出向量映射到具体的动作类别上,并计算各个类别的概率值,分类器层的计算公式如下:
z=Wv+by=Softmax(z);
其中,v表示胶囊网络层的输出向量,W和b分别表示权重矩阵和偏置向量,z表示全连接层的输出向量,y表示各个类别的概率值;
Softmax函数的计算公式:
其中,z表示全连接层的输出向量,K表示类别数,Softmax(zi)表示第i个类别的概率值,作为归一化概率值。
在步骤S503中,根据归一化概率值的大小对骨骼数据对应的动作进行分类,从而确定骨骼序列图像的动作类别。
在一些实施例中,所述骨骼序列行为识别方法,还包括:通过量化三个维度间的关系,即按照一定的比例缩放系数配置模型的宽度、深度以及分辨率,得到多个不同规模的网络,再通过对比不同规模的网络的性能,选择出适合的模型,得到胶囊网络模型。
具体地,基于神经结构搜索技术获得最优的一组参数作为复合系数φ,来量化网络的深度、宽度和分辨率三个维度间的关系,均匀地缩放网络的深度、宽度和分辨率。最终可以得到多个不同规模的网络,通过对比验证不同规模网络的性能来选择出性能最佳的网络规模,或者适应不同规模、类型的数据,使得模型的准确性和效率大大提升。
本实施例中,该策略的复合参数定义如下:
depth:d=αφ;
width:w=βφ
resolution:r=γφ;
s.t.α·β2·γ2≈2;
α≥1,β≥1,γ≥1;
其中,α,β,γ是需要求解的一组参数,为带约束的最优参数求解,分别衡量着depth,width和resolution的比重,其中在约束上会有平方,是因为如果增加宽度或分辨率两倍,其计算量是增加四倍;但是增加深度两倍,其计算量只会增加两倍。
请参阅图6,本申请实施例还提供一种骨骼序列行为识别装置,可以实现上述骨骼序列行为识别方法,该装置包括:
第一模块601,用于获取骨骼序列图像的骨骼数据,所述骨骼数据由多个骨骼点组成;
第二模块602,用于将骨骼数据输入预设的胶囊网络模型,所述胶囊网络模型包括残差时间卷积层和胶囊网络层,所述胶囊网络层包括主胶囊子层、动作胶囊子层和分类子层;
第三模块603,用于基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果;
第四模块604,用于基于主胶囊子层,根据区分结果以及骨骼点的时空特征构建主胶囊,所述主胶囊为符合动态路由机制的神经元集合;
第五模块605,用于基于动作胶囊子层,迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,每一个动作胶囊对应一种动作类别;
第六模块606,用于基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果。
该骨骼序列行为识别装置的具体实施方式与上述骨骼序列行为识别方法的具体实施例基本相同,在此不再赘述。
本申请实施例还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述骨骼序列行为识别方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
请参阅图7,图7示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器701,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;
存储器702,可以采用只读存储器(ReadOnlyMemory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(RandomAccessMemory,RAM)等形式实现。存储器702可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器702中,并由处理器701来调用执行本申请实施例的骨骼序列行为识别方法;
输入/输出接口703,用于实现信息输入及输出;
通信接口704,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线705,在设备的各个组件(例如处理器701、存储器702、输入/输出接口703和通信接口704)之间传输信息;
其中,处理器701、存储器702、输入/输出接口703和通信接口704通过总线705实现彼此之间在设备内部的通信连接。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述骨骼序列行为识别方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例提供的骨骼序列行为识别方法、装置、设备及存储介质,基于胶囊网络模型对骨骼序列图像的动作类别进行识别,使用结合了针对时空特征的注意力机制的残差时间卷积模块从骨骼数据提取时空特征,通过区分出携带目标时空特征的骨骼点来确定骨骼点的重要程度,在主胶囊子层构造主胶囊来表示骨骼点,通过动作胶囊子层迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的动作特征,每个主胶囊可通过动态路由将输出送至动作胶囊,迭代过程将剔除导致错误分类的骨骼点信息并强调有效骨骼点,使胶囊网络模型能有效地通过关注特定骨骼点以识别对应的动作类别,能更好地捕捉骨骼点之间的关系和组件的方向,使相似动作的区分得到较大的改善,提高骨骼动作识别的准确性和可用性。
本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。
Claims (10)
1.一种骨骼序列行为识别方法,其特征在于,包括:
获取骨骼序列图像的骨骼数据,所述骨骼数据由多个骨骼点组成;
将骨骼数据输入预设的胶囊网络模型,所述胶囊网络模型包括残差时间卷积层和胶囊网络层,所述胶囊网络层包括主胶囊子层、动作胶囊子层和分类子层;
基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果;
基于主胶囊子层,根据区分结果以及骨骼点的时空特征构建主胶囊,所述主胶囊为符合动态路由机制的神经元集合;
基于动作胶囊子层,迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,每一个动作胶囊对应一种动作类别;
基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果。
2.根据权利要求1所述的骨骼序列行为识别方法,其特征在于,所述胶囊网络模型还包括前处理层,所述骨骼序列行为识别方法,还包括:
将各骨骼点转换至同一坐标系内进行表示,得到坐标转换数据;
对坐标转换数据进行归一化处理,得到归一化转换数据;
对各归一化转换数据的坐标向量进行动作特征提取,将提取得到的多个动作特征向量进行拼接,得到用于输入残差时间卷积层的前处理数据。
3.根据权利要求1所述的骨骼序列行为识别方法,其特征在于,所述基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果,包括:
将骨骼数据映射到高维空间,通过卷积操作提取映射到高维空间的骨骼数据的时空特征,得到时空特征向量;
在帧级和关节级对时空特征向量进行池化处理,得到池化特征;
根据池化特征在针对时空特征的注意力机制中的注意评分确定对应骨骼点的重要程度,根据骨骼点的重要程度对骨骼点的时空特征赋予相应权重,作为区分结果。
4.根据权利要求3所述的骨骼序列行为识别方法,其特征在于,所述针对时空特征的注意力机制具体表示如下:
其中,fin和fout表示输入和输出特征映射,表示连接操作,/>和⊙分别表示通道外积和元素积,poolt(·)和poolv(·)分别是帧级和关节级上的平均池化操作,σ(·)和θ(·)分别代表Sigmoid和HardSwish激活函数,/>是可训练的参数。
5.根据权利要求1所述的骨骼序列行为识别方法,其特征在于,所述迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,包括:
基于动态路由机制将主胶囊的时空特征传递至动作胶囊,通过动作胶囊学习主胶囊对应动作的特征表示,计算各动作胶囊之间的空间关系和方向,得到姿态矩阵;
基于姿态矩阵计算各动作胶囊之间的距离和相对方向,通过反向动态路由机制迭代更新各动作胶囊向上传递的权重分配向量以及权重分配向量的加权系数,得到调整后的权重分配向量和加权系数;
基于调整后的权重分配向量和加权系数,使用动作胶囊提取主胶囊的动作特征,得到动作预测信息。
6.根据权利要求1所述的骨骼序列行为识别方法,其特征在于,所述基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果,包括:
测量动作胶囊输出的动作预测信息与训练集中的预设预测信息之间的距离,得到预测差距值;
将预测差距值映射到具体的动作类别,计算预测差距值相对于各个动作类别的概率值,得到动作概率值,将动作概率值进行归一化处理,得到归一化概率值;
对动作类别在每个阶段得到的归一化概率值进行求和,以概率求和结果最大的动作类别作为识别结果。
7.根据权利要求1所述的骨骼序列行为识别方法,其特征在于,所述骨骼序列行为识别方法,还包括:
通过量化三个维度间的关系,即按照一定的比例缩放系数配置模型的宽度、深度以及分辨率,得到多个不同规模的网络,再通过对比不同规模的网络的性能,选择出适合的模型,得到胶囊网络模型。
8.一种骨骼序列行为识别装置,其特征在于,所述装置包括:
第一模块,用于获取骨骼序列图像的骨骼数据,所述骨骼数据由多个骨骼点组成;
第二模块,用于将骨骼数据输入预设的胶囊网络模型,所述胶囊网络模型包括残差时间卷积层和胶囊网络层,所述胶囊网络层包括主胶囊子层、动作胶囊子层和分类子层;
第三模块,用于基于残差时间卷积层,提取骨骼点的时空特征,根据针对时空特征的注意力机制区分出携带目标时空特征的骨骼点,得到区分结果;
第四模块,用于基于主胶囊子层,根据区分结果以及骨骼点的时空特征构建主胶囊,所述主胶囊为符合动态路由机制的神经元集合;
第五模块,用于基于动作胶囊子层,迭代调整主胶囊与预设的动作胶囊之间的分配方式,使用调整后的动作胶囊提取主胶囊的时空特征,得到动作预测信息,每一个动作胶囊对应一种动作类别;
第六模块,用于基于分类子层,通过软投票的方式聚合动作胶囊子层在不同阶段输出的动作预测信息,得到识别结果。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的骨骼序列行为识别方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的骨骼序列行为识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310446265.3A CN116824689A (zh) | 2023-04-23 | 2023-04-23 | 骨骼序列行为识别方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310446265.3A CN116824689A (zh) | 2023-04-23 | 2023-04-23 | 骨骼序列行为识别方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116824689A true CN116824689A (zh) | 2023-09-29 |
Family
ID=88140088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310446265.3A Pending CN116824689A (zh) | 2023-04-23 | 2023-04-23 | 骨骼序列行为识别方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116824689A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118411764A (zh) * | 2024-07-02 | 2024-07-30 | 江西格如灵科技股份有限公司 | 一种动态骨骼识别方法、系统、存储介质及电子设备 |
-
2023
- 2023-04-23 CN CN202310446265.3A patent/CN116824689A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118411764A (zh) * | 2024-07-02 | 2024-07-30 | 江西格如灵科技股份有限公司 | 一种动态骨骼识别方法、系统、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111797893B (zh) | 一种神经网络的训练方法、图像分类系统及相关设备 | |
CN109949368B (zh) | 一种基于图像检索的人体三维姿态估计方法 | |
US20220414911A1 (en) | Three-dimensional reconstruction method and three-dimensional reconstruction apparatus | |
WO2021159714A1 (zh) | 一种数据处理方法及相关设备 | |
CN110135249B (zh) | 基于时间注意力机制和lstm的人体行为识别方法 | |
CN109783666B (zh) | 一种基于迭代精细化的图像场景图谱生成方法 | |
CN108734210B (zh) | 一种基于跨模态多尺度特征融合的对象检测方法 | |
WO2019227479A1 (zh) | 人脸旋转图像的生成方法及装置 | |
CN111666919B (zh) | 一种对象识别方法、装置、计算机设备和存储介质 | |
CN115223020B (zh) | 图像处理方法、装置、设备、存储介质及计算机程序产品 | |
CN112990154B (zh) | 一种数据处理方法、计算机设备以及可读存储介质 | |
WO2021190433A1 (zh) | 更新物体识别模型的方法和装置 | |
CN113781519A (zh) | 目标跟踪方法和目标跟踪装置 | |
CN115221369A (zh) | 视觉问答的实现方法和基于视觉问答检验模型的方法 | |
CN113011568A (zh) | 一种模型的训练方法、数据处理方法及设备 | |
CN115018999A (zh) | 一种多机器人协作的稠密点云地图构建方法及装置 | |
CN115063585A (zh) | 一种无监督语义分割模型的训练方法及相关装置 | |
Neverova | Deep learning for human motion analysis | |
CN114140841A (zh) | 点云数据的处理方法、神经网络的训练方法以及相关设备 | |
CN116824689A (zh) | 骨骼序列行为识别方法、装置、设备及存储介质 | |
CN116385660A (zh) | 室内单视图场景语义重建方法及系统 | |
CN117689887A (zh) | 基于点云分割的工件抓取方法、装置、设备及存储介质 | |
CN117877113A (zh) | 一种基于时空骨骼拓扑的教学手势识别方法及系统 | |
CN113762331A (zh) | 关系型自蒸馏方法、装置和系统及存储介质 | |
Li et al. | [Retracted] Human Motion Representation and Motion Pattern Recognition Based on Complex Fuzzy Theory |
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 |