【技术实现步骤摘要】
基于单目视频的多阶段人体动作捕捉方法、设备及介质
[0001]本专利技术属于计算机软件
,涉及单目相机下的人体动作捕捉技术。具体为在一个相机位置固定的场景中,基于单目RGB视频上预测人体关节的三维旋转量,进而驱动参数化三维人体模型的方法。
技术介绍
[0002]动作捕捉(Motion Capture)是一种新兴的动画技术,在准确地估计人的动作的同时生成相对应的虚拟资产动作动画。如今这项技术在娱乐、体育、医疗等领域有着广泛应用。其中,单目动作捕捉技术由于对设备的要求低,部署简单,极大地降低了使用门槛,因此拥有更大的市场。随着深度学习技术的发展,单目动作捕捉技术的精度不断地得到提升。SMPL(Skinned Multi
‑
Person Linear Model)是一种基于顶点的人体三维模型,能够精确地表示人体的不同形状和姿态,SMPL模型含有24个关节点,包括23个关节点和1个根节点。
[0003]在深度学习领域,现有的单目动作捕捉方法根据阶段状态可以分为两大类。第一类是单阶段的方法,如HMR、PyMAF,这类方法使用神经网络从原始的RGB输入中端到端地回归人体模型所需的姿态旋转参数,流程中没有显式的中间状态与中间监督。但是从原始图片到抽象的模型参数的映射是高度非线性的,这导致预测的结果往往与图片对齐得不够精准。第二类是多阶段的方法,如NBF、Pose2Mesh,这类方法通过分解任务来降低网络每一步的拟合难度,网络逐步地输出些中间表达,如人体关节点,并在此基础上继续预测直至得到目标结果。由 ...
【技术保护点】
【技术特征摘要】
1.基于单目视频的多阶段人体动作捕捉方法,其特征是对于固定相机情境下拍摄的单目RGB视频,将人体动作捕捉分为多个阶段:第一阶段对输入的单目视频逐帧进行人体姿态检测,估计二维的人体关键点,并构建三维人体模型SMPL的相机坐标系下的局部空间;第二阶段利用深度学习方法来获取视频序列中的空间与时序信息,学习从视频帧图像二维的人体关键点到相机空间中的三维人体关节点的映射关系,并检测感知人体在三维空间中的运动轨迹和触地情况;第三阶段根据反向动力学,通过制定惩罚策略,将三维的人体网格模型拟合到三维骨骼上,以刻画运动序列,实现动作捕捉。2.根据权利要求1所述的基于单目视频的多阶段人体动作捕捉方法,其特征是第一阶段通过预处理模块实现数据预处理,对单目视频逐帧检测二维的人体关键点,并对二维人体关键点序列归一化,另外将三维人体模型SMPL的24个关节点的坐标由世界坐标系转换到相机坐标系,并以根节点为基础,将其他关节点转化为相对于根节点的相对坐标,构建局部空间;同时,通过聚类方法对左右脚关节点高度进行聚类以估计地面的高度,生成左右脚关节的触地标签;第二阶段通过相机校正模块、人体姿态估计模块、人体轨迹估计模块进行姿态估计,人体姿态估计模块用于估计三维人体关节点在局部空间中的位置,根据二维人体关键点序列得到三维人体姿态序列,相机校正模块基于单目视频获取相机的内参和外参,用于获得视频的视角,人体轨迹估计模块用于预测在相机坐标系下的人体位移和触地情况,根据二维人体关键点序列和相机内外参得到三维人体轨迹序列和触地概率;第三阶段通过模型拟合模块,基于反向动力学,综合三维人体姿态序列、三维人体轨迹序列和触地概率进行拟合,获得三维人体模型运动序列。3.根据权利要求2所述的基于单目视频的多阶段人体动作捕捉方法,其特征是第一阶段的数据预处理包括提取二维人体关键点、转换三维人体关节点、生成触地标签三个子任务:S11提取二维人体关键点并归一化:对训练集中的原始视频降采样并进行抽帧,将视频帧送入人体姿态检测器中估计出25个二维人体关键点的图像坐标序列T为视频帧数,之后在保持横纵比的情况下,将x轴的坐标由[0,w]归一化到[
‑
1,1],即1,1],即其中w,h为视频帧的宽和高;S12转换三维人体关节点:通过视点变换将三维人体关节点坐标由世界坐标系转换到相机坐标系下以用于监督,记R
cam
和T
cam
为相机的旋转矩阵和位移量,为三维人体模型SMPL的24个关节点在世界坐标系下的位置坐标,转换公式为:维人体模型SMPL的24个关节点在世界坐标系下的位置坐标,转换公式为:其中P表示在相机坐标系下人体的三维关节点的空间坐标;最后,保留根节点在相机坐标系中的空间位置坐标,将其他关节点的三维坐标减去根节点的三维坐标,转化为相对于根节点的相对坐标,即P[:,1:]=P[:,1:]
‑
P[:,:1],三维轨迹的真值为根节点在相机坐标系下的三维坐标序列,即traj=P[:,:1],根节点的深度为depth=traj[:,:,2],其中[:]表示沿对应维度的切片操作;S13生成二分类触地标签:对于三维关节点序列,首先相邻两帧做差来计算关节点的位移速度,若节点的速度小于设定阈值,则认为在此帧中该关节处于静止状态,之后使用机器学习中的DBSCAN方法对静止的左、右脚关节的高度进行聚类,以最小的中位数减去一个偏
移常量作为地面的高度,对于左脚、右脚、左脚踝、右脚踝、左膝、右膝、左手腕、右手腕八个关节点,如果速度小于设定阈值,并且关节与地面的高度差在设定范围内,则认为该关节点处于触地状态,触地标签置为1。4.根据权利要求2所述的基于单目视频的多阶段人体动作捕捉方法,其特征是人体姿态估计模块包括编码和解码两个阶段,将归一化二维人体姿态关键点坐标序列(0,
…
,T
‑
1)作为输入,提取输入序列的特征,之后将特征送入解码器预测中间帧,即第帧的人体关节点在三维空间中的相对位置,具体为:在编码阶段,在通道维度上按照运动链分组、在时域维度上进行空洞卷积来提取长时特征,编码器为全卷积网络,采用空洞卷积操作和残差学习实现:将人体骨骼分为六个局部运动链:头部运动链、根节点运动链、左臂运动链、右臂运动链、左腿运动链和右腿运动链,各自的运动相对独立,将输入沿通道维度分为6组以分组提取特征,在编码器中,每一层网络输出分为7个部分,包括6个局部特征φ
g
,g=1,
…
,6,和一个全局特征ψ,第i层网络的输出记为从第i层网络l
i
到第i+1层网络l
i+1
的计算过程如下:使用全局卷积来提取全局的信息,同时在{全局,分组}连结特征上分组进行卷积,即:即:其中,均为步长为3、卷积核大小为3、空洞系数为3的空洞卷积操作,concate为沿通道维度的连结操作,编码器最终输出一个联合的分组特征之后在解码阶段,以多分支的形式分区域回归参数化的三维人体模型中的24个关节点,分组的局部特征φ
g
分别输入到6个独立的解码器中预测人体模型的对应的局部运动链上的关节的位置即:5.根据权利要求2所述的基于单目视频的多阶段人体动作捕捉方法,其特征是相机校正模块采用预训练的ResNet
‑
50模型作为主干网络,并把最后一层网络替换为三个独立的MLP头部网络,分别用于估计相机的垂直视野vfov、沿x轴的旋转量pitch和沿z轴旋转角度roll,相机焦距通过vfov来计算:则相机的内参矩阵为:根据相机的内参和外参得到相机的投影矩阵,在训练阶段,投影矩阵将网络预测得到的人体的三维节点投影到二维平面上得到对应关节在图像上的二维坐标,并与二维真值计算距离损失加以监督;对于vfov、pitch和roll中的每一个量的预测,预先定义一个取值范围[min,max],并且在这个范围内均匀采...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。