首页> 中国专利> 一种基于任意角度人体图像的正面姿态估计方法

一种基于任意角度人体图像的正面姿态估计方法

摘要

一种基于任意角度人体图像的正面姿态估计方法属于计算机视觉领域,本发明包括一种多角度人体图像数据集的制作以及针对所提出数据集进行二维人体图像的正面姿态估计的算法设计两部分。数据集制作部分主要通过设计一整套数据的采集和数据的处理的方法,通过数据集的制作为算法设计提供数据支持。算法设计部分主要是通过对目前主流的深度学习算法进行改进,以实现任意角度人体图像的正面姿态估计。本发明可以完成任意角度图像的正面姿态估计,即使对人体自遮挡非常严重的背面图像,或者有部分人体缺失侧面图像也可以有较好的表现。

著录项

  • 公开/公告号CN112926449A

    专利类型发明专利

  • 公开/公告日2021-06-08

    原文格式PDF

  • 申请/专利权人 北京工业大学;

    申请/专利号CN202110210298.9

  • 申请日2021-02-11

  • 分类号G06K9/00(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构11203 北京思海天达知识产权代理有限公司;

  • 代理人刘萍

  • 地址 100124 北京市朝阳区平乐园100号

  • 入库时间 2023-06-19 11:19:16

说明书

技术领域

本发明属于计算机视觉领域,具体涉及神经网络、姿态估计等知识。

背景技术

二维人体姿态估计,在行为识别、姿态跟踪等领域有着重要研究价值和应用前景。其本质是研究如何从给定图像中精确识别目标人体并获得目标人体姿态估计的问题。针对二维人体姿态估计的研究方法可划分为早期传统的基于图结构模型的方法以及现今主流的基于深度学习的方法。传统的人体姿态方法通过图模型建立人体姿态架构,参考人体运动学与人体姿态学等理论约束并优化人体姿态模型。而卷积神经网络(ConvolutionalNeural Network,CNN)对二维图像中的人体进行特征提取则可以获得更为精确和稳定的卷积特征。多层卷积叠加可以控制特征感受野的信息感知范围,从而获得不同尺度下的特征信息。通过有策略地对样本进行学习,深度卷积神经网络可以获得图像与标签信息间的复杂映射关系,提取更为丰富的关联信息,使得相关人体姿态估计结果更为精准稳定。

三维人体姿态估计方法可以划分为两大类别:1)通过二维图像,以端到端的方式直接预测三维人体姿态;2)先通过二维图像来估计二维人体姿态,再由二维人体姿态预测三维人体姿态。后者可分为两个阶段进行三维人体姿态估计,第一阶段先由二维人体部位检测器估计二维人体关节点的位置,然后得到二维人体姿态估计,再通过回归或者模型匹配的方式估计二维人体姿态与三维人体姿态之间的映射关系。

在我们的经验里,目前主流的二维人体姿态估计算法都是基于给定图像,通过算法确定各关节点在输入图像空间的位置,并且目前主流的三维姿态估计并不能满足实际需要,尤其是对人体自遮挡严重的侧面图像,因此我们并不能直接通过产生的三维姿态数据,通过旋转加投影的方式得到需要的正面姿态。如图2是对不同角度目标人体的三维姿态估计结果进行旋转平移操作放在一个视角下的结果,可以看出不同角度的三维姿态之间存在较大差异。本发明是根据任意给定的图像,通过算法识别出图像中人的正面姿态。由于现有的关于人体姿态估计的数据集并不能满足本发明的需求,如MPII、MSCOCO和Crowd Pose等,因此本发明给出了一种多角度人体图像数据集制作的过程。根据实际的经验可知不同角度的人的姿态可能有巨大差异,甚至可能会引起歧义,尤其是对于人体自遮挡严重的侧面图像。在行为分析领域发现不同视角图像对行为分析算法的效果有重大影响。得到侧面人图像精确的正面姿态,可能对侧面人图像生成正面人图像的算法进步具有重要意义,因为可以进一步利用姿态信息生成正面的人图像。因此,本发明在实际应用中具有重要的意义。

发明内容

本发明内容为一种基于任意角度人体图像的正面姿态估计方法,问题可以描述为给定一张任意角度二维人体图像,输出图像中人的正面姿态。为了解决这个问题,本发明包括一种多角度人体图像数据集的制作以及针对所提出数据集进行二维人体图像的正面姿态估计的算法设计两部分。数据集制作部分主要通过设计一整套数据的采集和数据的处理的方法,通过数据集的制作为算法设计提供数据支持。算法设计部分主要是通过对目前主流的深度学习算法进行改进,以实现任意角度人体图像的正面姿态估计。

1数据集制作

为了实现任意角度二维人体图像的正面姿态估计,需要收集一个多角度的人体图像数据集。多角度人体图像数据集是由多个不同角度摄像头同时拍摄目标人体得到的,对目标人体同一时刻不同摄像头拍摄的图像数据选取其中的正面图像,并对正面图像中的目标人体姿态进行标注,标注的结果就是目标人体的其他角度的正面姿态。其中正面图像定义为同一时刻不同摄像头拍摄的目标人体图像中信息量最大的且人体自遮挡最小的图像。数据集的制作过程主要分为数据的采集和数据的处理两部分。数据的采集主要是通过光场采集系统收集同一时刻不同摄像头拍摄的目标人体图像数据,数据的处理是通过选取同一时刻不同摄像头拍摄的目标人体图像数据中的正面图像并对其中包含的人体进行姿态标注。

本发明采用的数据采集设备是光场采集系统(如图1所示),光场采集系统由中央控制系统、采集软件、采集服务器、统一存储器、监视软件、主控服务器、外围的鸟笼支架、具有220万像素的50个彩色工业相机、LED闪光灯及遮光布帘组成。鸟笼支架上有遮光布帘以及均匀分布在其表面的LED闪光灯与采集图像所用的50个工业相机,在采集图像时遮光布帘与LED闪光灯可以为被拍摄物体提供均匀的光照效果。50个工业相机被均匀的分成三组,每组摄像头又被均匀的分配在一个圆周上,上面一组摄像头用于拍摄目标人体多角度的俯视角图像,中间一组摄像头用于拍摄目标人体多角度的正视角图像,下面一组摄像头用于拍摄目标人体多角度的仰视角图像。具体的数据采集流程为召集一些志愿者,被召集者需在光场的中间区域完成被指定的一套完整动作,采用光场采集系统拍摄并存储目标人体同一时刻不同角度的视频数据。

对光场采集系统采集的同一时刻不同角度的目标人体视频数据进行处理,实现多角度目标人体图像的正面姿态标注。首先,将目标人体的多角度视频数据每隔30帧截取一次,将截取的图像按帧进行收集;其次,找到相同帧图像数据中的正面图像,我们将正面图像定义为由中间一组摄像头拍摄的包含信息量最大的且人体自遮挡最小的图像。最后我们对正面图像标注其正面姿态。其中姿态标注采用的是17个点的coco标准,如图3所示,具体标注的点为0到16,分别为左耳、右耳、左眼、右眼、鼻子、左肩、右肩、左肘、右肘、左腕、右腕、左胯、右胯、左膝、右膝、左脚踝、右脚踝。通过实验发现,由于正面图像是信息量最大的且人体自遮挡最小的图像,而且现有的主流二维人体姿态估计算法可以满足大部分的需求,因此在正面姿态标注方面,本发明采用主流的二维人体姿态估计算法得出正面图像的姿态估计结果。

2算法设计

针对任意角度二维人体图像的正面姿态估计问题,本发明提出了融合三维姿态输入的基于anchor pose回归的二维人体图像正面姿态估计算法。算法设计包括数据预处理、算法流程及算法细节三部分。

1)数据预处理

对于收集到的多角度人体图像数据集,需要进行数据预处理以方便神经网络学习。首先对输入的人体图像进行随机的裁剪和旋转进行数据增强,再将经过随机裁剪和旋转的图像缩放到网络输入大小,然后进行图像的标准化,即减去均值除以标准差,最后对输入的人体图像的正面姿态进行标准化和平移操作,即减去其均值除以标准差,然后提取左肩和右肩的中点作为人的中心,并将人的中心作为坐标原点,将姿态平移到坐标原点。

2)算法流程

融合三维姿态输入的基于anchor pose回归的二维人体图像正面姿态估计算法的核心是,输入不仅包含人体图像数据而且加入了输入人体图像的三维姿态数据,神经网络的回归过程是基于anchor pose回归而不是直接回归正面姿态的坐标,anchor pose是对数据集的正面姿态进行聚类得到的,具体的实现细节可以参照算法细节部分。输入人体图像的三维姿态数据的提取采用目前主流的三维姿态估计算法,对提取到的三维姿态数据需要进行标准化和平移的操作,具体的实现细节可以参照算法细节部分。基于anchor pose姿态回归相较于直接回归正面姿态,引入了anchor pose的先验使神经网络更加容易学习。

算法的前向传播流程如图4所示,输入图像通过两个分支提取特征,上面的分支采用主流的三维姿态估计算法提取三维姿态数据,下面的分支采用卷积层提取特征;对上面分支提取到的三维姿态数据经过两个全连接层,对下面分支提取到的卷积层特征经过两个全连接层,再将上下分支的全连接层的输出特征进行融合,其中特征融合采用拼接的方法。将融合后的特征经过一个全连接层后产生分支,上面是分类分支,下面是回归分支,分类分支为经过两个全连接层输出属于各个anchor pose的概率,图4柱状图代表属于各个anchorpose的概率值,回归分支为经过两个全连接层输出相对与anchor pose的坐标,这里不是直接回归正面姿态的坐标,而是基于anchor pose的姿态回归,图4箭头代表anchor pose与真实的正面姿态的位移。

算法采用的损失函数:假设批次的大小为n,真实姿态为{g

其中,y

由于本专利是一种多任务学习的模型,需要进行L

其中,θ

算法的推断过程:算法的推断过程不使用分类分支的输出只使用回归分支的输出,最终的输出为

3)算法细节

对模型在数据集上性能的测试,可以采用只在同组摄像头收集的图像上进行训练和测试,也可以采用在一组摄像头收集的图像上训练,但在另一组摄像头收集的图像上进行跨组的测试,或者同时在三组摄像头收集的图像上进行训练和测试。

卷积层的输入为128*128*3的图像,卷积层的选择可以采用AlexNet、VGG、GoogleNet、ResNet等。三维姿态数据在进入全连接层之前需要经过一系列的1*3的卷积,这样可以保持坐标间的空间结构。

anchor pose是对正面姿态进行聚类分析得到的。具体操作为提取每个姿态中人体关键点到人体中心的距离作为特征,人体中心为左肩和右肩的中点,再对这些特征进行聚类,具体需要得到多少类需要根据实际情况而定,聚类得到的簇中心即为anchor pose。对anchor pose同样需要进行标准化和平移操作。

通过对输入目标人体的二维图像以端到端的方式直接预测三维人体姿态数据,预测的三维人体姿态数据为21个人体关键点的坐标数据。对三维人体姿态数据同样需要进行标准化和平移操作。

本发明针对任意角度图像的正面姿态估计问题,提出了一种收集和处理多角度图像数据集的方法,并改进现有的深度学习模型,实现了任意角度二维人体图像的正面姿态估计。图5展示了部分的实验结果,左侧的二维人体图像为网络的输入,右侧的姿态为网络预测的正面姿态与真实正面姿态的重合情况。图5上面一排展示了输入为完全背面图像的预测结果,下面一排展示了输入为侧面图像的预测结果。从预测正面姿态与真实正面姿态的重合度可以看出,采取本发明的方法可以完成任意角度图像的正面姿态估计,即使对人体自遮挡非常严重的背面图像,或者有部分人体缺失侧面图像也可以有较好的表现。

附图说明

图1光场采集系统

图2多角度三维姿态

图317个关节点的姿态标注

图4网络结构图

图5实验结果

具体实施方式

首先,我们召集了十一个志愿者,并对每个人进行培训,以使他们可以完成规定的一套动作。经过数据的采集和处理,最终收集的数据如表1所示,三组摄像头(lower,middle,upper)分别收集到的数据量为41499、32940和38825。最后将收集的数据actor1,…,actor7作为训练集,actor8,…,actor11作为测试集。算法的评价指标采用PCK,即模型正确预测骨架关节点所占的比例。

其次,本专利将提出的融合三维姿态输入的基于anchor pose回归的二维人体图像正面姿态估计模型在训练集上进行训练。其中模型的卷积层采用ResNet进行特性提取,提取三维特征采用PandaNet。

算法采用的损失函数:假设批次的大小为n,真实姿态为{g

其中,y

由于本专利是一种多任务学习的模型,需要进行L

其中,θ

最后,将训练好的模型在测试集上进行测试,算法的测试过程不使用分类分支的输出只使用回归分支的输出,部分测试结果如图5所示。左侧的二维人体图像为网络的输入,右侧的姿态为网络预测的正面姿态与真实正面姿态的重合情况。图5上面一排展示了输入为完全背面图像的预测结果,下面一排展示了输入为侧面图像的预测结果。从预测正面姿态与真实正面姿态的重合度可以看出,采取本发明的方法可以完成任意角度图像的正面姿态估计,即使对人体自遮挡非常严重的背面图像,或者有部分人体缺失侧面图像也可以有较好的表现。

表1数据集

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号