CN116524586A - 基于cnn与gcn姿态估计与相似度匹配的舞蹈评分算法 - Google Patents
基于cnn与gcn姿态估计与相似度匹配的舞蹈评分算法 Download PDFInfo
- Publication number
- CN116524586A CN116524586A CN202310141989.7A CN202310141989A CN116524586A CN 116524586 A CN116524586 A CN 116524586A CN 202310141989 A CN202310141989 A CN 202310141989A CN 116524586 A CN116524586 A CN 116524586A
- Authority
- CN
- China
- Prior art keywords
- human
- human skeleton
- point
- skeleton points
- points
- 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
- 239000013598 vector Substances 0.000 claims abstract description 83
- 238000012549 training Methods 0.000 claims abstract description 33
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 23
- 210000000988 bone and bone Anatomy 0.000 claims abstract description 22
- 238000004364 calculation method Methods 0.000 claims abstract description 20
- 239000000284 extract Substances 0.000 claims abstract description 13
- 238000000547 structure data Methods 0.000 claims abstract description 9
- 238000006243 chemical reaction Methods 0.000 claims abstract description 7
- 239000011159 matrix material Substances 0.000 claims description 55
- 238000001514 detection method Methods 0.000 claims description 18
- 238000010606 normalization Methods 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 12
- 210000003423 ankle Anatomy 0.000 claims description 8
- 238000013528 artificial neural network Methods 0.000 claims description 8
- 210000001217 buttock Anatomy 0.000 claims description 8
- 210000003127 knee Anatomy 0.000 claims description 8
- 210000000707 wrist Anatomy 0.000 claims description 8
- 230000036544 posture Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 claims description 6
- 238000002372 labelling Methods 0.000 claims description 6
- 238000005096 rolling process Methods 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 210000003049 pelvic bone Anatomy 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- GIYXAJPCNFJEHY-UHFFFAOYSA-N N-methyl-3-phenyl-3-[4-(trifluoromethyl)phenoxy]-1-propanamine hydrochloride (1:1) Chemical compound Cl.C=1C=CC=CC=1C(CCNC)OC1=CC=C(C(F)(F)F)C=C1 GIYXAJPCNFJEHY-UHFFFAOYSA-N 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 12
- 210000002569 neuron Anatomy 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000010801 machine learning Methods 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
- 238000006467 substitution reaction Methods 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- 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
-
- 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/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- 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/778—Active pattern-learning, e.g. online learning of image or video features
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了基于CNN与GCN姿态估计与相似度计算的舞蹈评分算法,设计了姿态相似度算法流程,通过卷积神经网络(CNN)技术获取输入图像中的人物位置,基于人物位置识别人体骨骼点的坐标信息,将人体骨骼点当作图结构数据,利用图卷积神经网络(GCN)提取骨骼点的特征向量,再经过两层全连接网络进一步提取骨骼点的特征向量;经过网络训练,计算任意两个骨骼点特征向量之间的余弦距离,经过分数转换得到0~100的姿态相似度分数,可用于舞蹈、体育、应急救援培训、消防训练等领域的姿态相似度计算。
Description
技术领域
本发明属于图像处理与计算机视觉领域的运动分析技术领域,具体涉及基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法。
背景技术
随着AI视觉应用的逐渐火热与普及,基于AI的人体姿态估计已经逐渐应用到了体育、舞蹈、武术、消防训练、应急救援等领域。
目前,市场上并没有关于姿态相似度匹配算法的统一标准,而目前常见的算法方式有两类:①基于纯图像的姿态匹配算法;②采用传统SVM或KNN的姿态匹配算法,该算法将人体骨骼点当成向量作为输入。但上述两种方法存在以下不足:
①基于纯图像的姿态匹配算法,该算法由于加入了太多的背景以及人物衣着,因此会对计算结果存在很大的干扰,且该算法对于训练数据的要求较高,同时泛化能力较弱。
②采用传统SVM或KNN的姿态匹配算法,将人体骨骼点当成向量作为输入。该算法使用传统机器学习算法,不能很好的提取人体骨骼点的拓扑信息。而在姿态匹配中,人体骨骼点的拓扑信息极大程度地决定了两个姿态是否相似,因此,该类算法对于有较大数值差异的相似姿态表现较差。
基于上述现有技术存在的问题,本文提出了一种全新的基于CNN和GCN的姿态估计算法与姿态相似度匹配算法。以解决现有技术中存在的问题。
发明内容
为解决上述背景技术中提出的问题。本发明提供了基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,具有较强抗干扰能力,且能够稳定的识别相似的动作和姿态。
为实现上述目的,本发明提供如下技术方案:基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法;包括以下步骤:
步骤1,图像输入:获取人体图像;
步骤2,人体骨骼点估计:通过卷积神经网络获取步骤1输入图像中的人物位置,基于人物位置识别人体骨骼点的坐标信息;
步骤3,骨骼点特征提取:将人体骨骼点当作图结构数据,利用图卷积神经网络提取骨骼点的特征向量,再经过全连接网络进一步提取骨骼点的特征向量;
步骤4,姿态相似度分数计算:计算任意两个所述骨骼点特征向量之间的余弦距离,将余弦距离经过分数转换得到0~100的姿态相似度分数,分数越高相似度越高。
具体地,步骤2中人体骨骼点估计算法如下:
201、人物检测:识别步骤1中输入的图像中的人体位置,识别方法采用基于现有技术yolov5的目标检测算法,得到基于图像坐标系的人体矩形框;
202、基于人体矩形框对图像做裁剪:使用得到的人体矩形框,对步骤1中输入的图像进行裁剪,获得人体矩形框覆盖范围图像,用于后续人体骨骼点的估计计算;
203、CNN姿态估计:采用人体骨骼点估计算法对人体矩形框覆盖范围图像进行计算,人体骨骼点估计算法采用HRNet算法来获取基于图像坐标系的人体骨骼点坐标。
具体地,步骤201中,识别人物位置的目标检测方法为:修改yolov5的检测头,将80分类的检测任务修改为1分类任务,该1分类任务仅检测人体;对训练数据进行类别过滤,删除人体以外的标注信息,仅保留人体框的标注信息,得到仅识别人体的目标检测算法,通过上述算法,得到基于图像坐标系的人体矩形框;人体矩形框用坐标标记为(xmin,ymin),(xmax,ymax);其中xmin和ymin分为别人体矩形框的左上角角点的x坐标和y坐标,xmax和ymax分别为矩形框右下角角点的x坐标和y坐标,图像坐标系以图像的左上角为原点,左下角为(0,1),右上角为(1,0),右下角坐标为(1,1)。
具体地,步骤203中,从HRNet算法获取的人体骨骼点中提取15个主要参与运动的人体骨骼点,对提取到的15个人体骨骼点从0到14进行编号,编号对应的人体骨骼点编号:0:右脚踝;1:右膝盖;2:右臀;3:盆骨;4:左臀;5:左膝盖;6:左脚踝;7:右手腕;8:右手肘;9:右肩;10:脖子;11:左肩;12:左手肘;13:左手腕;14:头。
具体地,步骤3中,骨骼点特征提取的提取方法如下:
301、骨骼点坐标归一化:将步骤2得到的人体骨骼点坐标数据转换为图结构数据,图结构由点的集合与点之间的连线确定,人体骨骼点的坐标数据表示形式如下:
V={(xi,yi)|0≤i≤14}
E={(0,1),(1,2),(2,3),(3,4),(4,5),(5,6),(7,8),
(8,9),(9,10),(10,11),(11,12),(12,13),(3,10),(10,14)}
其中V,E为集合,C为15×15的矩阵;V为人体骨骼点坐标的集合,(xi,yi)中xi为人体骨骼点在图像坐标系中的横坐标,yi为人体骨骼点在图像坐标系中的纵坐标,i为人体骨骼编号;E集合中元素为两个人体骨骼点编号组成的编号对,表示两个编号对应的人体骨骼点之间有连接线;C为骨骼点的连接矩阵,即步骤矩阵C将作为GCN输入的连接矩阵,如果元素cij对应的编号对(i,j)或者(j,i)属于集合E,则其数值为1;如果i=j,其数值也为1;其余情况其数值为0;
302、GCN提取人体骨骼点:使用GCN提取人体骨骼点,将GCN应用到人体骨骼点数据上,采用图结构数据来表示人体骨骼点数据,并提取人体姿态的特征数据用于姿态匹配,通过(1)中骨骼点坐标归一化,将人体骨骼点的坐标当作是每个点的特征向量,对集合V中的坐标数据进行骨骼点坐标数据归一化,归一化公式如下:
其中,(xi,yi)为集合V中的元素,即编号i的人体骨骼点的坐标;xmin为所有人体骨骼点中横坐标数值最小的数值,xmax为所有人体骨骼点中横坐标数值最大的数值,ymin为所有人体骨骼点中纵坐标数值最小的数值,ymax为所有人体骨骼点中纵坐标数值最大的数值;为编号i的人体骨骼点归一化后的坐标数据;
通过骨骼点坐标数据归一化得到新的集合:
集合V*的元素为人体骨骼点经过归一化之后的坐标数据;
然后,构造特征矩阵:
X={xij|0≤i≤14,0≤j≤1}
其中,xi0为人体骨骼编号为i的人体骨骼点在集合V*中的归一化横坐标,而xi1为编号为i的人体骨骼点在集合V*中的归一化纵坐标;同时,根据每个人体骨骼点的关节连接数量构造对角矩阵:
其中,D为对角矩阵,对角元素dii数值为编号为i的人体骨骼点的关节连接数量+1;
303、图卷积神经网络提取特征:GCN网络设计了2个隐藏层,每一个隐藏层的运算用矩阵运算表示:
其中,D为对角矩阵,C为骨骼点的连接矩阵,X为步骤302中的特征矩阵;
每一个隐藏层经过矩阵运算后都得到一个新的特征矩阵,维度为15×2,矩阵中每个元素都将通过激活函数ReLu以得到新的特征矩阵X*,X*的维度为15×2,经过层图卷积运算后,最后得到维度为15×2的特征矩阵
304、全连接网络:全连接网络采用了2个隐藏层、一个输入层和一个输出层;具体方法为:将通过步骤303运算得到的特征矩阵展开得到长度为30的特征向量F:
F=(f0,f1,…,f29)
其中,f0到f14分别等于特征矩阵中元素/>到/>的数值,f15到f29分别等于特征矩阵/>中元素/>到/>的数值,将特征向量F进一步喂入拥有隐藏层1和隐藏层2的全连接网络以进一步提取特征;
全连接网络的输入向量长度为30,隐含层1输入向量长度为30,输出向量长度为40;隐含层2输入向量长度为40,输出向量长度为50;由此,通过全连接网络的运算最终将得到长度为50的特征向量
将步骤302中图卷积网络和步骤304中的全连接网络串联起来得到完整的骨骼点特征提取网络。
305、基于所述的图像训练样本对骨骼点特征提取网络进行训练,获得完整的骨骼点特征提取网络,训练的流程如下:
1)准备训练集,训练集中为各类姿态对应的人体骨骼点坐标数据,相同姿态的人体骨骼点数据拥有相同的标签;
2)随机从训练集中选择两个样本,分别送入图卷积网络和全连接网络串联的网络结构,进行运算,分别得到特征向量:
3)利用特征向量计算损失函数用于网络训练;
损失函数计算公式如下:
其中,Loss为损失函数计算公式,Dc为两个特征向量的余弦距离,Y表示特征向量对应的输入数据是否属于同一标签,如果同一标签则Y=1,否则Y=0;m为目标距离,表示当两个特征向量的余弦距离大于m时,则认为两个特征向量之间没有任何相似度,且loss计算结果为0,计算得到Loss函数后,通过常规训练方式,利用反向传播训练网络;
4)循环2)-3)步骤,直到损失函数Loss数值小于提前设定的阈值。
具体地,步骤4中,表征人物姿态相似度的骨骼点特征向量之间的特征向量余弦距离计算公式:
其中,Dc为两个特征向量的余弦距离,表示特征向量,/>表示第一个输入特征向量的第i个数值,/>表示第二个输入特征向量的第i个数值;
骨骼点特征向量之间的特征向量余弦距离转换到0~100的分数区间,分数越高姿态相似度越高,所述的姿态相似度分数计算的转换公式为:
其中,σ=100,u=0.3,f(x)表示得分,e为自然常数,x为前面计算出来的两个特征向量计算出来的余弦距离。
具体地,步骤1中图像的输入源为摄像头和/或视频。
具体地,目标距离m的取值为1.35。
与现有技术相比,本发明的有益效果是:
1、本发明通过GCN能够很好的提取骨骼点的拓扑信息,保证了算法对于噪声干扰的鲁棒性,同时使用的是骨骼点信息而非图像信息,排除了环境和人物衣着的干扰。
2、本发明提供的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法与现有技术中的算法相比,具有很强的泛化能力以及容错能力,能够稳定的识别舞蹈中相似的动作和姿态。
3、本发明将相似度数值转化为了0~100的分数,实践应用强且应用范围广泛,能应用到多种相关的领域,包括但不限于应用到舞蹈的姿态匹配中、体育运动中运动员的动作标准识别、消防员的日常演练以及应急救援中救援人员的标准动作识别。因此,具有很强的场景应用能力以及潜在的市场竞争力。
附图说明
图1为本发明的算法流程图;
图2为本发明的人体骨骼点示意图;
图3为本发明的图卷积网络示意图;
图4为本发明的全连接网络示意图图;
图5为本发明的操作流程图。
其中:0-右脚踝;1-右膝盖;2-右臀;3-盆骨;4-左臀;5-左膝盖;6-左脚踝;7-右手腕;8-右手肘;9-右肩;10-脖子;11-左肩;12-左手肘;13-左手腕;14-头;CNN-卷积神经网络;GCN-图卷积神经网络。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,如图1所示,该算法包括以下步骤:
步骤1:图像输入;从摄像头和/或视频获取图像,其中,摄像头类型、视频的格式类型不限;
步骤2:人体骨骼点估计;通过CNN技术获取输入图像中的人物位置,人体骨骼点的估计方法如下:
(1)人物位置检测:识别由步骤1中输入的图像中的人体位置,识别方法采用如下基于Yolov5的目标检测算法:修改yolov5的检测头,将80分类的检测任务修改为1分类任务,该1分类任务仅检测人体;对训练数据进行类别过滤,删除人体以外的标注信息,仅保留人体框的标注信息,得到仅识别人体的目标检测算法;通过上述算法,得到基于图像坐标系的人体矩形框,该人体矩形框用坐标标记为(xmin,ymin),(xmax,ymax);其中xmin和ymin分为别人体矩形框的左上角角点的x坐标和y坐标,xmax和ymax分别为矩形框右下角角点的x坐标和y坐标,实现只识别人体的检测框架,其中,图像坐标系以图像的左上角为原点,左下角为(0,1),右上角为(1,0),右下角坐标为(1,1);
(2)基于人体矩形框对图像做裁剪:通过(1)中得到的人体矩形框,对步骤1中获取的图像进行裁剪,获得人体矩形框覆盖范围图像,用于后续人体骨骼点的估计;
(3)CNN姿态估计:采用人体骨骼点估计算法对人体矩形框覆盖范围图像进行计算,人体骨骼点估计算法采用HRNet算法来获取基于图像坐标系的人体骨骼点坐标。
从HRNet算法获取的人体骨骼点中提取15个主要参与运动的人体骨骼点,如图2所示,对提取到的15个人体骨骼点从0到14进行编号。本实施例中编号对应的人体骨骼点编号如下:
0:右脚踝;1:右膝盖;2:右臀;3:盆骨;4:左臀;5:左膝盖;6:左脚踝;7:右手腕;8:右手肘;9:右肩;10:脖子;11:左肩;12:左手肘;13:左手腕;14:头。
步骤3:骨骼点特征提取,提取方法如下:
(1)骨骼点坐标归一化:将步骤2得到的人体骨骼点坐标数据转换为图结构数据,图结构由点的集合与点之间的连线确定。人体骨骼点的坐标数据表示形式如下:
V={(xi,yi)|0≤i≤14}
E={(0,1),(1,2),(2,3),(3,4),(4,5),(5,6),(7,8),
(8,9),(9,10),(10,11),(11,12),(12,13),(3,10),(10,14)}
其中V,E为集合,C为15×15的矩阵。
V为人体骨骼点坐标的集合,(xi,yi)中xi为人体骨骼点在图像坐标系中的横坐标,yi为人体骨骼点在图像坐标系中的纵坐标,i为人体骨骼编号。
E集合中元素为两个人体骨骼点编号组成的编号对,表示两个编号对应的人体骨骼点之间有连接线。
C为骨骼点的连接矩阵,如果元素cij对应的编号对(i,j)或者(j,i)属于集合E,则其数值为1;如果i=j,其数值也为1;其余情况其数值为0。
(2)GCN提取人体骨骼点:如图3所示,使用GCN提取人体骨骼点,采用图结构数据来表示人体骨骼点数据,将GCN应用到人体骨骼点数据上,并提取人体姿态的特征数据用于姿态匹配。通过所述骨骼点坐标归一化的方法,可以将人体骨骼点的坐标当作是每个点的特征向量,首先对所述集合V中的坐标数据进行骨骼点坐标数据归一化,归一化公式如下:
其中,(xi,yi)为集合V中的元素,即编号i的人体骨骼点的坐标;xmin为所有人体骨骼点中横坐标数值最小的数值,xmax为所有人体骨骼点中横坐标数值最大的数值,ymin为所有人体骨骼点中纵坐标数值最小的数值,ymax为所有人体骨骼点中纵坐标数值最大的数值;为编号i的人体骨骼点归一化后的坐标数据。
通过骨骼点坐标数据归一化得到新的集合其中集合V*的元素为人体骨骼点经过归一化之后的坐标数据。
然后,构造特征矩阵X={xij|0≤i≤14,0≤j≤1},其中xi0为人体骨骼编号为i的人体骨骼点在集合V*中的归一化横坐标,而xi1为编号为i的人体骨骼点在集合V*中的归一化纵坐标。同时,根据每个人体骨骼点的关节连接数量构造如下对角矩阵:
其中,D为对角矩阵,对角元素dii数值为编号为i的人体骨骼点的关节连接数量+1,比如人体骨骼点0对应的对角元素为d00=2。
其中,步骤(1)中所述的骨骼点坐标归一化的矩阵C作为GCN输入的连接矩阵。
(3)图卷积神经网络提取特征:如图3所示,GCN网络设计了的2个隐藏层,以防止网络过深产生过拟合。每一个隐藏层的运算用矩阵运算表示为其中,D为对角矩阵,C为骨骼点的连接矩阵,X为步骤(2)中的特征矩阵,每一个隐藏层的经过矩阵运算后都将都到一个新的特征矩阵,维度为15×2。矩阵中每个元素都将通过激活函数ReLu以得到新的特征矩阵X*,X*的维度为15×2。经过层图卷积运算后,最后得到维度为15×2的特征矩阵
如图3中所示,隐含层中每一层中加粗显示的关节连接表示对应骨骼点的图卷积运算。通过上述运算,能够很好的提取骨骼点的拓扑信息,保证了算法对于噪声干扰的鲁棒性,同时使用的是骨骼点信息而非图像信息,排除了环境和人物衣着的干扰。
(3)全连接网络:如图4所示的全连接网络示意图,图中每一个圆圈代表全连接网络中的一个神经元,连线代表神经元之间的运算。全连接网络采用了2个隐藏层(隐藏层1和隐藏层2)、一个输入层和一个输出层。具体方法为:
将通过步骤(3)运算得到的特征矩阵展开得到长度为30的特征向量F=(f0,f1,…,f29),其中f0到f14分别等于特征矩阵/>中元素/>到/>的数值,f15到f29分别等于特征矩阵/>中元素/>到/>的数值。将特征向量F进一步喂入拥有隐藏层1和隐藏层2的全连接网络以进一步提取特征。
全连接网络的输入向量长度为30,隐含层1输入向量长度为30,输出向量长度为40;隐含层2输入向量长度为40,输出向量长度为50。因此,通过全连接网络的运算最终将得到长度为50的特征向量将步骤(2)中图卷积网络和步骤(4)中的全连接网络串联起来得到完整的骨骼点特征提取网络。
通过图卷积神经网络,相比传统提取方式,可以提取骨骼点之间的拓扑信息,提供人体骨骼点之间的连接关系,串联全连接神经网络将骨骼点特征映射到高维可以更好的骨骼点特征表示,更好的用于后续的特征相似度计算。特征提取网络训练的流程如下:
(1)准备训练集,训练集中为各类姿态对应的人体骨骼点坐标数据,相同姿态的人体骨骼点数据拥有相同的标签;
(2)随机从训练集中选择两个样本,分别送入图卷积网络和全连接网络串联的网络结构,进行运算,分别得到特征向量
(3)利用特征向量计算损失函数用于网络训练。损失函数计算公式如下:
其中,Loss为损失函数计算公式,Dc为两个特征向量的余弦距离,Y表示特征向量对应的输入数据是否属于同一标签,如果同一标签则Y=1,否则Y=0。m为目标距离,表示当两个特征向量的余弦距离大于m时,则认为两个特征向量之间没有任何相似度,且loss计算结果为0,m在实施例中取值为1.35。计算得到loss函数后,通过常规训练方式,利用反向传播训练网络;
(4)循环2-3步骤,直到损失函数loss数值小于提前设定的阈值,其中,阈值可以根据需要自行设定。
上述算法,具有很强的泛化能力以及容错能力,能够稳定的识别舞蹈中相似的动作和姿态。
步骤4:姿态相似度分数计算:
表征人物姿态相似度的骨骼点特征向量之间的特征向量余弦距离计算公式:
其中,Dc为两个特征向量的余弦距离,表示特征向量,/>表示第一个输入特征向量的第i个数值,/>表示第二个输入特征向量的第i个数值;
为了更好的表征两个图像中人物姿态的相似度,将表征人物姿态相似度的骨骼点特征向量之间的特征向量余弦距离转换到0~100的分数区间,分数越高姿态相似度越高,转换公式为
其中,σ=100,u=0.3,f(x)表示得分,e为自然常数,x为前面计算出来的两个特征向量计算出来的余弦距离。
通过上述公式的转换,2个特征向量之间的余弦距离可以转换为0~100的分数区间,能够精准的识别并比较来自不同图像输入源中人物姿态相似度,实践应用强且应用范围广泛,能应用到多种相关的领域,包括但不限于应用到舞蹈的姿态匹配中、体育运动中运动员的动作标准识别、消防员的日常演练以及应急救援中救援人员的标准动作识别。
具体实施时,如图5所示,首先,从图像输入(源)1和图像输入(源)2分别获取图像数据,图像输入(源)1和图像输入(源)2为视频或摄像头;
其次,分别通过步骤2中所述的人体骨骼点估计算法获取图像中人物的骨骼点坐标数据;
第三,通过步骤3中所述的图卷积网络和全连接网络的串联结构,分别提取图像输入源1和图像输入源2中人物的骨骼点数据的骨骼点特征向量,得到骨骼点特征向量1和骨骼点特征向量2;
第四,计算骨骼点特征向量1和骨骼点特征向量2之间的特征向量余弦距离;
最后,将表征人物姿态相似度的骨骼点特征向量之间的特征向量余弦距离转换到0~100的分数区间,分数越高姿态相似度越高。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (8)
1.基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于,包括:
步骤1,图像输入:获取人体图像;
步骤2,人体骨骼点估计:通过卷积神经网络获取步骤1输入图像中的人物位置,基于人物位置识别人体骨骼点的坐标信息;
步骤3,骨骼点特征提取:将人体骨骼点当作图结构数据,利用图卷积神经网络提取骨骼点的特征向量,再经过全连接网络进一步提取骨骼点的特征向量;
步骤4,姿态相似度分数计算:计算任意两个所述骨骼点特征向量之间的余弦距离,将余弦距离经过分数转换得到0~100的姿态相似度分数,分数越高相似度越高。
2.根据权利要求1所述的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于,步骤2中人体骨骼点估计算法如下:
201、人物检测:识别步骤1中输入的图像中的人体位置,识别方法采用基于现有技术yolov5的目标检测算法,得到基于图像坐标系的人体矩形框;
202、基于人体矩形框对图像做裁剪:使用得到的人体矩形框,对步骤1中输入的图像进行裁剪,获得人体矩形框覆盖范围图像,用于后续人体骨骼点的估计计算;
203、CNN姿态估计:采用人体骨骼点估计算法对人体矩形框覆盖范围图像进行计算,人体骨骼点估计算法采用HRNet算法来获取基于图像坐标系的人体骨骼点坐标。
3.根据权利要求2所述的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于:步骤201中,识别人物位置的目标检测方法为:修改yolov5的检测头,将80分类的检测任务修改为1分类任务,该1分类任务仅检测人体;对训练数据进行类别过滤,删除人体以外的标注信息,仅保留人体框的标注信息,得到仅识别人体的目标检测算法,通过上述算法,得到基于图像坐标系的人体矩形框;人体矩形框用坐标标记为(xmin,ymin),(xmax,ymax);其中xmin和ymin分为别人体矩形框的左上角角点的x坐标和y坐标,xmax和ymax分别为矩形框右下角角点的x坐标和y坐标,图像坐标系以图像的左上角为原点,左下角为(0,1),右上角为(1,0),右下角坐标为(1,1)。
4.根据权利要求2所述的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于:步骤203中,从HRNet算法获取的人体骨骼点中提取15个主要参与运动的人体骨骼点,对提取到的15个人体骨骼点从0到14进行编号,编号对应的人体骨骼点编号:0:右脚踝;1:右膝盖;2:右臀;3:盆骨;4:左臀;5:左膝盖;6:左脚踝;7:右手腕;8:右手肘;9:右肩;10:脖子;11:左肩;12:左手肘;13:左手腕;14:头。
5.根据权利要求1所述的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于:步骤3中,骨骼点特征提取的提取方法如下:
301、骨骼点坐标归一化:将步骤2得到的人体骨骼点坐标数据转换为图结构数据,图结构由点的集合与点之间的连线确定,人体骨骼点的坐标数据表示形式如下:
V={(xi,yi)|0≤i≤14}
E={(0,1),(1,2),(2,3),(3,4),(4,5),(5,6),(7,8),
(8,9),(9,10),(10,11),(11,12),(12,13),(3,10),(10,14)}
其中V,E为集合,C为15×15的矩阵;V为人体骨骼点坐标的集合,(xi,yi)中xi为人体骨骼点在图像坐标系中的横坐标,yi为人体骨骼点在图像坐标系中的纵坐标,i为人体骨骼编号;E集合中元素为两个人体骨骼点编号组成的编号对,表示两个编号对应的人体骨骼点之间有连接线;C为骨骼点的连接矩阵,即步骤矩阵C将作为GCN输入的连接矩阵,如果元素cij对应的编号对(i,j)或者(j,i)属于集合E,则其数值为1;如果i=j,其数值也为1;其余情况其数值为0;
302、GCN提取人体骨骼点:使用GCN提取人体骨骼点,将GCN应用到人体骨骼点数据上,采用图结构数据来表示人体骨骼点数据,并提取人体姿态的特征数据用于姿态匹配,通过(1)中骨骼点坐标归一化,将人体骨骼点的坐标当作是每个点的特征向量,对集合V中的坐标数据进行骨骼点坐标数据归一化,归一化公式如下:
其中,(xi,yi)为集合V中的元素,即编号i的人体骨骼点的坐标;xmin为所有人体骨骼点中横坐标数值最小的数值,xmax为所有人体骨骼点中横坐标数值最大的数值,ymin为所有人体骨骼点中纵坐标数值最小的数值,ymax为所有人体骨骼点中纵坐标数值最大的数值;为编号i的人体骨骼点归一化后的坐标数据;
通过骨骼点坐标数据归一化得到新的集合:
集合V*的元素为人体骨骼点经过归一化之后的坐标数据;
然后,构造特征矩阵:
X={xij|0≤i≤14,0≤j≤1}
其中,xi0为人体骨骼编号为i的人体骨骼点在集合V*中的归一化横坐标,而xi1为编号为i的人体骨骼点在集合V*中的归一化纵坐标;同时,根据每个人体骨骼点的关节连接数量构造对角矩阵:
其中,D为对角矩阵,对角元素dii数值为编号为i的人体骨骼点的关节连接数量+1;
303、图卷积神经网络提取特征:GCN网络设计了2个隐藏层,每一个隐藏层的运算用矩阵运算表示:
其中,D为对角矩阵,C为骨骼点的连接矩阵,X为步骤302中的特征矩阵;
每一个隐藏层经过矩阵运算后都得到一个新的特征矩阵,维度为15×2,矩阵中每个元素都将通过激活函数ReLu以得到新的特征矩阵X*,X*的维度为15×2,经过层图卷积运算后,最后得到维度为15×2的特征矩阵
304、全连接网络:全连接网络采用了2个隐藏层、一个输入层和一个输出层;具体方法为:将通过步骤303运算得到的特征矩阵展开得到长度为30的特征向量F:
F=(f0,f1,…,f29)
其中,f0到f14分别等于特征矩阵中元素/>到/>的数值,f15到f29分别等于特征矩阵/>中元素/>到/>的数值,将特征向量F进一步喂入拥有隐藏层1和隐藏层2的全连接网络以进一步提取特征;
全连接网络的输入向量长度为30,隐含层1输入向量长度为30,输出向量长度为40;隐含层2输入向量长度为40,输出向量长度为50;由此,通过全连接网络的运算最终将得到长度为50的特征向量
将步骤302中图卷积网络和步骤304中的全连接网络串联起来得到完整的骨骼点特征提取网络。
305、基于所述的图像训练样本对骨骼点特征提取网络进行训练,获得完整的骨骼点特征提取网络,训练的流程如下:
1)准备训练集,训练集中为各类姿态对应的人体骨骼点坐标数据,相同姿态的人体骨骼点数据拥有相同的标签;
2)随机从训练集中选择两个样本,分别送入图卷积网络和全连接网络串联的网络结构,进行运算,分别得到特征向量:
3)利用特征向量计算损失函数用于网络训练;
损失函数计算公式如下:
其中,Loss为损失函数计算公式,Dc为两个特征向量的余弦距离,Y表示特征向量对应的输入数据是否属于同一标签,如果同一标签则Y=1,否则Y=0;m为目标距离,表示当两个特征向量的余弦距离大于m时,则认为两个特征向量之间没有任何相似度,且loss计算结果为0,计算得到Loss函数后,通过常规训练方式,利用反向传播训练网络;
4)循环2)-3)步骤,直到损失函数Loss数值小于提前设定的阈值。
6.根据权利要求1所述的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于,步骤4中,表征人物姿态相似度的骨骼点特征向量之间的特征向量余弦距离计算公式:
其中,Dc为两个特征向量的余弦距离,表示特征向量,/>表示第一个输入特征向量的第i个数值,/>表示第二个输入特征向量的第i个数值;
骨骼点特征向量之间的特征向量余弦距离转换到0~100的分数区间,分数越高姿态相似度越高,所述的姿态相似度分数计算的转换公式为:
其中,σ=100,u=0.3,f(x)表示得分,e为自然常数,x为前面计算出来的两个特征向量计算出来的余弦距离。
7.根据权利要求1所述的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于,步骤1中图像的输入源为摄像头和/或视频。
8.根据权利要求6所述的基于CNN与GCN姿态估计与相似度匹配的舞蹈评分算法,其特征在于,目标距离m的取值为1.35。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310141989.7A CN116524586A (zh) | 2023-02-21 | 2023-02-21 | 基于cnn与gcn姿态估计与相似度匹配的舞蹈评分算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310141989.7A CN116524586A (zh) | 2023-02-21 | 2023-02-21 | 基于cnn与gcn姿态估计与相似度匹配的舞蹈评分算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116524586A true CN116524586A (zh) | 2023-08-01 |
Family
ID=87403560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310141989.7A Pending CN116524586A (zh) | 2023-02-21 | 2023-02-21 | 基于cnn与gcn姿态估计与相似度匹配的舞蹈评分算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116524586A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474785A (zh) * | 2023-12-27 | 2024-01-30 | 江苏奥斯汀光电科技股份有限公司 | 一种多个人物姿态图像合成一个图像的方法 |
CN117496409A (zh) * | 2023-11-15 | 2024-02-02 | 广东新裕信息科技有限公司 | 一种基于多视角三维人体重建的细粒度舞蹈动作评分方法 |
-
2023
- 2023-02-21 CN CN202310141989.7A patent/CN116524586A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117496409A (zh) * | 2023-11-15 | 2024-02-02 | 广东新裕信息科技有限公司 | 一种基于多视角三维人体重建的细粒度舞蹈动作评分方法 |
CN117496409B (zh) * | 2023-11-15 | 2024-05-07 | 广东新裕信息科技有限公司 | 一种基于多视角三维人体重建的细粒度舞蹈动作评分方法 |
CN117474785A (zh) * | 2023-12-27 | 2024-01-30 | 江苏奥斯汀光电科技股份有限公司 | 一种多个人物姿态图像合成一个图像的方法 |
CN117474785B (zh) * | 2023-12-27 | 2024-05-10 | 江苏奥斯汀光电科技股份有限公司 | 一种多个人物姿态图像合成一个图像的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lim et al. | Isolated sign language recognition using convolutional neural network hand modelling and hand energy image | |
CN109086706B (zh) | 应用于人机协作中的基于分割人体模型的动作识别方法 | |
CN116524586A (zh) | 基于cnn与gcn姿态估计与相似度匹配的舞蹈评分算法 | |
CN110135249B (zh) | 基于时间注意力机制和lstm的人体行为识别方法 | |
CN110738161A (zh) | 一种基于改进生成式对抗网络的人脸图像矫正方法 | |
CN109960962B (zh) | 图像识别方法、装置、电子设备以及可读存储介质 | |
CN112329525A (zh) | 一种基于时空图卷积神经网络的手势识别方法和装置 | |
Sharma et al. | Vision-based sign language recognition system: A Comprehensive Review | |
CN110135277B (zh) | 一种基于卷积神经网络的人体行为识别方法 | |
CN111444488A (zh) | 一种基于动态手势的身份认证方法 | |
Zheng et al. | Static Hand Gesture Recognition Based on Gaussian Mixture Model and Partial Differential Equation. | |
CN110807391A (zh) | 基于视觉的人-无人机交互用人体姿态指令识别方法 | |
Majid et al. | Recognition of Malaysian sign language using skeleton data with neural network | |
CN112381045A (zh) | 一种面向物联网移动端设备的轻量级人体姿态识别方法 | |
CN112906520A (zh) | 一种基于姿态编码的动作识别方法及装置 | |
Ansar et al. | Robust hand gesture tracking and recognition for healthcare via Recurent neural network | |
Badhe et al. | Artificial neural network based indian sign language recognition using hand crafted features | |
Kakumanu et al. | A local-global graph approach for facial expression recognition | |
CN111738096B (zh) | 一种基于骨架姿态的人物跟踪方法 | |
Mohamed | Automatic system for Arabic sign language recognition and translation to spoken one | |
Uddin et al. | Human activity recognition using robust spatiotemporal features and convolutional neural network | |
CN112101094B (zh) | 一种基于肢体语言的自杀风险评估方法 | |
Karimi et al. | Age and gender estimation by using hybrid facial features | |
Rao et al. | Sign Language Recognition using LSTM and Media Pipe | |
Fihl et al. | Action recognition using motion primitives and probabilistic edit distance |
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 |