[发明专利]一种基于骨架姿态的人物跟踪方法有效
申请号: | 202010471069.8 | 申请日: | 2020-05-28 |
公开(公告)号: | CN111738096B | 公开(公告)日: | 2022-08-19 |
发明(设计)人: | 吴渊;金城;张志远 | 申请(专利权)人: | 复旦大学 |
主分类号: | G06V20/40 | 分类号: | G06V20/40;G06V40/10;G06V10/74;G06K9/62 |
代理公司: | 上海正旦专利代理有限公司 31200 | 代理人: | 王洁平 |
地址: | 200433 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 骨架 姿态 人物 跟踪 方法 | ||
1.一种基于骨架姿态的人物跟踪方法,其特征在于,分为三个阶段:离线训练阶段、在线姿态识别阶段和在线跟踪阶段;
在离线训练阶段,首先准备模型训练集,将OpenPose格式的骨架关键点坐标经过归一化后转化为36维向量作为输入,然后对OpenPose姿态识别模型进行训练;OpenPose姿态识别模型的网络结构包括生成模块和判别模块;
所述生成模块包括姿态编码器Es、动作编码器Ea、生成器G和判别器D四个子模块,每个子模块都各自由输入层、隐藏层和输出层组成;其中,姿态编码器Es和动作编码器Ea的输入层分别输入36维的骨架数据,输出层分别输出16维的姿态特征和196维的动作特征;生成器G的输入层的输入为一个212维向量,其第0到第15维为姿态特征,第16到第211维为动作特征,输出层输出36维的合成骨架;判别器D的输入层输入合成骨架,输出层输出36维的判别结果;
所述判别模块,其与生成模块共用姿态编码器Es,给定输入骨架,将Es输出的16维姿态特征作为该骨架的表示特征,在在线姿态识别阶段中作为骨架数据所属人物的标识符id检索的依据;判别模块在Es输出层后加入一个长度为N的全连接层得到id概率分布向量,其中N为训练集中id类别的个数;id概率分布向量中最大分量的维数即为人物骨架的id;
在在线姿态识别阶段,将含有待跟踪人物的图像输入OpenPose姿态识别模型,提取出图像中所有人物的骨架;
在在线跟踪阶段,首先将图像中的人物骨架依次输入训练好的OpenPose姿态识别模型,得到骨架姿态特征,并进行归一化;其次求出图像中每个人物骨架姿态特征与在库特征之间的欧式距离矩阵,用匈牙利算法求出每个人物特征匹配的在库特征,若与其欧式距离小于识别阈值,则匹配特征的骨架数据所属人物的标识符id即为人物跟踪结果,否则跟踪结果为-1,表示人物未在先前图像中出现,最后更新在库骨架数据所属人物的标识符id;其中:
OpenPose姿态识别模型中的生成模块损失函数如下所示:
Ladv(xp,G(sp,aq))=E[log D(xp)+log(1-D(G(sp,aq))] [式7]
判别模块损失函数如下所示:
其中,xp表示第p个样本中的骨架,sp和ap分别表示由骨架xp提取的姿态特征和动作特征,G(sp,aq)表示由骨架xp的姿态特征sp和骨架xq的动作特征aq合成的骨架,Es(G(sp,aq))和Ea(G(sp,aq))分别表示由G(sp,aq)提取的姿态和动作特征,D(xp)表示判别器D对骨架xp的输出;
在模型训练的每次迭代中,从训练集中随机取出四个骨架xi,xj,xm,xn,其中xi与xj属于不同id,xi与xm,xj与xn分别属于同一id;首先进行生成模块的训练,更新所有生成模块中的参数,再进行判别模块的训练,更新所有判别模块的参数;其中:
生成模块的训练步骤如下所述:
第一步:分别通过Es与Ea提取xi的姿态特征si与动作特征ai,分别对xj,xm,xn进行与xi相同的操作,得到sj,aj,sm,am,sn,an;
第二步:将si与ai进行拼接,输入生成器G,得到G(si,ai),分别对xj,xm,xn进行相同的操作,得到G(sj,aj),G(sm,am),G(sn,an);根据式2,计算
第三步:将sm和ai进行拼接,输入生成器G,得到G(sm,ai),将sn和aj进行拼接,输入生成器G,得到G(sn,aj);根据式3,计算和
第四步:由G(si,aj)提取姿态特征Es(G(si,aj))和动作特征Ea(G(si,aj)),由G(sj,ai)提取姿态特征Es(G(sj,ai))和动作特征Ea(G(sj,ai));根据式4,计算根据式5,计算
第五步:将Es(G(si,aj))和Ea(G(sj,ai))输入生成器G,得到G(Es(G(si,aj)),Ea(G(sj,ai))),将Es(G(sj,ai))和Ea(G(si,aj))输入生成器G,得到G(Es(G(sj,ai)),Ea(G(si,aj)));根据式6,计算和
第六步:将G(si,aj)和xi分别输入判别器D,输出D(G(si,aj))和D(xi),将G(sj,ai)和xj分别输入判别器D,输出D(G(sj,ai))和D(xj);根据式7,计算Ladv(xi,G(si,aj))和Ladv(xj,G(sj,ai));
判断模块的训练步骤如下所述:
将xi,xj,G(si,aj),G(sj,ai)分别输入姿态编码器Es,Es输出姿态特征后通过全连接层得到id概率分布向量;根据式8,计算根据式9,计算
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于复旦大学,未经复旦大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010471069.8/1.html,转载请声明来源钻瓜专利网。