CN109636831B - 一种估计三维人体姿态及手部信息的方法 - Google Patents
一种估计三维人体姿态及手部信息的方法 Download PDFInfo
- Publication number
- CN109636831B CN109636831B CN201811557430.8A CN201811557430A CN109636831B CN 109636831 B CN109636831 B CN 109636831B CN 201811557430 A CN201811557430 A CN 201811557430A CN 109636831 B CN109636831 B CN 109636831B
- Authority
- CN
- China
- Prior art keywords
- human body
- model
- joint
- human
- head
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/292—Multi-camera tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/251—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- 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
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明为一种估计三维人体姿态及手部信息的方法,实现了一种新的以彩色深度相机单帧数据来自动准确的同时估计人体和手部的姿态以及人体实际体形的独特方法。首先将深度相机的关节预测与深度学习从彩色图预测关节的方法结合,同时获取人体的头部的转向解决现有技术不能匹配头部姿态的问题。同时,在人体估计中同时还原人手的姿态,使人体结果更形象具体,使用深度学习的方法从彩色图预测出手的3D姿态,然后使用3D人体关节拟合能量模型来完成人体姿态与最新的参数化人体模型SMPL+H的拟合。最后将获取的人体表面点云与拟合的模型进行配准提升人体形状估计的精确程度。籍此估计出一个准确的包含手部真实姿态的三维人体模型。
Description
技术领域
本发明属于图像处理技术领域,具体为一种估计三维人体姿态及手部信息的方法。
背景技术
我们致力于以景深彩色相机/Kinect的单帧数据准确的估计穿着衣服的人的裸体形状及姿态,包括手部的准确状态。相对一些复杂的系统,我们仅使用一个消费级的深度相机,并且仅利用其一帧的数据即可真缺估计任意姿态下的人体。在此工作中,我们提出了创造性的混合关节预测方法,即将深度相机从深度数据预测到的人体关节与以深度学习方法从彩色图像预测到的3D关节相结合从而得到更准确鲁棒的关节位置,并能同时从相机得到人体的头部实际转向。同时我们能比较超前的同时估计出人手的姿态达到一个人“全体”的估计,为此我们进行人手的姿态的预测,然后建立一个新的以3D关节等信息拟合出人体的能量模型,辅以单面人体点云从而获取准确的估计结果。现存的工作或花费较大或较为复杂或有缺陷,我们的系统一定程度上填补了这项空缺。如图1,简单展示了我们的系统的内容。
重建人体有很多相关的工作,但之前的工作都有着其缺陷或局限。文献[13,14]使用多立体相机系统获取3D扫描序列,结合模型[8]来重建人体,但花费昂贵。文献[3,4,5,6]使用多个位置的Kinect或彩色相机进行重建,文献[11,12]在多相机的基础上使用静态统计模型提升结果的鲁棒性。但上面这些方法依然需要较大的花费以及要求一定的空间,而我们的方法仅仅需要一个消费级的深度相机即可方便准确的估计出三维人体。
也有一些工作致力于单相机的人体重建。文献[1,2]以单个相机的多角度数据进行重建,但要求人静止不动,而我们的方法只需要人在镜头前摆出随意姿势。文献[9,10]以单个深度相机获取人的一周的扫描序列结合人体模型来匹配估计人体,而我们只需要获取人的一帧的数据,对人的要求更低,过程更为迅速便捷。
另有一些使用关节拟合的方式进行重建的方法,我们的方法与其类似。文献[15]只需要一张RGB图像即可估计人体,他们预测图像人体的2D姿态后,与模型[8]进行拟合,文献[16]作出改进,使用图像人体轮廓进行约束,但这些方法的结果非常依赖2D姿态的预测且2D姿态与3D维数的差距也会一定程度造成一些躯干四肢的耦合问题。
当前的人体重建方法根据所采用的方式可以分为无模板的和基于模型的,而静态统计模型在其中占有相当的分量,下面我们从三个方面回顾相关的工作:1)人体模型;2)无模板的人体重建;3)基于模型的人体重建。
人体模型。静态统计人体模型对人体重建可以提供很强的约束,使结果更加的鲁棒。扫描设备的发展,产生了丰富的人体扫描模型,Anguelov等[7]基于这些模型库建立了分开表示人体形状和姿态的统计模型,SCAPE模型以三角网格的变形来生成不同的姿态和形状,但是模型基于高维的特性使得其不利于计算。文献[22]在SCAPE标准姿态下的训练集顶点坐标上使用PCA,同时以线性混合蒙皮(LBS)来进行姿态变换,使SCAPE更有效率。为了增加形状空间的表现力,Chen等[23]将SCAPE与局部多线性模型进行结合。最近的模型来自是文献[8,24],前者使模型基于顶点变换,使用线性函数进行姿态和形状的变形,仅使用CPU即可进行实时动画且能直接用于各种渲染引擎,后者创建了基于身体局部的模型。Romero等[20]在SMPL上进行扩展,将手部模型嫁接到SMPL上得到SMPL+H模型,使模型更形象化还有一些文献[25]将动态软组织变形加入到模型变换中,使结果更加真实。
无模板的人体重建。Xu等[26]仅从单目相机,对高质量纹理数据通过变形网格重建出柔性形状,然后表示人体姿态和衣服几何的变形。Zhou等[27]使用消费级深度相机Kinect来进行低分辨率的3D刚体场景的重建,并使重建信息包含表面贴图信息,他们是在一个标准帧中使用逐渐融合的方式来完成几何的重建。文献[1]把KinectFusion应用于人体扫描,他们都要求人要保持静止站立,细微的姿态的改变都可能影响重建的结果,然而让人一直保持姿态是很难的。Newcombe等[28]实现了类似KinectFusion的功能,但是是非刚体的场景重建,以非刚体配准算法逐渐得到融合的详细的几何。最近的文献[29,30]取得了更好的重建效果,但是这些方法都有相同的限制,即要求相机以缓慢小心的动作去移动。类似于上面所述多个角度数据对人体重建,文献[3,4]使用多个固定位置的Kinect完成对场景的重建,最近的文献[5,6]使用多视角视频相机的方式,这些方法能够获得真实的表面重建,与上面方法不同的是,他们的关注点是自由视角的3D场景或者说是3D视频流或用于3D通讯的远程的真实渲染。采用文献[31]的预先扫描出模板的方式可以大大降低上面那些方法的在追踪过程中非刚体变形所产生的问题。因此有一些不完全基于模型的重建方法,Yu等[32]在柔性融合的过程中使用骨骼来进行正则化约束。Zhu等[33]着重于室外环境的穿衣重建,但要求目标静止。上面这些方法都更多的着重于几何表面的重建,而不是人的裸体。基于模型的人体重建。一个使人体估计结果更加鲁棒可信的方式就是使用静态统计人体模型。一些方法使用深度序列来重建人体。文献[34]使用单个kinect,将SCAPE匹配到初始姿态进行人体估计。Zhang等[9]以多角度深度数据进行非刚体融合后,与SCAPE进行匹配来估计人体。最近Bogo等[10]扩展了BlendScape,使用RGB-D序列恢复具有表面几何和软组织变形的结果。还有从多视角视频进行估计的文献[11,12],前者使用一个高斯混合模型的集合,后者是预先估计出带有骨骼等的人体。Yu等[35]同样先初始化获得3D模板,他们的方法用于单视频序列。还有一些方法采用模型拟合的方式,例如文献[36],但是他们是以手工的方式将模型与图像进行匹配。文献[37]从单张图像重建人体和衣服,由用户对图像进行标点并选择数据库中的衣服样式后拟合模型与骨骼或轮廓匹配。Zhang等[13]通过将文献[14]的SMPL模型拟合到3D扫描序列估计具有详细形状信息的最小穿衣形状,但数据的获取非常昂贵。文献[14]同样要求3D扫描序列,同时估计人体和可柔性变形的衣服几何。Tao等[38]在非刚体融合中以SMPL模型追踪和约束运动,能同时重建衣服几何和人体。Bogo等[15]使用Pishchulin等[39]的方法预测图像2D姿态,然后将SMPL模型的关节点映射到2D进行拟合,但对一些特殊图像会产生偏差的结果。文献[16]加入轮廓约束作出改进。
文献[8]中的SMPL是一个基于顶点的参数化人体模型,能准确表示自然场景下人体各种姿态的各种体型。SMPL模型通过蒙皮函数进行变换,以姿态和形状参数作为输入,返回具有6890个顶点和13776个三角面的网格。形状参数β是一个长度为10的向量,使用PCA从扫描数据获取得到的低维形状空间,参数的变化可以表示各种体形。模型由23个关节点组成运动学链表示骨骼,每个关节点以长度为3的向量表示相对于其父节点的相对旋转,因此姿态参数θ包含23×3+3=72个参数,所加的3是全局旋转。更多细节可以查看文献[8]。
SMPL+H人体模型由文献[20]对SMPL进行了扩展,从31个对象大约1000个各种姿态下的高分辨率人手3D扫描数据学习出MANO模型,相比于SMPL模型有着很大的优势,该模型采用了与SMPL类似的训练过程,与SMPL有着相同的样式,具有低维的姿态参数,然后将MANO模型应用到SMPL模型得到人体模型和手模型的铰接SMPL+H,应用该模型我们可以估计出人手的姿态,同时为人体应用各种新的人体姿态和手部姿态(如图2)。新模型同样可以直接兼容当前的图形软件,且可以快速简单的应用。
MANO手模型具有14个关节点,两只手则是28个关节点,为了易于计算将单只手的姿态参数用长度为6的向量表示,SMPL+H模型的姿态参数长度为72+6×2-3*2=78,其中减去的部分是手模型与身体模型结合处重合的关节点,模型变形函数与SMPL相同。
上述方法在精度和成本上不能兼顾,无法在消费级市场上在确保高精度的前提下有效推广。
发明内容
针对背景技术中所述的不足,本发明提供一种估计三维人体姿态及手部信息的方法。其具体方法如下:
一种估计三维人体姿态及手部信息的方法,由计算机按如下步骤进行:
步骤1:通过景深彩色相机获取彩色图与深度图,并传递至计算机;所述景深彩色相机,可由RGB相机和深度相机/红外相机替代;
步骤2:由计算机进行混合关节预测;
步骤3:由计算机拟合人体模型到关节点,并约束头部方向估计人体姿态和体型;
步骤4:由计算机使用点云数据对拟合结果进行细节优化;
步骤5:由计算机对拟合过程进行优化,并输出结果。
进一步说,所述景深彩色相机为一台具有RGB相机、深度传感器和/或红外投影机功能的相机,更进一步说,景深彩色相机为Kinect相机。
进一步说,本发明的具体方法如下:
首先,通过景深彩色相机的单帧数据作为输入,该单帧数据包含深度图,彩色图,以及相机从深度图计算得到的人体骨骼与头部方向数据;
然后,使用混合预测的方法获取所需的3D骨骼关节点、3D人手关节点和人体3D点云数据,所述3D人手关节点可以接到骨骼关节点上组成一个更丰富更完整的3D人体骨骼,不带手的骨骼如图10所示,具体如下:采用最小化SMPL关节和数据3D关节之间的误差的目标函数,将文献[20]所述的SMPL+H模型准确拟合到3D骨骼关节点;所述3D骨骼关节点为混合预测后包括手指骨骼关节点在内的数据,将SMPL+H模型的3D关节点拟合到混合预测到的人体的3D关节点,模型的关节点是模型自有的,如图11是模型的关节点;
通过最小化SMPL关节和数据3D关节/3D骨骼关节点之间的误差的目标函数,首先对人体姿态进行拟合,得到一个与真实人体姿态体型基本一致的模型;然后,将模型的头部方向约束到人体的头部方向并使用3D点云数据通过一个约束人体点云与模型表面的能量函数来对拟合结果的细节准确性进行进一步优化,从而得到最终的准确的人体估计结果。
所述混合预测的方法:是将相机计算出来的身体骨骼(数据3D关节)与LCR-Net(文献18)从RGB图像预测的身体骨骼相结合,并结合文献[21]的方法从RGB图像预测人手的骨骼,从而获取更准确更完整的骨骼的方法。3D骨骼关节点:指人体骨骼的关节处的点,如图11所示,属于公知。最小化SMPL关节和数据3D关节之间的误差的目标函数、约束人体点云与模型表面的能量函数:详见后文中对能量项的解释。
景深彩色相机为微软的第二代Kinect设备,该设备包含RGB相机/彩色相机、深度传感器、红外投影机;彩色相机分辨率可达到1080P,可以同时识别6人的骨骼关节,且对每人可识别的关节点不小于25个,几乎囊括了人体运动所需的所有关键关节;通过Kinect官方的KinectSDK获取所需的数据,包括深度图、彩色图、骨骼数据和头部转向,这些数据都包含在Kinect的一帧中。
进一步说,步骤2的具体方法如下:景深彩色相机提供自带方法从深度图获取关节点,例如Kinect可以获取25个关节点,包括躯干、脖子等,这些关节点大多数时候都是准确的,然而由于人体的自我遮挡以及衣服的影响也可能使自带方法计算出来的关节点不准确,尤其是远离躯干(四肢)的关节点。因此我们通过LCR-Net深度学习的方法从彩色图估计人体3D关节点,该方法由Rogez在文献[18]中进行了详细的阐述。然后我们将LCR-Net的关节点与相机计算出来的关节点相结合,进行混合预测,从而获得准确的关节位置。
对于相机获得关节点在我们的方法中仅使用到18个,且对于每个关节点相机都会赋予其状态值“追踪”和“推测”,当为推测时表明该关节点不准确。对于不准确的关节点j,我们通过LCR-Net获得的关节点的关节角度来对其进行修正从而得到该关节点的准确位置j*:
其中jp为该关节点在关节树上的父关节点,是指向z轴方向的单位向量,R为罗德里格斯旋转矩阵,当j在LCR-Net所预测的骨骼中对应的关节点为j′,我们通过下式计算R:
其中E是三维单位矩阵,A为向量的反对称矩阵,j′p为jp在LCR-Net中对应的关节点,是j′在关节树上的父关节点。
通过上述方法我们可以得到准确的人体骨骼,与此同时,我们通过预测手部姿态的深度学习方法从彩色图估计出人体的手的骨骼,该方法由Pavlakos在文献[21]中进行了详细的阐述。通过此方法后我们可以得到一个更完整的包含手骨在内的人体骨骼,使用这个人体骨骼估计出人体姿态和体形的同时可以估计出人手的姿态与形状。
有益的技术效果
本发明方法则直接通过彩色深度相机本身的骨骼追踪结合深度学习预测人体的3D姿态,且可以获得更多的关节点,使拟合结果更为鲁棒准确,并能解决上述方法头部转向不符合的问题。我们使用人体单面点云作为约束代替轮廓约束使结果更为精确。同时我们进行了人手部姿态的预测,通过拟合最新的人体模型[20]使估计的人体包含手部的真实姿态,使结果更为形象生动具体,最近的文献[40]也实现了手部姿态的还原,但与上面提到过的方法类似,需要特别设置的空间以及多相机系统,远远超出于消费领域。
总结以上,我们在估计人体的工作上有以下贡献:
1)使用消费级深度相机单帧数据来估计任意姿态下的3D人体与姿态;
2)使用混合的姿态估计方法提高3D姿态估计的准确性;
3)使用相机的识别头部转向的功能解决以前的方法的头部姿态的存在的问题;
4)同时识别手部姿态,结合SMPL+H模型估计还原人体的身体和手部姿态;
5)使用单面3D人体点云替代人体轮廓优化人体估计;
6)一个用来进行3D姿态拟合的新的能量模型。
7)由于SMPL+H模型取消了对应于全局平移的参数,而模型模板与我们所获取的数据在空间中的3D位置并非对应,为了应用于我们的拟合,我们进行了改进和创新:为其加上一个辅助变量t,则此时参数β和θ下的模型可以表示为:
M(β,θ,t;T,W)=W(T(β,θ),J(β),θ,W)+t (1)
其中T是SMPL+H模型的默认形状模板,W是应用于进行过姿态和形状偏移的顶点模型T(β,θ)的线性蒙皮函数,W是混合权重矩阵。J(β)表示该体型标准姿态下关节点的位置:
J(β)=J·Ts (2)
其中J是变换矩阵,Ts表示β参数下对应的形状。我们可以获取到模型在当前姿态与体形下对应的3D关节点的位置Jm:
Jm(β,θ)=G(J(β),θ) (3)
G(·)为对应于关节的全局变换。
附图说明
图1是本文研究内容简介。在图1中,(a)微软的Kinect二代深度相机。(b)深度相机所获取的一帧数据:上面的为彩色数据图,人体上深灰色的点为预测到的关节点位置(为了方便表示直接以2D形式表示),下面的为深度数据图。(c)估计出的对应的人体结果。
图2展示了随机生成的手的新的姿态。在估计出人体后,可以生成各种新的姿态模型。
图3为系统预览示意图。最上方的是相机获得的深度图和彩色图。通过从深度图预测得到的骨骼与从彩色图预测得到的骨骼混合处理,我们可以得到更准确的人的身体骨骼关节。同时通过相机SDK我们可以获得人体点云和头部方向,而从彩色图我们可以完成人的手关节的预测。通过这些最终的数据我们可以完成对当前人体的姿态与体形的准确估计,图中最下方是在对人体的估计过程中模型的变换过程,最后一个人体即为最终的结果。图中是我们的系统所处理的一个实例。
图4为点1与点3、点2与点4、点1与点5形成的向量分别表示与Kinect的欧拉角相对应的头部方向的示意图。通过该方式将转向角统一到世界坐标系从而进行数据上的约束。
图5为对6个对象估计结果的身体数据的比较示意图。左斜纹框表示估计出的模型的身高,右斜纹框为对应的人体的真实身高数据,最下方的横线为计算的身高平均误差。模型库无法完全表示每一个真实的人体,因此拟合结果会与真实值存在一定程度的不可避免的误差,然而这样的结果已经一定程度可以表示真实人体的体形和姿态以及在其他应用中使用。表中最上方的横线表示文献[21]的人体估计结果的3D关节点的平均误差,中间的线为我们的关节点误差,两相比较下,我们的方法明显优于该方法。
图6为对6个对象的拟合结果的对比示意图。图中上部分为拟合结果与人体3D点云的匹配程度的比较,可以看出其与真实人体基本吻合,具有很高的准确性。下部分为空间中模型与点云错开位置侧面或正面的对比,其姿态与真实人体基本一致,并且还原了人的手部的姿态,拟合结果形象而准确。
图7为对比结果展示图。我们在此选取了三个对象的数据,将人体实际点云与估计结果在3D空间中进行直观的对比。其中上面一行为文献[15]的拟合结果的3D展示,下面一行为我们的方法的与之对应的拟合结果,每两列为同一个对象的结果图,第一列为正面效果,第二列为侧面效果对比。从对比中可以明显看出我们的方法无论在姿态还是体形的准确性上都优于文献[15]。b列是两种方法细节部分的对比,左边对应的是文献[15],右边则是我们的方法。
图8为对图7进行的细节对比示意图,同上,每两列为同一对象。上面一行为文献[15]的方法,下面一行为我们的方法,可看出我们的方法在头部转向、姿态准确性方面有更好的表现,同时我们的方法能同时恢复人体的手的姿态,使结果更为生动真实,这是文献[15]未能做到的。
图9是本发明的流程框图。
图10是不带手的骨骼示意图。
图11是将SMPL+H模型的3D关节点拟合到混合预测到的人体的3D关节点的示意图。
图12是通过关节点与人体点云的关系从关节点Jkinect与3D关节点Jlcr中选择更为准确的四肢的关节点的示意图。
图13是根据阈值σ减小过大的关节点距离带来的负面影响的示意图。
具体实施方式
现结合附图详细说明本发明的结构特点与技术优势。
一种估计三维人体姿态及手部信息的方法,由计算机按如下步骤进行:
步骤1:通过景深彩色相机获取彩色图与深度图,并传递至计算机;所述景深彩色相机,可由RGB相机和深度相机/红外相机替代;
步骤2:由计算机进行混合关节预测;
步骤3:由计算机拟合人体模型到关节点,并约束头部方向估计人体姿态和体型;
步骤4:由计算机使用点云数据对拟合结果进行细节优化;
步骤5:由计算机对拟合过程进行优化,并输出结果。
进一步说,所述景深彩色相机为一台具有RGB相机、深度传感器和红外投影机功能的相机,进一步说,景深彩色相机为Kinect相机。
进一步说,本发明的具体方法如下:
首先,通过景深彩色相机的单帧数据作为输入,该单帧数据包含深度图,彩色图,以及相机从深度图计算得到的人体骨骼与头部方向数据;
然后,使用混合预测的方法获取所需的3D骨骼关节点、3D人手关节点和人体3D点云数据,所述3D人手关节点可以接到骨骼关节点上组成一个更丰富更完整的3D人体骨骼,不带手的骨骼如图10所示:具体如下:
采用最小化SMPL关节和数据3D关节之间的误差的目标函数,将文献[20]所述的SMPL+H模型准确拟合到3D骨骼关节点;所述3D骨骼关节点为混合预测后包括手指骨骼关节点在内的数据,将SMPL+H模型的3D关节点拟合到混合预测到的人体的3D关节点,模型的关节点是模型自有的,如图11是模型的关节点:
通过最小化SMPL关节和数据3D关节/3D骨骼关节点之间的误差的目标函数,首先对人体姿态进行拟合,得到一个与真实人体姿态体型基本一致的模型;然后,将模型的头部方向约束到人体的头部方向并使用3D点云数据通过一个约束人体点云与模型表面的能量函数来对拟合结果的细节准确性进行进一步优化,从而得到最终的准确的人体估计结果。
所述混合预测的方法:是将相机计算出来的身体骨骼(数据3D关节)与LCR-Net(文献18)从RGB图像预测的身体骨骼相结合,并结合文献[21]的方法从RGB图像预测人手的骨骼,从而获取更准确更完整的骨骼的方法。3D骨骼关节点:指人体骨骼的关节处的点,如图11所示,属于公知。最小化SMPL关节和数据3D关节之间的误差的目标函数、约束人体点云与模型表面的能量函数:详见后文中对能量项的解释。
进一步说,步骤1的具体方法如下:
景深彩色相机为微软的第二代Kinect设备,该设备包含RGB相机/彩色相机、深度传感器、红外投影机;
彩色相机分辨率可达到1080P,可以同时识别6人的骨骼关节,且对每人可识别的关节点不小于25个,几乎囊括了人体运动所需的所有关键关节;
通过Kinect官方的KinectSDK获取所需的数据,包括深度图、彩色图、骨骼数据和头部转向,这些数据都包含在Kinect的一帧中。
进一步说,步骤2的具体方法如下:
景深彩色相机提供自带方法从深度图获取关节点,例如Kinect可以获取25个关节点,包括躯干、脖子等,这些关节点大多数时候都是准确的,然而由于人体的自我遮挡以及衣服的影响也可能使自带方法计算出来的关节点不准确,尤其是远离躯干(四肢)的关节点。因此我们通过LCR-Net深度学习的方法从彩色图估计人体3D关节点,该方法由Rogez在文献[18]中进行了详细的阐述。然后我们将LCR-Net的关节点与相机计算出来的关节点相结合,进行混合预测,从而获得准确的关节位置。
对于相机获得关节点在我们的方法中仅使用到18个,且对于每个关节点相机都会赋予其状态值“追踪”和“推测”,当为推测时表明该关节点不准确。对于不准确的关节点j,我们通过LCR-Net获得的关节点的关节角度来对其进行修正从而得到该关节点的准确位置j*:
其中jp为该关节点在关节树上的父关节点,是指向z轴方向的单位向量,R为罗德里格斯旋转矩阵,当j在LCR-Net所预测的骨骼中对应的关节点为j′,我们通过下式计算R:
其中E是三维单位矩阵,A为向量的反对称矩阵,j′p为jp在LCR-Net中对应的关节点,是j′在关节树上的父关节点。
通过上述方法我们可以得到准确的人体骨骼,与此同时,我们通过预测手部姿态的深度学习方法从彩色图估计出人体的手的骨骼,该方法由Pavlakos在文献[21]中进行了详细的阐述。通过此方法后我们可以得到一个更完整的包含手骨在内的人体骨骼,使用这个人体骨骼估计出人体姿态和体形的同时可以估计出人手的姿态与形状。
进一步说,步骤3的具体方法如下:
通过最小化SMPL标准模型与目标人体之间的偏差的目标函数来完成3D模型的拟合过程。为了获得准确的拟合结果,我们将目标函数定义为五个能量项的集合,具体为:
E(β,θ,t)=Ejoints+Epose+Eshape+Esphere+Ehead (7)
其中,Ejoints是关节数据项,用来将模型拟合到实际人体;Epose和Eshape是姿态和形状先验项,用来防止拟合过程中模型异常的姿态和体形变化;Esphere是人体惩罚项,用来防止变化过程中人体身体之间发生异常重合渗透,例如模型的手臂变形到了人身体里;Ehead是头部数据项,用来将模型的头部方向拟合到人体实际头部方向。
数据项:在该项我们将SMPL+H模型的3D关节点与我们的关节点进行匹配,从而将模型变换到人的真实姿态和体形。我们的关节点在经过混合关节预测后,同时包括人体骨骼和手骨骼的关节点。我们通过最小化所获得的关节点与SMPL+H模型关节点之间的欧式距离来进行匹配:
其中ωjoints是该项的权重,Ji和Jm,i分别是我们获得的和SMPL+H模型的第i个关节点,dist()表示两个关节点的欧式距离的平方。ρ(x)=x2/(x2+σ2)是一个杰曼·麦克卢尔函数[41],根据其阈值σ可以减小过大的关节点距离带来的负面影响。
形状先验项:通过该项我们可以避免在模型拟合过程中模型的体形参数在能量最小化过程中大跨度的夸张的变化,那会造成体形不正常的变形或得到与实际不符的人体。我们将该项定义为当前迭代过程中的形状参数与上一次的差:
Eshape=ωshape|β-β′| (10)
ωshape是该项的权重,β为模型当前迭代过程的体形参数,β′上一次迭代结果的体形参数,其初始为0。
姿态先验项:该项用来对姿态进行约束,对不自然的姿态进行惩罚,我们通过马氏距离对模型当前的姿态参数进行约束:
其中ωpose为权重,θ为当前迭代过程模型的姿态参数,为SMPL+H模型本身所有姿态数据的平均值,/>是与θ相关的协方差矩阵的逆矩阵,表示姿态参数θ的每个元素的权重。
人体惩罚项:模型变换过程中身体的部分之间的重合渗透会使拟合的结果不正确,为了避免这种情况,我们需要计算身体之间的渗透并通过能量式最小化对其约束。为了使计算过程简易,使用几何体近似来模拟身体,在这里我们使用“胶囊”定义人体,再将胶囊表示为球心C(θ,β)为轴长中心、球径为胶囊半径三分之一的球体来计算人体间渗透,该定义方法由Bogo在论文[15]中进行了详细的阐述,θ和β同上几式,该项定义为高斯函数形式:
其中ωsphere是该项权重,I(i)是与第i个球体相关的球体的索引集合。
头部数据项:通过数据项的拟合模型并不能获得正确的头部方向,因为头部关节点属于骨骼的终端关节点,它的匹配无法约束头部的姿态。因此我们通过计算SMPL+H模型的当前迭代过程中的头部方向角度,并最小化其与相机得到的头部方向数据的偏差来得到准确的头部方向。
为此,我们在SMPL+H模型的头部选取5个点,这些点可以形成类似三维空间坐标系的三个向量,我们令nx=n15,ny=n24,nz=n13分别表示这三个向量,它们能准确表示头部的当前方向。将头部方向数据表示为Hd,计算得到的模型的头部方向表示为Hm,则该项定义为:
ωhead为对应权重,{x,y,z}表示坐标轴,和/>表示头部对应于三个坐标轴的旋转角度,/>由下式进行计算:
其中f()将向量投影到与k轴垂直的坐标平面,nk表示模型头部当前迭代的头部方向,n′k表示nk的初始值。
进一步说,步骤4是步骤3后的进一步数据处理;步骤4的具体方法如下:
经过上述人体拟合目标函数的拟合过程后,我们会得到与人体姿态体型基本一致的模型,但骨骼数据并不能完完全全准确表示人体的结构,所以该模型与人体实际姿态体形还会有些微的出入,因此为了更进一步提升其精确程度,我们使用相机获取的3D人体点云对该模型进行约束。一个能准确表示实际人体的3D模型的表面应当与人体的点云表面保持其很大的吻合程度。我们通过ICP的思想,对模型上的每一点,找到人体点云上距离其最近的点,,我们将这些成对的点定义为集合P,然后最小化这些成对的点中模型上的点到点云表面的距离:
其中(vm,vc)是一组对应的点对,vm是模型上的点,vc是点云上vm的最近点,是点云上vc点处的法向量,通过将该点与其最近的两个点v′、v″组成的两个向量叉乘即可得到:
进一步说,步骤5的具体方法如下:步骤3的求解过程为一个迭代求解的过程,每一次迭代都是使模型向更接近实际人体的方向变换一次,步骤5为对步骤3的每一次迭代过程中的权重参数进行设置的解释,通过权重的变化可以求解出更准确的解。步骤5主要是详细解释怎么通过步骤3和步骤4的式子更好的计算出人体估计结果。
为了防止各个能量项或参数在数据拟合之间造成的不良影响,采用分解优化的过程进行求解:
在第一阶段,即人体拟合函数开始迭代时,我们分别将各项的权重初始化为ωjoints=ωpose=1,ωshape=0.1,ωsphere=1·e3以及ωhead=0,将头部数据项的权重设置为0。
在之后的每一次迭代,我们将权重ωjoints每次增加2,ωshape每次增加1,而ωpose每次减小0.1。在10次迭代后,我们可以获得一个与真实人体基本吻合但头部方向不正确的模型,此时我们开始对人的头部方向进行约束,即将权重ωhead赋值为1,而其他项的权重保持不变,在此状态下经过求解后,我们可以获得一个完整的人体姿态和体形估计结果,只与实际有些微偏差。
在第二阶段,我们使用人体点云数据对上一阶段的结果进行细节优化,此步骤求解完成后即得到我们的准确的人体体形和姿态估计结果。
为了更好地阐述本发明的技术特点,现换一角度阐述本发明:
参见图4,图4显示了我们的系统的总体预览。我们的目标是使用彩色深度相机的单帧数据结合各种方法来对各种衣服下的人体进行准确的估计。实验中我们选用Kinect的单帧数据作为数据输入,包含深度数据、彩色图像以及人体的骨骼数据,然后使用混合预测的方法获取所需的3D骨骼关节点、3D人手关节点和人体3D点云数据。为了将SMPL模型文献[8]准确拟合到3D关节,我们使用最小化SMPL关节和数据3D关节之间的误差的目标函数。通过该目标函数,我们首先对人体姿态进行拟合,得到一个与真实人体姿态体型基本一致的模型,事实上此时的模型已经有了很高的精确性。然后我们使用3D点云数据通过一个约束人体点云与模型表面的能量函数来对拟合结果的细节准确性进行进一步优化,从而得到最终的准确的人体估计结果。
数据获取与混合关节预测
数据获取。本实验中我们使用的是微软的Kinect第二代,包含RGB相机、深度传感器,彩色相机分辨率可达到1080P,可以同时识别6人的骨骼关节,每人可识别的关节点多达25个,几乎囊括了人体运动所需的所有关键关节。我们通过Kinect官方的KinectSDK获取所需的数据,包括深度图、彩色图、骨骼数据和头部转向数据,这些数据都可以通过Kinect的一次拍摄获得。
混合关节预测。
景深彩色相机提供自带方法从深度图获取关节点,例如Kinect可以获取25个关节点,包括躯干、脖子等,这些关节点大多数时候都是准确的,然而由于人体的自我遮挡以及衣服的影响也可能使自带方法计算出来的关节点不准确,尤其是远离躯干(四肢)的关节点。因此我们通过LCR-Net深度学习的方法从彩色图估计人体3D关节点,该方法由Rogez在文献[18]中进行了详细的阐述。然后我们将LCR-Net的关节点与相机计算出来的关节点相结合,进行混合预测,从而获得准确的关节位置。
对于相机获得关节点在我们的方法中仅使用到18个,且对于每个关节点相机都会赋予其状态值“追踪”和“推测”,当为推测时表明该关节点不准确。对于不准确的关节点j,我们通过LCR-Net获得的关节点的关节角度来对其进行修正从而得到该关节点的准确位置j*:
其中jp为该关节点在关节树上的父关节点,是指向z轴方向的单位向量,R为罗德里格斯旋转矩阵,当j在LCR-Net所预测的骨骼中对应的关节点为j′,我们通过下式计算R:
其中E是三维单位矩阵,A为向量的反对称矩阵,j′p为jp在LCR-Net中对应的关节点,是j′在关节树上的父关节点。
通过上述方法我们可以得到准确的人体骨骼,与此同时,我们通过预测手部姿态的深度学习方法从彩色图估计出人体的手的骨骼,该方法由Pavlakos在文献[21]中进行了详细的阐述。通过此方法后我们可以得到一个更完整的包含手骨在内的人体骨骼,使用这个人体骨骼估计出人体姿态和体形的同时可以估计出人手的姿态与形状。
人体拟合目标函数
我们通过最小化SMPL标准模型与目标人体之间的偏差的目标函数来完成3D模型的拟合过程。为了获得准确的拟合结果,我们将目标函数定义为五个能量项的集合,具体为:
E(β,θ,t)=Ejoints+Epose+Eshape+Esphere+Ehead (7)
其中,Ejoints是关节数据项,用来将模型拟合到实际人体;Epose和Eshape是姿态和形状先验项,用来防止拟合过程中模型异常的姿态和体形变化;Esphere是人体惩罚项,用来防止变化过程中人体身体之间发生异常重合渗透,例如模型的手臂变形到了人身体里;Ehead是头部数据项,用来将模型的头部方向拟合到人体实际头部方向。
为了更清楚地解释,我们着重解释如下:
数据项:在该项我们将SMPL+H模型的3D关节点与我们的关节点进行匹配,从而将模型变换到人的真实姿态和体形。我们的关节点在经过混合关节预测后,同时包括人体骨骼和手骨骼的关节点。我们通过最小化所获得的关节点与SMPL+H模型关节点之间的欧式距离来进行匹配:
其中ωjoints是该项的权重,Ji和Jm,i分别是我们获得的和SMPL+H模型的第i个关节点,dist()表示两个关节点的欧式距离的平方。ρ(x)=x2/(x2+σ2)是一个杰曼·麦克卢尔函数[41],根据其阈值σ可以减小过大的关节点距离带来的负面影响,其图13所示。
形状先验项:通过该项我们可以避免在模型拟合过程中模型的体形参数在能量最小化过程中大跨度的夸张的变化,那会造成体形不正常的变形或得到与实际不符的人体。我们将该项定义为当前迭代过程中的形状参数与上一次的差:
Eshape=ωshape|β-β′| (10)
ωshape是该项的权重,β为模型当前迭代过程的体形参数,β′上一次迭代结果的体形参数,其初始为0。
姿态先验项:该项用来对姿态进行约束,对不自然的姿态进行惩罚,我们通过马氏距离对模型当前的姿态参数进行约束:
其中ωpose为权重,θ为当前迭代过程模型的姿态参数,为SMPL+H模型本身所有姿态数据的平均值,/>是与θ相关的协方差矩阵的逆矩阵,表示姿态参数θ的每个元素的权重。
人体惩罚项:模型变换过程中身体的部分之间的重合渗透会使拟合的结果不正确,为了避免这种情况,我们需要计算身体之间的渗透并通过能量式最小化对其约束。为了使计算过程简易,使用几何体近似来模拟身体,在这里我们使用“胶囊”定义人体,再将胶囊表示为球心C(θ,β)为轴长中心、球径为胶囊半径三分之一的球体来计算人体间渗透,该定义方法由Bogo在论文[15]中进行了详细的阐述,θ和β同上几式,该项定义为高斯函数形式:
其中ωsphere是该项权重,I(i)是与第i个球体相关的球体的索引集合。
头部数据项:通过数据项的拟合模型并不能获得正确的头部方向,因为头部关节点属于骨骼的终端关节点,它的匹配无法约束头部的姿态。因此我们通过计算SMPL+H模型的当前迭代过程中的头部方向角度,并最小化其与相机得到的头部方向数据的偏差来得到准确的头部方向。
为此,我们在SMPL+H模型的头部选取5个点(如图4),这些点可以形成类似三维空间坐标系的三个向量,我们令nx=n15,ny=n24,nz=n13分别表示这三个向量,它们能准确表示头部的当前方向。将头部方向数据表示为Hd,计算得到的模型的头部方向表示为Hm,则该项定义为:
ωhead为对应权重,{x,y,z}表示坐标轴,和/>表示头部对应于三个坐标轴的旋转角度,/>由下式进行计算:
其中f()将向量投影到与k轴垂直的坐标平面,nk表示模型头部当前迭代的头部方向,n′k表示nk的初始值。
优化拟合结果
经过上述人体拟合目标函数的拟合过程后,我们会得到与人体姿态体型基本一致的模型,但骨骼数据并不能完完全全准确表示人体的结构,所以该模型与人体实际姿态体形还会有些微的出入,因此为了更进一步提升其精确程度,我们使用相机获取的3D人体点云对该模型进行约束。一个能准确表示实际人体的3D模型的表面应当与人体的点云表面保持其很大的吻合程度。我们通过ICP的思想,对模型上的每一点,找到人体点云上距离其最近的点,,我们将这些成对的点定义为集合P,然后最小化这些成对的点中模型上的点到点云表面的距离:
其中(vm,vc)是一组对应的点对,vm是模型上的点,vc是点云上vm的最近点,是点云上vc点处的法向量,通过将该点与其最近的两个点v′、v″组成的两个向量叉乘即可得到:
拟合过程优化
为了防止各个能量项或参数在数据拟合之间造成的不良影响,我们采用分解优化的过程进行求解。在第一阶段,即人体拟合函数开始迭代时,我们分别将各项的权重初始化为
ωjoints=ωpose=1,ωshape=0.1,ωsphere=1·e3以及ωhead=0,将头部数据项的权重设置为0。
在之后的每一次迭代,我们将权重ωjoints每次增加2,ωshape每次增加1,而ωpose每次减小0.1。在10次迭代后,我们可以获得一个与真实人体基本吻合但头部方向不正确的模型,此时我们开始对人的头部方向进行约束,即将权重ωhead赋值为1,而其他项的权重保持不变,在此状态下经过求解后,我们可以获得一个完整的人体姿态和体形估计结果,只与实际有些微偏差。
在第二阶段,我们使用人体点云数据对上一阶段的结果进行细节优化,此步骤求解完成后即得到我们的准确的人体体形和姿态估计结果。
对比实验
我们对实验对象进行了姿态体形的估计,发现每次估计的结果都与实际体形保持一致性。为了更客观的表现方法的效果,随机选取了6个对象数据,通过内部观测与比较和外部实验对比的方式来进行结果的评估。
内部观测与比较。首先对每个对象的估计结果进行身高测量,我们将拟合的模型变换回标准姿态(T)后进行误差计算,同时计算拟合结果与估计的3D关节点的误差。通过数据上两种误差的对比,可以看出拟合结果是相对鲁棒的(图5)。其次我们在3D空间中进行了模型与点云表面的对比(图7),从对比结果发现拟合结果与真实人体总能保持基本一致,说明我们的方法鲁棒并且准确。
外部实验对比。我们通过与之前的方法[15]进行对比,来评估我们的系统的效果。文献[15]使用神经网络从彩色图估计人体2D关节后将SMPL模型拟合到人体,刚好可以使用与我们从相机获取到的同源的彩色图像,使对比更为可信。我们首先对比了我们的方法与文献[15]的方法的关节点的误差(图5),我们的方法在此项表现上相比于文献[15]有很大的提升。并且通过对比我们发现,我们的方法解决了文献[15]不能估计人的头部转向的问题,并且在姿态和点云表面的直观对比上更为准确(图7)。从图7中我们可以看到在体形上我们的方法的效果要优于文献[15]的人体拟合结果,同时文献[15]的结果在以全3D的角度观察的时候会暴露出姿态会与人体实际结果有或多或少的不正确,我们在细节上对此进行了放大突出比较(图8),我们通过了多次试验确定了其存在该问题,而我们的方法则保证了其姿态的准确性,对应的姿态的准确也会反过来使体形的估计更为准确。
总结:本发明提出了一个新的用人体3D关节来准确估计衣服下人体的方法,只使用彩色深度相机的单帧数据。实验中我们的系统使用的是微软的Kinect二代深度相机,通过彩色深度相机可以获取相机前的人体的彩色图、深度图、骨骼信息和头部方向信息,
然后使用混合的关节预测方法估计出人体3D关节(包含手部关节)并与相机预测到的骨骼信息结合获取更准确鲁棒的关节位置,然后将3D人体模型拟合到这些关节点,并对齐模型的头部方向。同时采用对深度图进行分割的犯法获取人体的准确的3D点云,来对拟合的模型进行更佳的完善。我们使用的是最近提出的SMPL+H模型,其在原始SMPL模型的基础上进行了有效地改进,不仅对体形有很大的限制,而且还能真实还原人手的各种姿态。我们籍此定义了两个目标函数,第一个通过最小化模型与人体关节之间、头部方向之间的误差来优化模型的形状、姿态和全局变换参数,另一个通过减小模型表面与人体点云之间的偏差来使完善最终估计出的人体。这是一个简单直接并且准确的估计3D姿态和人体形状的方法。通过该方法估计出的模型可以直接用于产生新姿态的人体和动画系统。通过比较,我们的系统优于之前的方法。
未来的工作有很多值得去改进和进步的地方,应当去完善模型,使模型具有更多的人体细节信息,例如面部,这会使模型更加的真实,并且当前的手部姿态识别的方法并非特别的鲁棒,之后可以使用更优异的手部姿态识别的方法,同时使该系统达到实时的程度,以及达到相机前多人摆下姿态的情形估计所有人模型的效果,将其用于3D打印相信是一件很有趣的事情。我们还可以结合其他的方法为生成的模型穿上各种服装,达到虚拟试衣间的功能,这会是个很好的应用。
参考文献(References):
[1]A.Shapiro,A.Feng,R.Wang,H.Li,M.Bolas,G.Medioni,and E.Suma.Rapidavatar capture and simulation using commodity depth sensors.ComputerAnimation and Virtual Worlds,25(3-4):201–211,2014.
[2]S.Fuhrmann,F.Langguth,and M.Goesele.Mve-a Multiview reconstructionenvironment.In EUROGRAPHICS Workshops on Graphics and Cultural Heritage,pages11–18,2014.
[3]M.Dou,S.Khamis,Y.Degtyarev,P.Davidson,S.R.Fanello,A.Kowdle,S.O.Escolano,C.Rhemann,D.Kim,J.Taylor,et al.Fusion4d:Real-time performancecapture of challenging scenes.ACM Transactions on Graphics(TOG),35(4):114,2016.
[4]S.Orts-Escolano,C.Rhemann,S.Fanello,W.Chang,A.Kowdle,Y.Degtyarev,D.Kim,P.L.Davidson,S.Khamis,M.Dou,et al.Holoportation:Virtual 3dteleportation in real-time.In Proc.UIST,pages 741–754.ACM,2016.
[5]A.Collet,M.Chuang,P.Sweeney,D.Gillett,D.Evseev,D.Calabrese,H.Hoppe,A.Kirk,and S.Sullivan.High-quality streamable free-viewpointvideo.ACM Transactions on Graphics(TOG),34(4):69,2015.
[6]V.Leroy,J.-S.Franco,and E.Boyer.Multi-View Dynamic ShapeRefinement Using Local Temporal Integration.In IEEE,International Conferenceon Computer Vision 2017,Venice,Italy,Oct.2017.
[7]D.Anguelov,P.Srinivasan,D.Koller,S.Thrun,J.Rodgers,andJ.Davis.SCAPE:shape completion and animation of people.In ACM Transactions onGraphics(TOG),volume 24,pages 408–416.ACM,2005.
[8]M.M.Loper,N.Mahmood,J.Romero,G.Pons-Moll,and M.J.Black.SMPL:Askinned multi-person linear model.ACM Trans.Graphics,34(6):248:1–248:16,Oct.2015.
[9]Q.Zhang,B.Fu,M.Ye,and R.Yang.Quality dynamic human body modelingusing a single low-cost depth camera.In 2014IEEE Conference on ComputerVision and Pattern Recognition,pages 676–683.IEEE,2014.
[10]F.Bogo,M.J.Black,M.Loper,and J.Romero.Detailed full-bodyreconstructions of moving people from monocular RGB-D sequences.InInternational Conference on Computer Vision(ICCV),pages 2300–2308,2015.
[11]N.Robertini,D.Casas,H.Rhodin,H.-P.Seidel,and C.Theobalt.Model-based outdoor performance capture.In Proceedings of the 2016InternationalConference on 3D Vision (3DV 2016),2016.
[12]H.Rhodin,N.Robertini,D.Casas,C.Richardt,H.-P.Seidel,andC.Theobalt.General automatic human shape and motion capture using volumetriccontour cues.In European Conference on Computer Vision,pages 509–526.Springer,2016.
[13]C.Zhang,S.Pujades,M.Black,and G.Pons-Moll.Detailed,accurate,humanshape estimation from clothed 3D scan sequences.In IEEE Conference onComputer Vision and Pattern Recognition(CVPR),2017.
[14]G.Pons-Moll,S.Pujades,S.Hu,and M.Black.ClothCap:Seamless 4Dclothing capture and retargeting.ACM Transactions on Graphics,(Proc.SIGGRAPH),36(4),2017.
[15]F.Bogo,A.Kanazawa,C.Lassner,P.Gehler,J.Romero,and M.J.Black.Keepit SMPL:Automatic estimation of 3D human pose and shape from a singleimage.In European Conference on Computer Vision.Springer InternationalPublishing,Oct.2016.
[16]C.Lassner,J.Romero,M.Kiefel,F.Bogo,M.J.Black,and P.V.Gehler.Unitethe people:Closing the loop between 3d and 2d human representations.In IEEEConf.on Computer Vision and Pattern Recognition(CVPR),2017.
[17]E.Dibra,H.Jain,C.Oztireli,R.Ziegler,and M.Gross.Human shape fromsilhouettes using generative hks descriptors and cross-modal neuralnetworks.In Proceedings of the IEEE Conference on Computer Vision and PatternRecognition,pages 4826–4836,2017.
[18]Gregory Rogez,Philippe Weinzaepfel,Cordelia Schmid.LCR-Net:Localization-Classification-Regression for Human Pose.CVPR 2017-IEEEConference on Computer Vision&Pattern Recognition,Jun 2017,Honolulu,UnitedStates.<hal-01505085>
[19]S.Zheng,et al.Conditional random fields as recurrent neuralnetworks.In Proceedings of the IEEE Conference on Computer Vision and PatternRecognition,2015,pp.1529–1537.
[20]J.Romero,D.Tzionas,and M.J.Black.Embodied hands:Modeling andcapturing hands and bodies together.ACM Transactions on Graphics,(Proc.SIGGRAPH Asia),36(6),Nov.2017.
[21]G.Pavlakos,L.Zhu,X.Zhou,and K.Daniilidis.Learning to estimate 3dhuman pose and shape from a single color image.In CVPR,2018.
[22]Pishchulin,L.,Wuhrer,S.,Helten,T.,Theobalt,C.,Schiele,B.:Buildingstatistical shape spaces for 3D human modeling.arXiv:1503.05860(2015)
[23]Y.Chen,Z.Liu,and Z.Zhang.Tensor-based human body modeling.InCVPR,pages 105–112,2013.
[24]S.Zuffi and M.J.Black.The stitched puppet:A graphical model of 3dhuman shape and pose.In 2015 IEEE Conference on Computer Vision and PatternRecognition(CVPR),pages 3537–3546.IEEE,2015.
[25]G.Pons-Moll,J.Romero,N.Mahmood,and M.J.Black.Dyna:a model ofdynamic human shape in motion.ACM Transactions on Graphics(TOG),34:120,2015.
[26]W.Xu,A.Chatterjee,M.H.Rhodin,D.Mehta,H.-P.Seidel,andC.Theobalt.Monoperfcap:Human performance capture from monocular video.arXivpreprint arXiv:1708.02136,2017.
[27]Q.-Y.Zhou and V.Koltun.Color map optimization for 3dreconstruction with consumer depth cameras.ACM Transactions on Graphics(TOG),33(4):155,2014.
[28]R.A.Newcombe,D.Fox,and S.M.Seitz.Dynamicfusion:Reconstruction andtracking of non-rigid scenes in real-time.In Proceedings of the IEEEconference on computer vision and pattern recognition,pages 343–352,2015.
[29]M.Innmann,M.M.Nieβner,C.Theobalt,andM.Stamminger.Volumedeform:Real-time volumetric nonrigid reconstruction.InProc.ECCV,2016.
[30]M.Slavcheva,M.Baust,D.Cremers,and S.Ilic.Killingfusion:Non-rigid3d reconstruction without correspondences.In IEEE Conference on ComputerVision and Pattern Recognition(CVPR),volume 3,page 7,2017.
[31]M.M.Nieβner,S.Izadi,C.Rehmann,C.Zach,M.Fisher,C.Wu,A.Fitzgibbon,C.Loop,C.Theobalt,et al.Real-time non-rigid reconstruction usingan rgb-d camera.ACM Transactions on Graphics(TOG),33(4):156,2014.
[32]T.Yu,K.Guo,F.Xu,Y.Dong,Z.Su,J.Zhao,J.Li,Q.Dai,andY.Liu.Bodyfusion:Real-time capture of human motion and surface geometry usinga single depth camera.In IEEE ICCV,2017.
[33]H.Zhu,Y.Liu,J.Fan,Q.Dai,and X.Cao.Video-based outdoor humanreconstruction.IEEE Transactions on Circuits and Systems for VideoTechnology,27(4):760–770,2017.
[34]T.Helten,A.Baak,G.Bharaj,M.Muller,H.-P.Seidel,andC.Theobalt.Personalization and evaluation of a real-time depth-based fullbody tracker.In Proc.3DV,pages 279–286,Washington,DC,USA,2013.
[35]R.Yu,C.Russell,N.D.F.Campbell,and L.Agapito.Direct,dense,anddeformable:Template-based non-rigid 3d reconstruction from rgb video.In TheIEEE International Conference on Computer Vision(ICCV),December 2015.
[36]L.Rogge,F.Klose,M.Stengel,M.Eisemann,and M.Magnor.Garmentreplacement in monocular video sequences.ACM Transactions on Graphics(TOG),34(1):6,2014.
[37]X.Chen,Y.Guo,B.Zhou,and Q.Zhao.Deformable model for estimatingclothed and naked human shapes from a single image.The Visual Computer,29(11):1187–1196,2013.
[38]Y.Tao,Z.Zheng,K.Guo,J.Zhao,D.Quionhai,H.Li,G.Pons-Moll,andY.Liu.Doublefusion:Real-time capture of human performance with inner bodyshape from a depth sensor.2018.
[39]Pishchulin,L.,Insafutdinov,E.,Tang,S.,Andres,B.,Andriluka,M.,Gehler,P.,Schiele,B.:DeepCut:Joint subset partition and labeling for multiperson pose estimation.In:IEEE Conference on Computer Vision and PatternRecognition,CVPR.pp.4929{4937(2016)
[40]H.Joo,T.Simon,and Y.Sheikh.Total capture:A 3d deformation modelfor tracking faces,hands,and bodies.In Proceedings of the IEEE Conference onComputer Vision and Pattern Recognition,pages 8320–8329,2018.
[41]CRD,GE."Statistical methods for tomographic imagereconstruction."(2000)。
Claims (8)
1.一种估计三维人体姿态及手部信息的方法,其特征在于,由计算机按如下步骤进行:
步骤1:通过景深彩色相机获取彩色图与深度图,并传递至计算机;所述景深彩色相机,可由RGB相机和深度相机/红外相机替代;
步骤2:由计算机进行混合关节预测;本步骤具体为:由景深彩色相机获取被采样人体的25个关节点,其中某些关节点严重偏离,结合LCR-Net深度学习的方法从彩色图估计的13个人体3D关节点进行混合预测,从而获得准确的关节位置:
对于不准确的关节点j,通过LCR-Net获得的关节点的关节角度来对其进行修正从而得到该关节点的准确位置j*:
其中jp为该关节点在关节树上的父关节点,是指向z轴方向的单位向量,R为罗德里格斯旋转矩阵,当j在LCR-Net所预测的骨骼中对应的关节点为j′,我们通过下式计算R:
其中E是三维单位矩阵,A为向量的反对称矩阵,j′p为jp在LCR-Net中对应的关节点,是j′在关节树上的父关节点
步骤3:由计算机拟合人体模型到关节点,并约束头部方向估计人体姿态和体型;
步骤4:由计算机使用点云数据对拟合结果进行细节优化;
步骤5:由计算机对拟合过程进行优化,并输出结果。
2.根据权利要求1所述的一种估计三维人体姿态及手部信息的方法,其特征在于,所述景深彩色相机为一台具有RGB相机、深度传感器和红外投影机功能的相机,进一步说,景深彩色相机为Kinect相机。
3.根据权利要求1所述的一种估计三维人体姿态及手部信息的方法,其特征在于,本发明的具体方法如下:
首先,通过景深彩色相机的单帧数据作为输入,该单帧数据包含深度图,彩色图,以及相机从深度图计算得到的人体骨骼与头部方向数据;
然后,使用混合预测的方法获取所需的3D骨骼关节点、3D人手关节点和人体3D点云数据,采用最小化SMPL关节和数据3D关节之间的误差的目标函数,将SMPL+H模型准确拟合到3D骨骼关节点;所述3D骨骼关节点为混合预测后包括手指骨骼关节点在内的数据;
通过最小化SMPL关节和数据3D关节/3D骨骼关节点之间的误差的目标函数,首先对人体姿态进行拟合,得到一个与真实人体姿态体型基本一致的模型;然后,将模型的头部方向约束到人体的头部方向并使用3D点云数据通过一个约束人体点云与模型表面的能量函数来对拟合结果的细节准确性进行进一步优化,从而得到最终的准确的人体估计结果。
4.根据权利要求1所述的一种估计三维人体姿态及手部信息的方法,其特征在于,步骤1的具体方法如下:景深彩色相机为微软的第二代Kinect设备,该设备包含RGB相机/彩色相机、红外深度传感器。
5.根据权利要求1所述的一种估计三维人体姿态及手部信息的方法,其特征在于,步骤3的具体方法如下:
通过最小化SMPL标准模型与目标人体之间的偏差的目标函数来完成3D模型的拟合过程;
为了获得准确的拟合结果,我们将目标函数定义为五个能量项的集合,具体为:
E(β,θ,t)=Ejoints+Epose+Eshape+Esphere+Ehead (7)
其中,Ejoints是关节数据项,用来将模型拟合到实际人体;Epose和Eshape是姿态和形状先验项,用来防止拟合过程中模型异常的姿态和体形变化;Esphere是人体惩罚项,用来防止变化过程中人体身体之间发生异常重合渗透,例如模型的手臂变形到了人身体里;Ehead是头部数据项,用来将模型的头部方向拟合到人体实际头部方向;
数据项:在该项将SMPL+H模型的3D关节点与前述关节点进行匹配,从而将模型变换到人的真实姿态和体形;在经过混合关节预测后,同时包括人体骨骼和手骨骼的关节点;具体方法为:通过最小化所获得的关节点与SMPL+H模型关节点之间的欧式距离来进行匹配:
其中ωjoints是该项的权重,Ji和Jm,i分别是本方法获得的和SMPL+H模型的第i个关节点,dist()表示两个关节点的欧式距离的平方;ρ(x)=x2/(x2+σ2)是一个杰曼·麦克卢尔函数,根据其阈值σ减小过大的关节点距离带来的负面影响;
形状先验项:通过该项避免在模型拟合过程中模型的体形参数在能量最小化过程中大跨度的夸张的变化,那会造成体形不正常的变形或得到与实际不符的人体;将该项定义为当前迭代过程中的形状参数与上一次的差:
Eshape=ωshape|β-β′| (10)
ωshape是该项的权重,β为模型当前迭代过程的体形参数,β′上一次迭代结果的体形参数,其初始为0;
姿态先验项:该项用来对姿态进行约束,对不自然的姿态进行惩罚,我们通过马氏距离对模型当前的姿态参数进行约束:
其中ωpose为权重,θ为当前迭代过程模型的姿态参数,为SMPL+H模型本身所有姿态数据的平均值,/>是与θ相关的协方差矩阵的逆矩阵,表示姿态参数θ的每个元素的权重;
人体惩罚项:模型变换过程中身体的部分之间的重合渗透会使拟合的结果不正确,为了避免这种情况,需要计算身体之间的渗透并通过能量式最小化对其约束;为了使计算过程简易,使用几何体近似来模拟身体,在这里使用“胶囊”定义人体,再将胶囊表示为球心C(θ,β)为轴长中心、球径为胶囊半径三分之一的球体来计算人体间渗透,该定义方法由Bogo在论文[15]中进行了详细的阐述,θ和β同上几式,该项定义为高斯函数形式:
其中ωsphere是该项权重,I(i)是与第i个球体相关的球体的索引集合;
头部数据项:通过数据项的拟合模型并不能获得正确的头部方向,因为头部关节点属于骨骼的终端关节点,它的匹配无法约束头部的姿态;因此通过计算SMPL+H模型的当前迭代过程中的头部方向角度,并最小化其与相机得到的头部方向数据的偏差来得到准确的头部方向;
为此,在SMPL+H模型的头部选取5个点,这5个点形成类似三维空间坐标系的三个向量,令nx=n15,ny=n24,nz=n13分别表示这三个向量,它们能准确表示头部的当前方向;将头部方向数据表示为Hd,计算得到的模型的头部方向表示为Hm,则该项定义为:
ωhead为对应权重,{x,y,z}表示坐标轴,和/>表示头部对应于三个坐标轴的旋转角度,/>由下式进行计算:
其中f()将向量投影到与k轴垂直的坐标平面,nk表示模型头部当前迭代的头部方向,n′k表示nk的初始值。
6.根据权利要求1所述的一种估计三维人体姿态及手部信息的方法,其特征在于,步骤4的具体方法如下:使用获取的3D人体点云对该模型进行约束;准确表示人体的3D模型应当在与人体相对应的表面保持其很大的吻合程度,人体3D点云提供比图像轮廓更多的信息;我们通过ICP的思想去找对应点,然后惩罚模型与3D表面之间的对应偏差,定义目标函数为:
其中(vm,vc)是一组对应的点对,vm是模型上的点,vc是点云上vm的最近点,是点云上vc点处的法向量,通过将该点与其最近的两个点v′、v″组成的两个向量叉乘即可得到:
7.根据权利要求1所述的一种估计三维人体姿态及手部信息的方法,其特征在于,步骤5的具体方法如下:步骤3的求解过程为一个迭代求解的过程,每一次迭代都是使模型向更接近实际人体的方向变换一次,步骤5为对步骤3的每一次迭代过程中的权重参数进行设置的解释,通过权重的变化求解出更准确的解;步骤5主要是详细解释怎么通过步骤3和步骤4的式子更好的计算出人体估计结果,属于代码参数设置部分。
8.根据权利要求1所述的一种估计三维人体姿态及手部信息的方法,其特征在于,步骤1中的人体姿态与体形估计是基于SMPL+H模型的方法,通过将SMPL+H模型拟合到数据从而准确的表示人体,而SMPL+H模型即是本方面所用到的静态人体模型,相对于其他模型其有能同时恢复人的手部姿态的优点且直接应用于现有大多数3D渲染引擎。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811557430.8A CN109636831B (zh) | 2018-12-19 | 2018-12-19 | 一种估计三维人体姿态及手部信息的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811557430.8A CN109636831B (zh) | 2018-12-19 | 2018-12-19 | 一种估计三维人体姿态及手部信息的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109636831A CN109636831A (zh) | 2019-04-16 |
CN109636831B true CN109636831B (zh) | 2023-08-04 |
Family
ID=66075592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811557430.8A Active CN109636831B (zh) | 2018-12-19 | 2018-12-19 | 一种估计三维人体姿态及手部信息的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109636831B (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110211222B (zh) * | 2019-05-07 | 2023-08-01 | 谷东科技有限公司 | 一种ar沉浸式旅游导览方法、装置、存储介质及终端设备 |
CN110286749B (zh) * | 2019-05-27 | 2022-11-15 | 华中师范大学 | 基于深度数据的手部姿势估计和追踪方法 |
CN110197156B (zh) * | 2019-05-30 | 2021-08-17 | 清华大学 | 基于深度学习的单图像的人手动作与形状重建方法及装置 |
CN110443884B (zh) * | 2019-07-17 | 2021-07-30 | 清华大学 | 手部运动重建方法和装置 |
CN110570455B (zh) * | 2019-07-22 | 2021-12-07 | 浙江工业大学 | 一种面向房间vr的全身三维姿态跟踪方法 |
EP4036863A4 (en) * | 2019-09-30 | 2023-02-08 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | METHOD AND SYSTEM FOR RECONSTRUCTION OF THE HUMAN BODY MODEL AND STORAGE MEDIUM |
CN110866952A (zh) * | 2019-10-17 | 2020-03-06 | 杭州电子科技大学 | 一种基于深度图编码的重定位与回环检测方法 |
CN113468923B (zh) * | 2020-03-31 | 2022-09-06 | 上海交通大学 | 基于细粒度多模态共同表征的人-物体交互行为检测方法 |
CN111582036B (zh) * | 2020-04-09 | 2023-03-07 | 天津大学 | 可穿戴设备下基于形状和姿态的跨视角人物识别方法 |
CN111598995B (zh) * | 2020-04-23 | 2023-04-28 | 浙江工商大学 | 一种基于原型分析的自监督多目三维人体姿态估计方法 |
CN111968165B (zh) * | 2020-08-19 | 2024-01-23 | 北京拙河科技有限公司 | 动态人体三维模型补全方法、装置、设备和介质 |
CN112085105B (zh) * | 2020-09-10 | 2024-07-12 | 上海创屹科技有限公司 | 一种基于人体形状与姿态估计的动作相似度评价方法 |
CN112233223A (zh) * | 2020-09-29 | 2021-01-15 | 深圳市易尚展示股份有限公司 | 基于三维点云的人体参数化模型自动变形方法和装置 |
US11488376B2 (en) * | 2021-02-15 | 2022-11-01 | Sony Group Corporation | Human skin detection based on human-body prior |
CN113034690A (zh) * | 2021-03-04 | 2021-06-25 | 广州虎牙科技有限公司 | 一种人体模型拟合方法、装置、及电子设备 |
CN113256789B (zh) * | 2021-05-13 | 2024-07-05 | 中国民航大学 | 一种三维实时人体姿态重建方法 |
CN113205605B (zh) * | 2021-05-29 | 2022-04-19 | 浙江大学 | 一种从深度图像中获取手部三维参数化模型的方法 |
CN113343902A (zh) * | 2021-06-28 | 2021-09-03 | 广州虎牙科技有限公司 | 一种手掌的深度检测方法、装置、计算机设备和存储介质 |
CN113610889B (zh) * | 2021-06-30 | 2024-01-16 | 奥比中光科技集团股份有限公司 | 一种人体三维模型获取方法、装置、智能终端及存储介质 |
CN113627261B (zh) * | 2021-07-12 | 2024-10-11 | 深圳市瑞立视多媒体科技有限公司 | 一种恢复头部刚体正确位姿的方法及其装置、设备、存储介质 |
CN113870227B (zh) * | 2021-09-29 | 2022-12-23 | 赛诺威盛科技(北京)股份有限公司 | 基于压力分布的医学定位方法、装置、电子设备及存储介质 |
CN113902846B (zh) * | 2021-10-11 | 2024-04-12 | 岱悟智能科技(上海)有限公司 | 一种基于单目深度相机和里程传感器的室内三维建模方法 |
CN115019220B (zh) * | 2022-04-19 | 2023-02-03 | 北京拙河科技有限公司 | 一种基于深度学习的姿态追踪方法及系统 |
CN115601505B (zh) * | 2022-11-07 | 2023-03-14 | 广州趣丸网络科技有限公司 | 一种人体三维姿态还原方法、装置、电子设备及存储介质 |
CN117557715B (zh) * | 2022-12-28 | 2024-09-27 | 南京英麒智能科技有限公司 | 基于单目自旋转视频的可驱动3d人体模型生成方法与系统 |
CN115862149B (zh) * | 2022-12-30 | 2024-03-22 | 广州紫为云科技有限公司 | 一种生成3d人体骨骼关键点数据集的方法及系统 |
CN117238026B (zh) * | 2023-07-10 | 2024-03-08 | 中国矿业大学 | 一种基于骨骼和图像特征的姿态重建交互行为理解方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2843621A1 (en) * | 2013-08-26 | 2015-03-04 | Max-Planck-Gesellschaft zur Förderung der Wissenschaften e.V. | Human pose calculation from optical flow data |
CN108629801A (zh) * | 2018-05-14 | 2018-10-09 | 华南理工大学 | 一种视频序列的三维人体模型姿态与形状重构方法 |
-
2018
- 2018-12-19 CN CN201811557430.8A patent/CN109636831B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2843621A1 (en) * | 2013-08-26 | 2015-03-04 | Max-Planck-Gesellschaft zur Förderung der Wissenschaften e.V. | Human pose calculation from optical flow data |
CN108629801A (zh) * | 2018-05-14 | 2018-10-09 | 华南理工大学 | 一种视频序列的三维人体模型姿态与形状重构方法 |
Non-Patent Citations (1)
Title |
---|
基于协同重排序的手势识别方法;张芷君等;《计算机辅助设计与图形学学报》;20181115(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109636831A (zh) | 2019-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109636831B (zh) | 一种估计三维人体姿态及手部信息的方法 | |
Habermann et al. | Deepcap: Monocular human performance capture using weak supervision | |
Xu et al. | Ghum & ghuml: Generative 3d human shape and articulated pose models | |
Yu et al. | Doublefusion: Real-time capture of human performances with inner body shapes from a single depth sensor | |
Huang et al. | Arch: Animatable reconstruction of clothed humans | |
Zuffi et al. | Lions and tigers and bears: Capturing non-rigid, 3d, articulated shape from images | |
Mueller et al. | Real-time hand tracking under occlusion from an egocentric rgb-d sensor | |
Huang et al. | Deep volumetric video from very sparse multi-view performance capture | |
Zheng et al. | Hybridfusion: Real-time performance capture using a single depth sensor and sparse imus | |
Yang et al. | S3: Neural shape, skeleton, and skinning fields for 3d human modeling | |
US10679046B1 (en) | Machine learning systems and methods of estimating body shape from images | |
Malik et al. | Deephps: End-to-end estimation of 3d hand pose and shape by learning from synthetic depth | |
Balan et al. | Detailed human shape and pose from images | |
Stoll et al. | Fast articulated motion tracking using a sums of gaussians body model | |
CN113706699B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN113421328B (zh) | 一种三维人体虚拟化重建方法及装置 | |
Li et al. | 3D human pose and shape estimation through collaborative learning and multi-view model-fitting | |
CN114450719A (zh) | 人体模型重建方法、重建系统及存储介质 | |
He et al. | Challencap: Monocular 3d capture of challenging human performances using multi-modal references | |
Leizea et al. | Real-time deformation, registration and tracking of solids based on physical simulation | |
US20230126829A1 (en) | Point-based modeling of human clothing | |
Li et al. | Animated 3D human avatars from a single image with GAN-based texture inference | |
Yu et al. | Towards robust and accurate single-view fast human motion capture | |
Habermann et al. | A deeper look into deepcap | |
Jinka et al. | Sharp: Shape-aware reconstruction of people in loose clothing |
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 |