CN117671738B - 基于人工智能的人体姿态识别系统 - Google Patents
基于人工智能的人体姿态识别系统 Download PDFInfo
- Publication number
- CN117671738B CN117671738B CN202410137578.5A CN202410137578A CN117671738B CN 117671738 B CN117671738 B CN 117671738B CN 202410137578 A CN202410137578 A CN 202410137578A CN 117671738 B CN117671738 B CN 117671738B
- Authority
- CN
- China
- Prior art keywords
- representing
- dimensional
- skeleton
- nodes
- coordinates
- 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
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 17
- 239000013598 vector Substances 0.000 claims abstract description 45
- 230000008859 change Effects 0.000 claims abstract description 13
- 238000012549 training Methods 0.000 claims description 39
- 230000006870 function Effects 0.000 claims description 37
- 230000009471 action Effects 0.000 claims description 24
- 230000008447 perception Effects 0.000 claims description 24
- 210000000988 bone and bone Anatomy 0.000 claims description 23
- 230000003287 optical effect Effects 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 14
- 238000000034 method Methods 0.000 claims description 12
- 238000013519 translation Methods 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 8
- 238000003062 neural network model Methods 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 abstract description 6
- 238000004458 analytical method Methods 0.000 abstract description 4
- 230000036544 posture Effects 0.000 description 36
- 210000003414 extremity Anatomy 0.000 description 11
- 230000006872 improvement Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 210000003128 head Anatomy 0.000 description 4
- 210000003423 ankle Anatomy 0.000 description 3
- 210000001513 elbow Anatomy 0.000 description 3
- 210000001624 hip Anatomy 0.000 description 3
- 210000003127 knee Anatomy 0.000 description 3
- 210000002832 shoulder Anatomy 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 210000000707 wrist Anatomy 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000000875 corresponding effect Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 210000003739 neck Anatomy 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002123 temporal 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/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- 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/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/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/49—Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种姿态识别系统,具体地说,涉及基于人工智能的人体姿态识别系统。其包括肢体动作捕捉单元基于深度感知模块捕捉肢体动作变化,获取包含肢体深度信息的视频流;数据帧采集单元用于将连续的视频流分割成单个独立的数据帧;识别输出单元基于骨骼空间特征模型,根据骨骼节点的三维信息判断人体姿态。引入深度信息实现二维坐标向三维坐标的转换,得到骨骼节点的三维坐标信息,提高骨骼节点定位的精度,使动作捕捉、行为分析具有更高的精度,将历史帧的骨骼节点信息纳入当前帧骨骼节点的特征向量中,反映骨骼关节在时间序列上的运动轨迹和速度变化,从而更准确地描述和理解复杂的时空动作模式,有效提升模型对动作识别和理解的能力。
Description
技术领域
本发明涉及一种姿态识别系统,具体地说,涉及基于人工智能的人体姿态识别系统。
背景技术
人体姿态识别系统是一种基于计算机视觉和机器学习技术的智能系统,主要用于从图像或视频中自动检测、分析并识别人体的姿态,即对人体各部位(如头部、躯干、四肢等)的位置和姿态进行精确估计。
而现有的人体姿态识别系统依赖于2D图像,由于透视投影导致的大小和位置变化无法被正确还原,受视角影响的骨骼节点定位结果出现偏差,鉴于此,设计基于人工智能的人体姿态识别系统。
发明内容
本发明的目的在于提供基于人工智能的人体姿态识别系统,以解决上述背景技术中提出的现有的人体姿态识别系统依赖于2D图像,由于透视投影导致的大小和位置变化无法被正确还原,受视角影响的骨骼节点定位结果出现偏差的问题。
为实现上述目的,本发明目的在于提供了基于人工智能的人体姿态识别系统,包括
肢体动作捕捉单元,所述肢体动作捕捉单元基于深度感知模块捕捉肢体动作变化,获取包含肢体深度信息的视频流;
数据帧采集单元,所述数据帧采集单元用于将连续的视频流分割成单个独立的数据帧;每一帧都是一个完整的三维图像,包含了场景在某一时刻的所有深度信息;
骨骼节点提取模块,所述骨骼节点提取模块基于OpenPose模型从数据帧中提取骨骼节点信息,识别出人体的主要关节,主要关节包括头部、颈部、肩膀、肘部、手腕、腰部、膝盖和脚踝,通过准确定位和提取关键骨骼节点,系统能够更精确地捕捉人体的姿态,并通过肢体深度信息对骨骼节点信息进行三维重建,得到骨骼节点的三维信息;骨骼节点的三维信息包括关节点三维坐标、方向和角度信息。
识别输出单元,所述识别输出单元基于骨骼空间特征模型,根据骨骼节点的三维信息判断人体姿态。
作为本技术方案的进一步改进,所述深度感知模块为深度感知相机或激光雷达,用于获取场景中人体各个部位的深度信息,通过两个或多个相机捕捉不同视角的图像,从而增加图像的深度信息。
作为本技术方案的进一步改进,所述数据帧采集单元包括数据帧分割模块和深度图生成模块;
其中,数据帧分割模块用于将连续的视频流分割成单个独立的数据帧;
深度图生成模块用于将视频帧中的深度信息提取出来,生成深度图;深度图显示了场景中每个像素点到摄像机的距离,是后续骨骼节点提取与分析的基础。
作为本技术方案的进一步改进,所述骨骼节点提取模块中,骨骼节点的三维信息构建的具体步骤为:
S1.1、基于OpenPose模型得到数据帧中的某一个骨骼节点信息二维坐标;
S1.2、通过深度感知模块,获得二维坐标为的骨骼节点对应的深度值Z,以及深度感知模块的焦距F(,)和光心坐标C;深度感知模块可直接输出场景中每个像素点到摄像头的距离,即深度图,在深度图上,每个关节对应的像素点就包含了其深度信息;
S1.3、将二维坐标为进行三维坐标映射。
作为本技术方案的进一步改进,所述S1.3中,三维坐标的映射表达式为:
;
其中,表示三维骨骼节点坐标;表示神经网络模型;表示模型的参数;
使用均方误差作为损失函数:
;
其中,表示训练样本的数量;表示第个样本的相机坐标系下的三维骨骼节点坐标;表示第个样本;
考虑深度感知模块内参数对坐标变换的影响,并将深度感知模块的焦距F和光心坐标C参数引入至损失函数:
将相机坐标系下的坐标通过旋转和平移转换到世界坐标系中,然后与真实的世界坐标进行比较;
则优化后的损失函数为:
;
其中,表示旋转矩阵;表示平移向量;表示将相机坐标系下的三维骨骼节点坐标,进行旋转和平移变换,得到相应的世界坐标系下的坐标;表示平衡原有坐标预测误差与相机参数误差之间权重的系数;表示针对相机参数和的损失项;表示对相机参数和的一个惩罚或约束,用于控制相机参数相对于原始预测误差的重要性;
当优化整个损失函数时,不仅会更新神经网络模型的参数以减小三维重建误差,还会同时调整相机参数和,使它们更加符合实际场景的要求或是保持在合理区间内,从而增强模型在不同场景下的适应性和鲁棒性。
具体的,相机坐标系转换的表达式具体为:
;
其中,为图像平面上的二维坐标;表示图像沿轴的归一化焦距;表示图像沿轴的归一化焦距;表示该点在相机坐标系下的深度;表示光心坐标,表示光心沿图像横向(x轴方向)的坐标,通常以像素为单位表示,指明了图像传感器中心相对于图像左上角原点(即图像坐标系的原点)在水平方向上的偏移量,表示光心沿图像纵向(y轴方向)的坐标,同样以像素为单位,表示光心在垂直方向上相对于图像原点的位置;
相机坐标系到世界坐标系的转换为:
;
具体的,表示3×3的旋转矩阵;表示3×1的平移向量;表示世界坐标系关节的三维坐标。
数字1表示齐次坐标的第四个分量;当进行矩阵乘法时,保持这个值为1,经过旋转和平移变换后,新的齐次坐标系下的前三维坐标就是原点在新坐标系下的坐标。而最终计算出的除以第四个分量,得到的就是实际的世界坐标系下的三维坐标,齐次坐标及其附加的第四个分量1是为了简化和统一处理各种几何变换的数学表达。
则三维坐标的映射表达式更新为:
;
其中,表示深度感知模块的焦距;表示光心坐标;
并使用梯度下降算法最小化损失函数,更新模型参数,则梯度下降的更新规则为:
;
其中,表示使用训练数据训练得到的最优参数值;表示学习率;表示损失函数关于的梯度;
给定一个新的二维坐标和深度值,通过向前传播计算网络输出,得到对应的三维骨骼节点坐标的预测值:
;
其中,表示三维骨骼节点坐标的预测值;表示新的相机焦距;表示新的相机平心坐标;表示经过训练得到的最优神经网络模型的最优参数值。
作为本技术方案的进一步改进,所述识别输出单元包括匹配模块,匹配模块用于将模型输出的特征向量与数据库中存储的模板特征进行比较,找出最接近的真实姿态标签,实现人体姿态的实时识别,其中,所述识别输出单元中骨骼空间特征模型的构建步骤为:
S2.1、将骨骼节点提取模块收集的包含骨骼节点的三维信息,作为训练数据,并将三维信息标记相应的人体姿态标签,构建动捕数据库;训练数据包括人体在不同动作和姿势下的骨骼节点坐标以及相应的人体姿态标签;
S2.2、从原始骨骼节点坐标中构建特征向量,特征向量包括骨骼节点的坐标、方向和角度信息,并引入时空特征;考虑时间序列上的连续性和动作的动态特性;
S2.3、基于训练数据构建并训练三维骨骼空间特征模型;
S2.4、将预处理后的训练数据输入三维骨骼空间特征模型进行训练,通过损失函数优化参数,以使模型能够有效地从骨骼节点信息中学习并预测人体的姿态或动作;
S2.5、训练得到的三维骨骼空间特征模型通过匹配模块实现人体姿态的实时识别。
将模型预测得到的姿态特征表示通过匹配模块与动捕数据库中存储的人体姿态标签库进行比较,找到最相似或匹配度最高的姿态标签,以此识别当前人体的姿态或动作。
作为本技术方案的进一步改进,所述动捕数据库包括骨骼节点的三维信息库、人体姿态标签库;
其中,骨骼节点的三维信息库包括骨骼节点的坐标、方向和角度信息;
人体姿态标签库包括动作标签、姿势标签和动作序列标签。
作为本技术方案的进一步改进,所述S2.2中,令对于所有骨骼节点的集合为,则表示两个节点间的欧几里得距离函数,则骨骼连接关系集合为:
;
其中,表示骨骼连接关系集合;表示三维骨骼节点坐标;表示与连接的三维骨骼节点坐标;集合表示与相连;
对于骨骼节点,其邻域集合为,
则邻域集合具体为:
;
其中,表示存在;表示三维骨骼节点坐标;表示与连接的三维骨骼节点坐标;表示节点的邻域集合,与节点连接且距离大于或等于的节点;
构建骨骼节点的特征向量:
;
其中,表示骨骼节点的坐标信息;表示邻域节点的数量;表示邻域节点的平均方向;表示邻域内关节的平均角度变化;表示骨骼节点的特征向量;
引入时空特征后,骨骼节点的特征向量为:
;
其中,表示引入时空特征后的骨骼节点的特征向量;表示数据帧中先前帧的骨骼节点信息。
作为本技术方案的进一步改进,所述S2.3中,三维骨骼空间特征模型为:
;
其中,表示骨骼节点的输出特征向量;表示骨骼节点属于骨骼节点的邻域;表示对的每个领域节点求和;表示与骨骼节点相连的邻域节点,即这两个节点在图中有直接的连接边;表示引入时空特征后的连接和的边上的特征向量;表示输入特征向量;表示权重;为归一化项,确保权重和为1。
作为本技术方案的进一步改进,所述S2.4中,损失函数优化参数的具体步骤为:
若三维骨骼空间特征模型输出的骨骼节点的输出特征向量为,表示三维骨骼空间特征模型对第个关节点的输出特征向量,表示对应的真实输出特征向量,则使用均方误差作为损失函数:
;
其中,表示训练样本数量;表示损失函数;用于衡量模型输出与真实值之间的差异,表示模型预测的关节点位置与对应的真实位置 之间的欧氏距离的平方;
对于第个关节点,计算其坐标在空间中的欧氏距离的平方为:
;
对于第个关节点的位置坐标为,上式中的指标1、2、3分别对应三个坐标轴。通过计算关节点位置的均方误差,得到模型在所有关节点上的预测误差,这个误差值越小,表示模型的预测越接近真实值,在训练过程中,优化算法会尝试最小化这个均方误差,从而调整模型参数以提高预测的准确性。
通过梯度下降法来更新模型的参数,对于每个参数,更新规则为:
;
其中,表示学习率;表示模型参数,模型参数表示从输入的骨骼节点特征映射到输出特征向量的各种转换参数,关节旋转角度的预测参数、坐标变换矩阵的元素或其他复杂的几何或运动特征提取器的内在参数,包括权重向量、输入特征向量中的参数或归一化项计算过程中涉及的任何可学习参数;通过梯度下降法更新这些参数的目的就是为了最小化损失函数,从而使模型能够更准确地预测关节点的真实输出特征向量。
与现有技术相比,本发明的有益效果:
1、该基于人工智能的人体姿态识别系统中,骨骼节点提取模块基于OpenPose模型提取骨骼节点信息,并引入深度信息实现二维坐标向三维坐标的转换,得到骨骼节点的三维坐标信息,提高骨骼节点定位的精度,使得动作捕捉、行为分析具有更高的精度,能够帮助系统更好地理解和模拟人类行为。
2、该基于人工智能的人体姿态识别系统中,在构建的骨骼节点坐标特征向量中引入上一帧的骨骼节点信息作为时空特征,通过将历史帧的骨骼节点信息纳入当前帧骨骼节点的特征向量中,反映骨骼关节在时间序列上的运动轨迹和速度变化,从而更准确地描述和理解复杂的时空动作模式,有效提升模型对动作识别和理解的能力,使得该人体姿态识别系统能够更好地模拟和预测人体动作的动态演变过程。
附图说明
图1为本发明的整体流程框图。
图中各个标号意义为:
1、肢体动作捕捉单元;2、数据帧采集单元;3、骨骼节点提取模块;4、识别输出单元。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
请参阅图1所示,提供了基于人工智能的人体姿态识别系统,包括肢体动作捕捉单元1,肢体动作捕捉单元1基于深度感知模块捕捉肢体动作变化,获取包含肢体深度信息的视频流;
在本实施例中,深度感知模块为深度感知相机或激光雷达,用于获取场景中人体各个部位的深度信息,通过两个或多个相机捕捉不同视角的图像,从而增加图像的深度信息。
该基于人工智能的人体姿态识别系统还包括数据帧采集单元2,数据帧采集单元2用于将连续的视频流分割成单个独立的数据帧;每一帧都是一个完整的三维图像,包含了场景在某一时刻的所有深度信息;
在本实施例中,数据帧采集单元2包括数据帧分割模块和深度图生成模块;
其中,数据帧分割模块用于将连续的视频流分割成单个独立的数据帧;
深度图生成模块用于将视频帧中的深度信息提取出来,生成深度图;深度图显示了场景中每个像素点到摄像机的距离,是后续骨骼节点提取与分析的基础。
该基于人工智能的人体姿态识别系统还包括骨骼节点提取模块3,骨骼节点提取模块3基于OpenPose模型从数据帧中提取骨骼节点信息,识别出人体的主要关节,如头部、颈部、肩膀、肘部、手腕、腰部、膝盖和脚踝等关键部位,通过准确定位和提取关键骨骼节点,系统能够更精确地捕捉人体的姿态,并通过肢体深度信息对骨骼节点信息进行三维重建,得到骨骼节点的三维信息;骨骼节点的三维信息包括关节点三维坐标、方向和角度信息;
OpenPose模型是一个用于实时多人姿势估计的开源,使用深度学习技术,通过分析图像或视频中的人体关键点来估计人体的姿势,关键点包括头部、肩膀、手肘、手腕、臀部、膝盖和脚踝;OpenPose模型基于卷积神经网络(CNN),经过训练以识别和定位人体关键点,用于处理实时视频流;
在本实施例中,骨骼节点提取模块3中,骨骼节点的三维信息构建的具体步骤为:
S1.1、基于OpenPose模型得到数据帧中的某一个骨骼节点信息二维坐标;
S1.2、通过深度感知模块,获得二维坐标为的骨骼节点对应的深度值Z,以及深度感知模块的焦距F(,)和光心坐标C;深度感知模块可直接输出场景中每个像素点到摄像头的距离,即深度图,在深度图上,每个关节对应的像素点就包含了其深度信息;
S1.3、将二维坐标为进行三维坐标映射。
在本实施例中,三维坐标的映射表达式为:
;
其中,表示三维骨骼节点坐标;表示神经网络模型;表示模型的参数;
使用均方误差作为损失函数:
;
其中,表示训练样本的数量;表示第个样本的相机坐标系下的三维骨骼节点坐标;表示第个样本;
考虑深度感知模块内参数对坐标变换的影响,将相机坐标系下的坐标通过旋转和平移转换到世界坐标系中,然后与真实的世界坐标进行比较,并将深度感知模块的焦距F和光心坐标C参数引入至损失函数:
则优化后的损失函数为:
;
其中,表示旋转矩阵;表示平移向量;表示将相机坐标系下的三维骨骼节点坐标,进行旋转和平移变换,得到相应的世界坐标系下的坐标;表示平衡原有坐标预测误差与相机参数误差之间权重的系数;表示针对相机参数和的损失项;表示对相机参数和的一个惩罚或约束,用于控制相机参数相对于原始预测误差的重要性;
当优化整个损失函数时,不仅会更新神经网络模型的参数以减小三维重建误差,还会同时调整相机参数和,使它们更加符合实际场景的要求或是保持在合理区间内,从而增强模型在不同场景下的适应性和鲁棒性。
具体地,相机坐标系转换的表达式具体为:
;
其中,为图像平面上的二维坐标;表示图像沿轴的归一化焦距;表示图像沿轴的归一化焦距;表示该点在相机坐标系下的深度;表示光心坐标,表示光心沿图像横向(x轴方向)的坐标,通常以像素为单位表示,指明了图像传感器中心相对于图像左上角原点(即图像坐标系的原点)在水平方向上的偏移量,表示光心沿图像纵向(y轴方向)的坐标,同样以像素为单位,表示光心在垂直方向上相对于图像原点的位置;
相机坐标系到世界坐标系的转换为:
;
具体地,表示3×3的旋转矩阵;表示3×1的平移向量;表示世界坐标系关节的三维坐标。
数字1表示齐次坐标的第四个分量;当进行矩阵乘法时,保持这个值为1,经过旋转和平移变换后,新的齐次坐标系下的前三维坐标就是原点在新坐标系下的坐标。而最终计算出的除以第四个分量,得到的就是实际的世界坐标系下的三维坐标,齐次坐标及其附加的第四个分量1是为了简化和统一处理各种几何变换的数学表达。
则三维坐标的映射表达式更新为:
;
其中,表示深度感知模块的焦距;表示光心坐标;
并使用梯度下降算法最小化损失函数,更新模型参数,则梯度下降的更新规则为:
;
其中,表示使用训练数据训练得到的最优参数值;表示学习率;表示损失函数关于的梯度;
给定一个新的二维坐标和深度值,通过向前传播计算网络输出,得到对应的三维骨骼节点坐标的预测值:
;
其中,表示三维骨骼节点坐标的预测值;表示新的相机焦距;表示新的相机平心坐标;表示经过训练得到的最优神经网络模型的最优参数值。
该基于人工智能的人体姿态识别系统还包括识别输出单元4,识别输出单元4基于骨骼空间特征模型,根据骨骼节点的三维信息判断人体姿态;
在本实施例中,识别输出单元4包括匹配模块,匹配模块用于将模型输出的特征向量与数据库中存储的模板特征进行比较,找出最接近的真实姿态标签,实现人体姿态的实时识别,其中,识别输出单元4中骨骼空间特征模型的构建步骤为:
S2.1、将骨骼节点提取模块3收集的包含骨骼节点的三维信息,作为训练数据,并将三维信息标记相应的人体姿态标签,构建动捕数据库;训练数据包括人体在不同动作和姿势下的骨骼节点坐标以及相应的人体姿态标签;
在本实施例中,动捕数据库包括骨骼节点的三维信息库、人体姿态标签库;
其中,骨骼节点的三维信息库包括骨骼节点的坐标、方向和角度信息;
人体姿态标签库包括动作标签、姿势标签和动作序列标签。
其中,骨骼节点的坐标信息描述每个骨骼节点在三维空间中的位置;方向信息表示骨骼节点相对于某个参考方向的朝向;角度信息给出骨骼节点之间的角度关系,可以是相对于某个基准的角度;
动作标签描述整个动作或动作序列的标签,例如走、跑、跳;
姿势标签描述特定姿势的标签,例如站立、坐下、举手;
动作序列标签描述一系列动作的标签,可以用于识别特定的动作组合。
每个姿态标签都可以与对应的骨骼节点的三维信息建立联系。当进行训练时,模型可以学习如何从骨骼节点的三维信息中识别和预测特定的人体姿态标签,实现人体动作和姿势的自动识别。
S2.2、从原始骨骼节点坐标中构建特征向量,特征向量包括骨骼节点的坐标、方向和角度信息,并引入时空特征;考虑时间序列上的连续性和动作的动态特性;
在本实施例中,令对于所有骨骼节点的集合为,则表示两个节点间的欧几里得距离函数,则骨骼连接关系集合为:
;
其中,表示骨骼连接关系集合;表示三维骨骼节点坐标;表示与连接的三维骨骼节点坐标;集合表示与相连;
对于骨骼节点,其邻域集合为,
则邻域集合具体为:
;
其中,表示存在;表示三维骨骼节点坐标;表示与连接的三维骨骼节点坐标;表示节点的邻域集合,与节点连接且距离大于或等于的节点;
构建骨骼节点的特征向量:
;
其中,表示骨骼节点的坐标信息;表示邻域节点的数量;表示邻域节点的平均方向;表示邻域内关节的平均角度变化;表示骨骼节点的特征向量;
引入时空特征后,骨骼节点的特征向量为:
;
其中,表示引入时空特征后的骨骼节点的特征向量;表示数据帧中先前帧的骨骼节点信息,先前帧的骨骼节点信息指上一帧的骨骼节点信息。先前帧的骨骼节点信息作为时空特征,用于捕捉人体运动的时间连续性和动态变化,通过将历史帧的骨骼节点信息纳入当前帧骨骼节点的特征向量中,反映骨骼关节在时间序列上的运动轨迹和速度变化,从而更准确地描述和理解复杂的时空动作模式,人体动作的变化具有很强的时序关联性,某一时刻的姿态不仅与当前时刻的各关节位置有关,还与其前一时刻乃至前几时刻的姿态变化紧密相关,因此,引入时空特征能够有效提升模型对动作识别和理解的能力,使得机器学习算法能够更好地模拟和预测人体动作的动态演变过程。
S2.3、基于训练数据构建并训练三维骨骼空间特征模型;
在本实施例中,三维骨骼空间特征模型为:
;
其中,表示骨骼节点的输出特征向量;表示骨骼节点属于骨骼节点的邻域;表示对的每个领域节点求和;表示与骨骼节点相连的邻域节点,即这两个节点在图中有直接的连接边;表示引入时空特征后的连接和的边上的特征向量;表示输入特征向量;表示权重;为归一化项,确保权重和为1;
S2.4、将预处理后的训练数据输入三维骨骼空间特征模型进行训练,通过损失函数优化参数,以使模型能够有效地从骨骼节点信息中学习并预测人体的姿态或动作;
由所有骨骼节点的输出特征向量,重构出整个骨架结构的特征表示,根据训练时设定的目标,该特征表示直接映射到某个特定的姿态标签(如动作标签、姿势标签或动作序列标签),也可能首先映射到一个中间隐层空间,再通过额外的分类器(如softmax函数)来确定最终的姿态类别。
在本实施例中,损失函数优化参数的具体步骤为:
若三维骨骼空间特征模型输出的骨骼节点的输出特征向量为,表示三维骨骼空间特征模型对第个关节点的输出特征向量,表示对应的真实输出特征向量,则使用均方误差作为损失函数:
;
其中,表示训练样本数量;表示损失函数;用于衡量模型输出与真实值之间的差异,表示模型预测的关节点位置与对应的真实位置 之间的欧氏距离的平方;
对于第个关节点,计算其坐标在空间中的欧氏距离的平方为:
;
对于第个关节点的位置坐标为,上式中的指标 1、2、3 分别对应三个坐标轴。通过计算关节点位置的均方误差,得到模型在所有关节点上的预测误差,这个误差值越小,表示模型的预测越接近真实值,在训练过程中,优化算法会尝试最小化这个均方误差,从而调整模型参数以提高预测的准确性。
通过梯度下降法来更新模型的参数,对于每个参数,更新规则为:
;
其中,表示学习率;表示损失函数关于参数的偏导数,用于表示损失函数在参数空间中增长最快的方向,梯度的方向是损失函数增加最快的方向,而梯度的大小表示增长的速率;表示模型参数,模型参数表示从输入的骨骼节点特征映射到输出特征向量的各种转换参数,关节旋转角度的预测参数、坐标变换矩阵的元素或其他复杂的几何或运动特征提取器的内在参数,包括权重向量、输入特征向量中的参数或归一化项计算过程中涉及的任何可学习参数;通过梯度下降法更新这些参数的目的就是为了最小化损失函数,从而使模型能够更准确地预测关节点的真实输出特征向量。
S2.5、训练得到的三维骨骼空间特征模型通过匹配模块实现人体姿态的实时识别;
将模型预测得到的姿态特征表示通过匹配模块与动捕数据库中存储的人体姿态标签库进行比较,找到最相似或匹配度最高的姿态标签,以此识别当前人体的姿态或动作。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的仅为本发明的优选例,并不用来限制本发明,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (4)
1.基于人工智能的人体姿态识别系统,其特征在于:包括
肢体动作捕捉单元(1),所述肢体动作捕捉单元(1)基于深度感知模块捕捉肢体动作变化,获取包含肢体深度信息的视频流;
数据帧采集单元(2),所述数据帧采集单元(2)用于将连续的视频流分割成单个独立的数据帧;
骨骼节点提取模块(3),所述骨骼节点提取模块(3)基于OpenPose模型从数据帧中提取骨骼节点信息,并通过肢体深度信息对骨骼节点信息进行三维重建,得到骨骼节点的三维信息;
识别输出单元(4),所述识别输出单元(4)基于骨骼空间特征模型,根据骨骼节点的三维信息判断人体姿态;
所述骨骼节点提取模块(3)中,骨骼节点的三维信息构建的具体步骤为:
S1.1、基于OpenPose模型得到数据帧中的某一个骨骼节点信息二维坐标;
S1.2、通过深度感知模块,获得二维坐标为的骨骼节点对应的深度值Z,以及深度感知模块的焦距F(,)和光心坐标C;
S1.3、将二维坐标为进行三维坐标映射;
所述S1.3中,三维坐标的映射表达式为:
;
其中,表示三维骨骼节点坐标;表示神经网络模型;表示模型的参数;
使用均方误差作为损失函数:
;
其中,表示训练样本的数量;表示第个样本的相机坐标系下的三维骨骼节点坐标;表示第个样本;
考虑深度感知模块内参数对坐标变换的影响,并将深度感知模块的焦距F和光心坐标C参数引入至损失函数:
则优化后的损失函数为:
;
其中,表示旋转矩阵;表示平移向量;表示将相机坐标系下的三维骨骼节点坐标,进行旋转和平移变换,得到相应的世界坐标系下的坐标;表示平衡原有坐标预测误差与相机参数误差之间权重的系数;表示针对相机参数和的损失项;
则三维坐标的映射表达式更新为:
;
其中,表示深度感知模块的焦距;表示光心坐标;
并使用梯度下降算法最小化损失函数,更新模型参数,则梯度下降的更新规则为:
;
其中,表示使用训练数据训练得到的最优参数值;表示学习率;表示损失函数关于的梯度;
给定一个新的二维坐标和深度值,通过向前传播计算网络输出,得到对应的三维骨骼节点坐标的预测值:
;
其中,表示三维骨骼节点坐标的预测值;表示新的相机焦距;表示新的相机平心坐标;表示经过训练得到的最优神经网络模型的最优参数值;
所述识别输出单元(4)包括匹配模块,匹配模块用于将模型输出的特征向量与数据库中存储的模板特征进行比较,找出最接近的真实姿态标签,其中,所述识别输出单元(4)中骨骼空间特征模型的构建步骤为:
S2.1、将骨骼节点提取模块(3)收集的包含骨骼节点的三维信息,作为训练数据,并将三维信息标记相应的人体姿态标签,构建动捕数据库;
S2.2、从原始骨骼节点坐标中构建特征向量,并引入时空特征;
S2.3、基于训练数据构建并训练三维骨骼空间特征模型;
S2.4、将预处理后的训练数据输入三维骨骼空间特征模型进行训练,通过损失函数优化参数;
S2.5、训练得到的三维骨骼空间特征模型通过匹配模块实现人体姿态的实时识别;
所述S2.1中,动捕数据库包括骨骼节点的三维信息库、人体姿态标签库;
其中,骨骼节点的三维信息库包括骨骼节点的坐标、方向和角度信息;
人体姿态标签库包括动作标签、姿势标签和动作序列标签;
所述S2.2中,令对于所有骨骼节点的集合为,则表示两个节点间的欧几里得距离函数,则骨骼连接关系集合为:
;
对于骨骼节点,其邻域集合为,
则邻域集合具体为:
;
其中,表示存在;表示三维骨骼节点坐标;表示与连接的三维骨骼节点坐标;
构建骨骼节点的特征向量:
;
其中,表示骨骼节点的坐标信息;表示邻域节点的数量;表示邻域节点的平均方向;表示邻域内关节的平均角度变化;表示骨骼节点的特征向量;
引入时空特征后,骨骼节点的特征向量为:
;
其中,表示引入时空特征后的骨骼节点的特征向量;表示数据帧中先前帧的骨骼节点信息;
所述S2.3中,三维骨骼空间特征模型为:
;
其中,表示骨骼节点的输出特征向量;表示骨骼节点属于骨骼节点的邻域;表示与骨骼节点相连的邻域节点;表示引入时空特征后的连接和的边上的特征向量;表示输入特征向量;表示权重;为归一化项。
2.根据权利要求1所述的基于人工智能的人体姿态识别系统,其特征在于:所述深度感知模块为深度感知相机或激光雷达,用于获取场景中人体各个部位的深度信息。
3.根据权利要求1所述的基于人工智能的人体姿态识别系统,其特征在于:所述数据帧采集单元(2)包括数据帧分割模块和深度图生成模块;
其中,数据帧分割模块用于将连续的视频流分割成单个独立的数据帧;
深度图生成模块用于将视频帧中的深度信息提取出来,生成深度图。
4.根据权利要求1所述的基于人工智能的人体姿态识别系统,其特征在于:所述S2.4中,损失函数优化参数的具体步骤为:
若三维骨骼空间特征模型输出的骨骼节点的输出特征向量为,表示三维骨骼空间特征模型对第个关节点的输出特征向量,表示对应的真实输出特征向量,则使用均方误差作为损失函数:
;
其中,表示训练样本数量;表示损失函数;用于衡量模型输出与真实值之间的差异;
通过梯度下降法来更新模型的参数,对于每个参数,更新规则为:
;
其中,表示学习率;表示损失函数关于参数的偏导数;表示模型参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137578.5A CN117671738B (zh) | 2024-02-01 | 2024-02-01 | 基于人工智能的人体姿态识别系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137578.5A CN117671738B (zh) | 2024-02-01 | 2024-02-01 | 基于人工智能的人体姿态识别系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117671738A CN117671738A (zh) | 2024-03-08 |
CN117671738B true CN117671738B (zh) | 2024-04-23 |
Family
ID=90084735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410137578.5A Active CN117671738B (zh) | 2024-02-01 | 2024-02-01 | 基于人工智能的人体姿态识别系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117671738B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118135463B (zh) * | 2024-04-30 | 2024-07-02 | 厦门两万里文化传媒有限公司 | 一种基于ai智能的人体姿态视频生成方法及系统 |
CN118135070B (zh) * | 2024-05-10 | 2024-06-28 | 江苏物润船联网络股份有限公司 | 一种基于动作捕捉技术的数字人驱动方法及系统 |
CN118470806B (zh) * | 2024-07-12 | 2024-09-27 | 河北省体育科学研究所(河北省体育局反兴奋剂服务中心) | 一种基于姿态评估的运动员动作识别方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107953331A (zh) * | 2017-10-17 | 2018-04-24 | 华南理工大学 | 一种应用于人形机器人动作模仿的人体姿态映射方法 |
CN110827383A (zh) * | 2019-11-25 | 2020-02-21 | 腾讯科技(深圳)有限公司 | 三维模型的姿态模拟方法、装置、存储介质和电子设备 |
CN112101242A (zh) * | 2020-09-17 | 2020-12-18 | 四川轻化工大学 | 一种基于姿势序列状态链的肢体动作识别方法 |
CN113807280A (zh) * | 2021-09-23 | 2021-12-17 | 大连海事大学 | 一种基于Kinect的虚拟船舶机舱系统与方法 |
CN114782497A (zh) * | 2022-06-20 | 2022-07-22 | 中国科学院自动化研究所 | 运动功能分析方法和电子设备 |
WO2022178951A1 (zh) * | 2021-02-26 | 2022-09-01 | 平安科技(深圳)有限公司 | 三维人体姿态的估计方法、装置、设备及存储介质 |
CN116386141A (zh) * | 2023-03-30 | 2023-07-04 | 南京大学 | 基于单目视频的多阶段人体动作捕捉方法、设备及介质 |
KR20230166319A (ko) * | 2022-05-30 | 2023-12-07 | 동아대학교 산학협력단 | 대상자의 3차원 전신 자세를 식별하기 위한 장치, 방법 및 프로그램 기록 매체 |
-
2024
- 2024-02-01 CN CN202410137578.5A patent/CN117671738B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107953331A (zh) * | 2017-10-17 | 2018-04-24 | 华南理工大学 | 一种应用于人形机器人动作模仿的人体姿态映射方法 |
CN110827383A (zh) * | 2019-11-25 | 2020-02-21 | 腾讯科技(深圳)有限公司 | 三维模型的姿态模拟方法、装置、存储介质和电子设备 |
CN112101242A (zh) * | 2020-09-17 | 2020-12-18 | 四川轻化工大学 | 一种基于姿势序列状态链的肢体动作识别方法 |
WO2022178951A1 (zh) * | 2021-02-26 | 2022-09-01 | 平安科技(深圳)有限公司 | 三维人体姿态的估计方法、装置、设备及存储介质 |
CN113807280A (zh) * | 2021-09-23 | 2021-12-17 | 大连海事大学 | 一种基于Kinect的虚拟船舶机舱系统与方法 |
KR20230166319A (ko) * | 2022-05-30 | 2023-12-07 | 동아대학교 산학협력단 | 대상자의 3차원 전신 자세를 식별하기 위한 장치, 방법 및 프로그램 기록 매체 |
CN114782497A (zh) * | 2022-06-20 | 2022-07-22 | 中国科学院自动化研究所 | 运动功能分析方法和电子设备 |
CN116386141A (zh) * | 2023-03-30 | 2023-07-04 | 南京大学 | 基于单目视频的多阶段人体动作捕捉方法、设备及介质 |
Non-Patent Citations (2)
Title |
---|
基于Kinect传感器骨骼信息的人体动作识别;朱国刚;曹林;;计算机仿真;20141215(12);全文 * |
基于人体骨骼信息的列车司机行为智能识别;王志毅;刘昕武;;机车电传动;20200710(04);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117671738A (zh) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110135375B (zh) | 基于全局信息整合的多人姿态估计方法 | |
CN117671738B (zh) | 基于人工智能的人体姿态识别系统 | |
CN110222665B (zh) | 一种基于深度学习和姿态估计的监控中人体动作识别方法 | |
CN106022213B (zh) | 一种基于三维骨骼信息的人体动作识别方法 | |
CN111881887A (zh) | 基于多摄像头的运动姿态监测和指导方法及装置 | |
Uddin et al. | Human activity recognition using body joint‐angle features and hidden Markov model | |
CN108898063B (zh) | 一种基于全卷积神经网络的人体姿态识别装置及方法 | |
WO2017133009A1 (zh) | 一种基于卷积神经网络的深度图像人体关节定位方法 | |
CN111414797B (zh) | 用于估计对象的姿势和姿态信息的系统和方法 | |
CN114220176A (zh) | 一种基于深度学习的人体行为的识别方法 | |
CN109176512A (zh) | 一种体感控制机器人的方法、机器人及控制装置 | |
CN109758756B (zh) | 基于3d相机的体操视频分析方法及系统 | |
Lovanshi et al. | Human pose estimation: benchmarking deep learning-based methods | |
CN106815855A (zh) | 基于产生式和判别式结合的人体运动跟踪方法 | |
CN115376034A (zh) | 一种基于人体三维姿态时空关联动作识别的运动视频采集剪辑方法及装置 | |
Thang et al. | Estimation of 3-D human body posture via co-registration of 3-D human model and sequential stereo information | |
CN102156994B (zh) | 一种单视角无标记人体运动跟踪的关节定位方法 | |
Amrutha et al. | Human Body Pose Estimation and Applications | |
CN111539364A (zh) | 基于特征融合和多分类器投票的多体感人体行为识别算法 | |
Sheu et al. | Improvement of human pose estimation and processing with the intensive feature consistency network | |
Yan et al. | Human-object interaction recognition using multitask neural network | |
Liu et al. | 3D human pose estimation with single image and inertial measurement unit (IMU) sequence | |
CN113256789B (zh) | 一种三维实时人体姿态重建方法 | |
CN118397692A (zh) | 一种基于深度学习的人体动作识别系统及其方法 | |
CN114548224B (zh) | 一种用于强交互人体运动的2d人体位姿生成方法及装置 |
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 |