CN115965996A - 三维人体关键点检测方法、装置、电子设备及存储介质 - Google Patents
三维人体关键点检测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115965996A CN115965996A CN202310029522.3A CN202310029522A CN115965996A CN 115965996 A CN115965996 A CN 115965996A CN 202310029522 A CN202310029522 A CN 202310029522A CN 115965996 A CN115965996 A CN 115965996A
- Authority
- CN
- China
- Prior art keywords
- human body
- key point
- human
- pixel coordinate
- sample
- 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
Images
Landscapes
- Image Analysis (AREA)
Abstract
本公开提供一种三维人体关键点检测方法、装置、电子设备及存储介质,其中,所述方法包括获取待检测人体图片;将所述待检测人体图片输入至检测模型,得到所述检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,所述检测模型至少包括已训练第一卷积核和已训练第二卷积核,所述已训练第一卷积核用于卷积生成所述人体关键点像素坐标热力图,所述已训练第二卷积核用于基于所述人体关键点像素坐标热力图卷积生成所述人体关键点深度坐标;基于所述人体关键点像素坐标热力图和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标。通过本公开能够快速且准确的检测三维人体关键点。
Description
技术领域
本公开涉及计算机视觉技术领域,尤其涉及一种三维人体关键点检测方法、装置、电子设备及存储介质。
背景技术
人体关键点检测是计算机视觉中一项经典的任务,一般指计算机能够检测到各个人体关键点,如头部各关键点、手部各关键点以及身体其他部位的各关键点。通过检测三维人体关键点可以为监控以及人机交互等场景提供技术基础。
因此,寻找一种快速且准确检测三维人体关键点的方法成为当前亟待解决的问题。
发明内容
本公开提供一种三维人体关键点检测方法、装置、电子设备及存储介质,实现了可以快速且准确的检测三维人体关键点。
本公开提供一种三维人体关键点检测方法,所述方法包括:获取待检测人体图片;将所述待检测人体图片输入至检测模型,得到所述检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,所述检测模型至少包括已训练第一卷积核和已训练第二卷积核,所述已训练第一卷积核用于卷积生成所述人体关键点像素坐标热力图,所述已训练第二卷积核用于基于所述人体关键点像素坐标热力图卷积生成所述人体关键点深度坐标;基于所述人体关键点像素坐标热力图和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标。
根据本公开提供的一种三维人体关键点检测方法,所述检测模型采用以下方式训练得到:获取训练样本和标签样本,其中,所述标签样本包括样本像素坐标标签和样本深度坐标标签;提取所述训练样本的目标特征,并基于第一卷积核和第二卷积核分别对所述训练样本的目标特征进行卷积,得到样本像素坐标热力图和样本深度坐标热力图;基于所述样本像素坐标热力图和所述样本像素坐标标签,得到第一损失值,其中,所述样本像素坐标标签为服从二维分布的第一热力图,所述第一热力图中包括多个标签候选关键点以及与所述标签候选关键点对应的像素坐标标签值;基于所述样本深度坐标热力图和所述样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值,其中,所述误差加权和中的权重根据所述标签候选关键点对应的像素坐标标签值确定,所述样本像素坐标标签与所述样本深度坐标标签相对应;基于所述第一损失值和所述第二损失值调整所述检测模型的参数,直至所述第一损失值和所述第二损失值小于设定阈值,并得到所述已训练第一卷积核和所述已训练第二卷积核。
根据本公开提供的一种三维人体关键点检测方法,所述样本像素坐标热力图包括多个样本候选关键点以及与所述样本候选关键点对应的样本像素坐标概率值;所述基于所述样本像素坐标热力图和所述样本像素坐标标签,得到第一损失值,具体包括:基于所述样本像素坐标热力图中的与所述样本候选关键点对应的样本像素坐标概率值,以及所述样本像素坐标标签中的与所述标签候选关键点对应的像素坐标标签值,得到所述第一损失值,其中,所述样本候选关键点与所述标签候选关键点相对应。
根据本公开提供的一种三维人体关键点检测方法,所述样本深度坐标热力图包括多个样本候选关键点以及与所述样本候选关键点对应的样本深度坐标概率值;所述样本深度坐标标签为服从二维分布的第二热力图,所述第二热力图中包括多个标签候选关键点以及与所述标签候选关键点对应的深度坐标标签值;所述基于所述样本深度坐标热力图和所述样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值,具体包括:基于所述样本深度坐标热力图中的与所述样本候选关键点对应的样本深度坐标概率值,以及所述样本深度坐标标签中的与所述标签候选关键点对应的深度坐标标签值的误差加权和,得到第二损失值,其中,所述样本候选关键点与所述标签候选关键点相对应。
根据本公开提供的一种三维人体关键点检测方法,所述已训练第一卷积核采用以下方式生成所述人体关键点像素坐标热力图:基于所述已训练第一卷积核对所述待检测人体图片的目标特征进行卷积,生成所述人体关键点像素坐标热力图,其中,所述待检测人体图片的目标特征通过所述检测模型提取得到。
根据本公开提供的一种三维人体关键点检测方法,所述人体关键点像素坐标热力图包括多个在不同像素坐标维度下的具有与所述像素坐标维度对应的人体关键点像素坐标概率值;所述已训练第二卷积核采用以下方式基于所述人体关键点像素坐标热力图卷积生成所述人体关键点深度坐标:在多个所述人体关键点像素坐标概率值中确定最大的人体关键点像素坐标概率值;基于所述已训练第二卷积核对所述待检测人体图片的目标特征中目标局部特征进行卷积,生成所述人体关键点深度坐标,其中,所述待检测人体图片的目标特征通过所述检测模型提取得到,所述目标局部特征和目标像素坐标维度相对应,所述目标像素坐标维度为与所述最大的人体关键点像素坐标概率值对应的像素坐标维度。
根据本公开提供的一种三维人体关键点检测方法,所述基于所述人体关键点像素坐标热力图和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标,具体包括:基于所述人体关键点像素坐标热力图,确定人体关键点像素坐标;基于所述人体关键点像素坐标和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标。
根据本公开提供的一种三维人体关键点检测方法,在所述得到所述待检测人体图片中的人体关键点三维坐标之后,所述方法还包括:基于多个所述人体关键点三维坐标,估计所述待检测人体图片中的三维人体姿态。
本公开还提供一种三维人体关键点检测装置,所述装置包括:获取模块,用于获取待检测人体图片;处理模块,用于将所述待检测人体图片输入至检测模型,得到所述检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,所述检测模型至少包括已训练第一卷积核和已训练第二卷积核,所述已训练第一卷积核用于卷积生成所述人体关键点像素坐标热力图,所述已训练第二卷积核用于基于所述人体关键点像素坐标热力图卷积生成所述人体关键点深度坐标;生成模块,用于基于所述人体关键点像素坐标热力图和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标。
本公开还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的三维人体关键点检测方法。
本公开还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的三维人体关键点检测方法。
本公开还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述的三维人体关键点检测方法。
本公开提供的三维人体关键点检测方法、装置、电子设备及存储介质,通过检测模型可以实现对待检测人体图片中的人体关键点像素坐标和深度坐标进行解耦处理,降低了关键点检测模型的参数量和计算量。并且借助已训练第一卷积核卷积生成的人体关键点像素坐标热力图,通过已训练第二卷积核卷积生成人体关键点深度坐标,提高了生成人体关键点深度坐标的准确性,实现了对人体关键点所在位置的更强约束,从而能够快速且准确的检测三维人体关键点。
附图说明
为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本公开提供的三维人体关键点检测方法的流程示意图之一;
图2是本公开提供的检测模型训练的流程示意图;
图3是本公开提供的检测模型训练的应用场景示意图;
图4是本公开提供的已训练第二卷积核基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标的流程示意图;
图5是本公开提供的检测模型推理过程的应用场景示意图;
图6是本公开提供的三维人体关键点检测方法的流程示意图之二;
图7是本公开提供的三维人体关键点检测装置的结构示意图;
图8是本公开提供的电子设备的结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合本公开中的附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
相关技术可知,采用立体热力图预测三维人体关键点的模型的预测精度虽然较高,但是往往模型参数较多,计算量较大,导致模型无法移植到移动终端,其应用受到很大限制。基于回归预测三维人体关键点的模型虽然参数较少,计算量较小,但是模型的预测精度往往较低。
本公开提供的三维人体关键点检测方法,基于二维热力图的分离式三维人体关键点预测模型(对应检测模型),得到关于待检测人体图片的人体关键点像素坐标热力图和人体关键点深度坐标,即首先通过卷积神经网络提取输入图像(对应待检测人体图片)的特征,然后通过1×1卷积分别在像素维度和深度维度上学习人体关键点的坐标分布,并将两个维度的坐标融合得到人体关键点的三维坐标。并且检测模型的训练和推理过程部分分离,即推理过程中可以直接计算人体关键点的深度坐标,而无需通过热力图进行解算,从而确保推理过程简单、计算量小,进而能够快速且准确的检测三维人体关键点。
为了进一步介绍本公开提供的三维人体关键点检测方法,下面将结合下述实施例进行说明。
图1是本公开提供的三维人体关键点检测方法的流程示意图之一。
在本公开一示例性实施例中,结合图1可知,三维人体关键点检测方法可以包括步骤110至步骤130,下面将分别介绍各步骤。
在步骤110中,获取待检测人体图片。
在一种实施例中,待检测人体图片可以是需要进行人体关键点检测的图片。其中,待检测人体图片可以是采集装置直接采集到的图片,还可以是采集装置采集到的视频片段,并在视频片段中截取的视频帧图片。
在步骤120中,将待检测人体图片输入至检测模型,得到检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,检测模型至少包括已训练第一卷积核和已训练第二卷积核,已训练第一卷积核用于卷积生成人体关键点像素坐标热力图,已训练第二卷积核用于基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标。
在一种实施例中,将待检测人体图片输入至训练好的检测模型后,可以得到人体关键点像素坐标热力图和人体关键点深度坐标。通过本实施例的检测模型,可以将人体关键点的像素坐标和深度坐标解耦,分别通过两个二维热力图学习人体关键点的像素坐标和深度坐标,从而无需学习人体关键点的三维立体热力图,大大减少了得到人体关键点三维坐标的计算量。
需要说明的是,在训练好的检测模型中,至少会包括已训练第一卷积核和已训练第二卷积核。其中,已训练第一卷积核用于卷积生成人体关键点像素坐标热力图。已训练第二卷积核用于基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标。在生成人体关键点深度坐标的过程中,已训练第二卷积核将结合生成的人体关键点像素坐标热力图来共同确定人体关键点深度坐标,即对人体关键点所在位置约束性更强,为更加快速、准确得确定人体关键点三维坐标打下基础。
在步骤130中,基于人体关键点像素坐标热力图和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标。
在一种实施例中,基于人体关键点像素坐标热力图和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标可以采用以下方式实现:
基于人体关键点像素坐标热力图,确定人体关键点像素坐标;基于人体关键点像素坐标和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标。
在一种实施例中,人体关键点像素坐标热力图可以包括多个在不同像素坐标维度下的具有与像素坐标维度对应的人体关键点像素坐标概率值。可以在多个人体关键点像素坐标概率值中确定最大的人体关键点像素坐标概率值,并将与最大的人体关键点像素坐标概率值对应的像素坐标作为人体关键点像素坐标。
进一步的,可以将人体关键点像素坐标和人体关键点深度坐标进行整合处理,得到待检测人体图片中的人体关键点三维坐标。即在应用过程中,可以将对应的人体关键点(例如头部关键点或手部关键点)的人体关键点像素坐标和人体关键点深度坐标进行整合处理,以得到关于该人体关键点(例如头部关键点或手部关键点)的人体关键点三维坐标。
需要说明的是,在待检测人体图片中,人体关键点可以包括一个或多个。对于任意一个人体关键点,均可以将该人体关键点的人体关键点像素坐标和人体关键点深度坐标进行整合处理,以得到关于该人体关键点的人体关键点三维坐标。
本公开提供的三维人体关键点检测方法,通过检测模型可以实现对待检测人体图片中的人体关键点像素坐标和深度坐标进行解耦处理,降低了关键点检测模型的参数量和计算量。并且借助已训练第一卷积核卷积生成的人体关键点像素坐标热力图,通过已训练第二卷积核卷积生成人体关键点深度坐标,提高了生成人体关键点深度坐标的准确性,实现了对人体关键点所在位置的更强约束,从而能够快速且准确的检测三维人体关键点。
为了进一步介绍本公开提供的三维人体关键点检测方法,下面将结合图2对检测模型的训练过程进行说明。
图2是本公开提供的检测模型训练的流程示意图。
在本公开一示例性实施例中,结合图2可知,检测模型训练的流程可以包括步骤210至步骤250,下面将分别介绍各步骤。
在步骤210中,获取训练样本和标签样本,其中,标签样本包括样本像素坐标标签和样本深度坐标标签。
在一种实施例中,标签样本可以包括样本像素坐标标签和样本深度坐标标签。可以理解的是,基于标签样本可以分别对训练过程中生成的样本像素坐标热力图和样本深度坐标热力图进行比对,以实现对检测模型的训练。
在一示例中,样本像素坐标标签可以是服从特定的二维分布的热力图,例如,可以是服从高斯分布的热力图,还可以是服从拉普拉斯分布的热力图(对应第一热力图)。在样本像素坐标标签中最佳的关键点所在的位置标签值最大,然后向四周逐步减小直至为0,即其他可能的位置的标签值距离最佳的关键点所在位置越远,其标签值越小,直至为0。需要说明的是,样本像素坐标标签中包括的与标签候选关键点对应的像素坐标标签值,其本质为一种概率值,即样本像素坐标为标签候选关键点所处位置的概率。其中,像素坐标标签值对应前文所述的标签值。
在又一示例中,样本深度坐标标签可以是服从二维均匀分布的热力图(对应第二热力图),即关键点所有可能的位置处标签值相等,为该关键点的归一化深度坐标,其他位置的值均为0。
在步骤220中,提取训练样本的目标特征,并基于第一卷积核和第二卷积核分别对训练样本的目标特征进行卷积,得到样本像素坐标热力图和样本深度坐标热力图。
需要说明的是,第一卷积核为对应已训练第一卷积核的初始化形式,第二卷积核为对应已训练第二卷积核的初始化形式。
结合图3对检测模型训练过程进行说明,可以将训练样本输入至检测模型中,并通过检测模型中的卷积神经网络提取训练样本的图像特征,得到训练样本的目标特征(对应图3中的目标特征)。在应用过程中,可以将训练样本的图片输入至检测模型,提取图片的高维特征,再经过上采样、残差连接等处理得到目标特征(c*h*w)。其中,c表示目标特征的通道数、h表示目标特征的高、w表示目标特征的宽。
进一步的,可以基于第一卷积核和第二卷积核分别对训练样本的目标特征进行卷积处理,得到样本像素坐标热力图和样本深度坐标热力图(对应图3中的输出)。对于第一卷积核和第二卷积核均为1*1的卷积核,人体关键点的数量n为1的情况下,此步骤中参数量为:1*1*c*n*2=2nc,其计算量为:1*1*c*h*w*n*2=2nchw。
在步骤230中,基于样本像素坐标热力图和样本像素坐标标签,得到第一损失值,其中,样本像素坐标标签为服从二维分布的第一热力图,第一热力图中包括多个标签候选关键点以及与标签候选关键点对应的像素坐标标签值。
标签候选关键点可以理解为可能是关键点的点。在一示例中,对于人体关键点为脸部的场景下,其中,鼻子、眼睛、嘴巴可以理解为是标签候选关键点,在应用过程中,由于鼻子位于脸部的最中央,可以认为鼻子是最佳的标签候选关键点,此时,可以将对应鼻子的关键点的像素标签值设置为最大,距离鼻子越远的其他标签候选关键点的像素坐标标签值依次减小,直至为0。
在又一种实施例中,样本像素坐标热力图可以包括多个样本候选关键点以及与样本候选关键点对应的样本像素坐标概率值。在生成的样本像素热力图中,可以显示多个可能的关键点(对应样本候选关键点),可以理解的是,样本像素坐标概率值最大的样本候选关键点可以认为是基于样本像素坐标热力图确定的最佳的样本候选关键点。
在一示例中,基于样本像素坐标热力图和样本像素坐标标签,得到第一损失值还可以采用以下方式实现:基于样本像素坐标热力图中的与样本候选关键点对应的样本像素坐标概率值,以及样本像素坐标标签中的与标签候选关键点对应的像素坐标标签值,得到第一损失值,其中,样本候选关键点与标签候选关键点相对应。
在步骤240中,基于样本深度坐标热力图和样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值,其中,误差加权和中的权重根据标签候选关键点对应的像素坐标标签值确定,样本像素坐标标签与样本深度坐标标签相对应。
继续以前文的人体关键点为脸部的实施例为例进行说明。由于样本深度坐标标签中各标签候选关键点与样本像素坐标标签中各标签候选关键点相对应,在计算第二损失值时,可以基于样本深度坐标热力图和样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值,其中,权重根据标签候选关键点对应的像素坐标标签值确定。可以理解的是,标签候选关键点对应的像素坐标标签值越大,其对应的权重就越大。在本实施例中,人体关键点的像素坐标分布的标签值(对应标签候选关键点对应的像素坐标标签值)作为计算深度坐标分布的误差的权重,由于在训练过程中,计算机认为人体关键点的深度坐标分布为均匀分布,即关键点所有可能的位置深度相同,但是计算损失时用像素坐标分布的热力图进行加权,因此可以加强对人体关键点所在位置的约束,为后续准确生成人体关键点深度坐标打下基础。
在又一种实施例中,样本深度坐标热力图可以包括多个样本候选关键点以及与样本候选关键点对应的样本深度坐标概率值;样本深度坐标标签为服从二维分布的第二热力图,第二热力图中可以包括多个标签候选关键点以及与标签候选关键点对应的深度坐标标签值。其中,第二热力图中的标签候选关键点与第一热力图中的标签候选关键点相同或相对应。
在一示例中,基于样本深度坐标热力图和样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值可以采用以下方式实现:基于样本深度坐标热力图中的与样本候选关键点对应的样本深度坐标概率值,以及样本深度坐标标签中的与标签候选关键点对应的深度坐标标签值的误差加权和,得到第二损失值,其中,样本候选关键点与标签候选关键点相对应。
在应用过程中,样本深度坐标热力图中包括多个样本候选关键点,样本深度坐标标签中包括多个标签候选关键点。可以分别基于各个样本候选关键点的样本深度坐标概率值与对应的标签候选关键点的深度坐标标签值的误差的加权和,得到第二损失值。其中,权重根据标签候选关键点对应的像素坐标标签值确定。其中,像素坐标标签值越大,对应的权重也越大。在本实施例中,计算第二损失值时用像素坐标分布的热力图进行加权,可以实现对人体关键点所在位置进行更强的约束。
在一种实施例中,图3中所示的坐标标签可以包括样本像素坐标标签和样本深度坐标标签。在一示例中,可以基于检测模型中的第一卷积核处理得到的样本像素坐标热力图与样本像素坐标标签,得到第一损失值。在又一示例中,还可以基于检测模型中的第二卷积核处理得到的样本深度坐标热力图与样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值。
在步骤250中,基于第一损失值和第二损失值调整检测模型的参数,直至第一损失值和第二损失值小于设定阈值,并得到已训练第一卷积核和已训练第二卷积核。
在应用过程中,通过第一损失值和第二损失值对检测模型进行不断训练更新,直至第一损失值和第二损失值收敛至最佳后停止(对应直至第一损失值和第二损失值小于设定阈值,其中,设定阈值可以根据实际情况进行调整),此时可以得到训练后的检测模型,以及训练好的第一卷积核(对应已训练第一卷积核)和训练好的第二卷积核(对应已训练第二卷积核)。
为了进一步介绍本公开提供的三维人体关键点检测方法,下面对基于已训练第一卷积核生成人体关键点像素坐标热力图的过程进行说明。
在本公开一示例性实施例中,已训练第一卷积核可以采用以下方式生成人体关键点像素坐标热力图:基于已训练第一卷积核对待检测人体图片的目标特征进行卷积,生成人体关键点像素坐标热力图,其中,待检测人体图片的目标特征通过检测模型提取得到。
在一种实施例中,结合图5进行说明,可以将待检测图片(对应图示中的输入)输入至训练好的检测模型,并基于训练好的检测模型中的卷积神经网络提取待检测人体图片的目标特征(对应图示中的目标特征)。进一步的,再基于训练好的1*1卷积核(对应已训练第一卷积核)对待检测人体图片的目标特征进行卷积,生成人体关键点像素坐标热力图(对应图示中的输出)。其中,生成的人体关键点像素坐标热力图可以包括多个在不同像素坐标维度下的具有与像素坐标维度对应的人体关键点像素坐标概率值。可以理解的是,对应最大的人体关键点像素坐标概率值的像素坐标,可以理解为是关于待检测图片的人体关键点像素坐标。
图4是本公开提供的已训练第二卷积核基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标的流程示意图。
下面将结合图4对基于已训练第二卷积核结合人体关键点像素坐标热力图卷积生成人体关键点深度坐标的过程进行说明。
在本公开一示例性实施例中,人体关键点像素坐标热力图可以包括多个在不同像素坐标维度下的具有与像素坐标维度对应的人体关键点像素坐标概率值。其中,人体关键点像素坐标热力图为基于已训练第一卷积核对待检测人体图片的目标特征进行卷积而生成的人体关键点像素坐标热力图。
在一示例中,结合图4可知,基于已训练第二卷积核结合人体关键点像素坐标热力图卷积生成人体关键点深度坐标可以包括步骤410至步骤420,下面将分别介绍各步骤。
在步骤410中,在多个人体关键点像素坐标概率值中确定最大的人体关键点像素坐标概率值。
在步骤420中,基于已训练第二卷积核对待检测人体图片的目标特征中目标局部特征进行卷积,生成人体关键点深度坐标,其中,待检测人体图片的目标特征通过检测模型提取得到,目标局部特征和目标像素坐标维度相对应,目标像素坐标维度为与最大的人体关键点像素坐标概率值对应的像素坐标维度。
继续结合图5进行说明,在提取出待检测图片的目标特征,以及基于已训练第一卷积核对待检测人体图片的目标特征进行卷积,生成人体关键点像素坐标热力图之后,可以确定出生成的人体关键点像素坐标热力图中最大的人体关键点像素坐标概率值所在的位置Pm(对应图示中的对应位置),其中,位置Pm可以理解为人体关键点像素坐标热力图中具有最大的人体关键点像素坐标概率值的像素坐标。
进一步的,再基于已训练第二卷积核对待检测人体图片的目标特征中目标局部特征进行卷积,生成人体关键点深度坐标。其中,目标局部特征和与最大的人体关键点像素坐标概率值对应的像素坐标维度相对应。在一示例中,可以用另一组训练好的1*1卷积核(对应已训练第二卷积核)对目标特征中与Pm对应的局部特征(对应目标局部特征)进行卷积,进而可以直接得到关键点的深度坐标。
在此步骤中的参数量仍然为2nc,而计算量进一步减小为1*1*c*h*w*n+1*1*c*n=nc*(hw+1)。在本实施例中,检测模型的训练过程和推理过程部分分离,在推理过程中可以直接计算出更加准确的人体关键点的深度坐标,而无需生成深度坐标分布热力图,从而减少计算量。
在应用过程中,可以基于生成的人体关键点像素坐标热力图中最大值所在的位置,得到人体关键点像素坐标。即在人体关键点像素坐标热力图中的多个人体关键点像素坐标概率值中确定最大的人体关键点像素坐标概率值,并将与最大的人体关键点像素坐标概率值对应的像素坐标作为人体关键点像素坐标。进一步的,再结合前文得到的人体关键点的深度坐标,可以得到人体关键点三维坐标。
图6是本公开提供的三维人体关键点检测方法的流程示意图之二。
在本公开一示例性实施例中,结合图6可知,三维人体关键点检测方法可以包括步骤610至步骤640,其中,步骤610至步骤630与步骤110至步骤130相同或相似,其具体实施方式和有益效果请参照前文描述,在本实施例中不再赘述,下面将介绍步骤640。
在步骤640中,基于多个人体关键点三维坐标,估计待检测人体图片中的三维人体姿态。
在应用过程中,基于前文描述方式可以得到待检测图片中的多个人体关键点的人体关键点三维坐标,进一步的,基于多个人体关键点三维坐标,可以估计待检测人体图片中的三维人体姿态。
根据上述描述可知,本公开提供的三维人体关键点检测方法,通过检测模型可以实现对待检测人体图片中的人体关键点像素坐标和深度坐标进行解耦处理,降低了关键点检测模型的参数量和计算量。并且借助已训练第一卷积核卷积生成的人体关键点像素坐标热力图,通过已训练第二卷积核卷积生成人体关键点深度坐标,提高了生成人体关键点深度坐标的准确性,实现了对人体关键点所在位置的更强约束,从而能够快速且准确的检测三维人体关键点。
基于相同的构思,本公开还提供一种三维人体关键点检测装置。
下面对本公开提供的三维人体关键点检测装置进行描述,下文描述的三维人体关键点检测装置与上文描述的三维人体关键点检测方法可相互对应参照。
图7是本公开提供的三维人体关键点检测装置的结构示意图。
在本公开一示例性实施例中,结合图7可知,三维人体关键点检测装置可以包括获取模块710、处理模块720和生成模块730,下面将分别介绍各模块。
获取模块710可以被配置为用于获取待检测人体图片。
处理模块720可以被配置为用于将待检测人体图片输入至检测模型,得到检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,检测模型至少包括已训练第一卷积核和已训练第二卷积核,已训练第一卷积核用于卷积生成人体关键点像素坐标热力图,已训练第二卷积核用于基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标。
生成模块730可以被配置为用于基于人体关键点像素坐标热力图和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标。
在本公开一示例性实施例中,处理模块720可以采用以下方式训练检测模型:获取训练样本和标签样本,其中,标签样本包括样本像素坐标标签和样本深度坐标标签;提取训练样本的目标特征,并基于第一卷积核和第二卷积核分别对训练样本的目标特征进行卷积,得到样本像素坐标热力图和样本深度坐标热力图;基于样本像素坐标热力图和样本像素坐标标签,得到第一损失值,其中,样本像素坐标标签为服从二维分布的第一热力图,第一热力图中包括多个标签候选关键点以及与标签候选关键点对应的像素坐标标签值;基于样本深度坐标热力图和样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值,其中,误差加权和中的权重根据标签候选关键点对应的像素坐标标签值确定,样本像素坐标标签与样本深度坐标标签相对应;基于第一损失值和第二损失值调整检测模型的参数,直至第一损失值和第二损失值小于设定阈值,并得到已训练第一卷积核和已训练第二卷积核。
在本公开一示例性实施例中,样本像素坐标热力图可以包括多个样本候选关键点以及与样本候选关键点对应的样本像素坐标概率值;处理模块720可以采用以下方式基于样本像素坐标热力图和样本像素坐标标签,得到第一损失值:基于样本像素坐标热力图中的与样本候选关键点对应的样本像素坐标概率值,以及样本像素坐标标签中的与标签候选关键点对应的像素坐标标签值,得到第一损失值,其中,样本候选关键点与标签候选关键点相对应。
在本公开一示例性实施例中,样本深度坐标热力图可以包括多个样本候选关键点以及与样本候选关键点对应的样本深度坐标概率值;样本深度坐标标签为服从二维分布的第二热力图,第二热力图中可以包括多个标签候选关键点以及与标签候选关键点对应的深度坐标标签值;处理模块720可以采用以下方式基于样本深度坐标热力图和样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值:基于样本深度坐标热力图中的与样本候选关键点对应的样本深度坐标概率值,以及样本深度坐标标签中的与标签候选关键点对应的深度坐标标签值的误差加权和,得到第二损失值,其中,样本候选关键点与标签候选关键点相对应。
在本公开一示例性实施例中,处理模块720可以采用以下方式基于已训练第一卷积核生成所述人体关键点像素坐标热力图:基于已训练第一卷积核对待检测人体图片的目标特征进行卷积,生成人体关键点像素坐标热力图,其中,待检测人体图片的目标特征通过检测模型提取得到。
在本公开一示例性实施例中,人体关键点像素坐标热力图可以包括多个在不同像素坐标维度下的具有与像素坐标维度对应的人体关键点像素坐标概率值;处理模块720可以采用以下方式通过已训练第二卷积核基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标:在多个人体关键点像素坐标概率值中确定最大的人体关键点像素坐标概率值;基于已训练第二卷积核对待检测人体图片的目标特征中目标局部特征进行卷积,生成人体关键点深度坐标,其中,待检测人体图片的目标特征通过检测模型提取得到,目标局部特征和目标像素坐标维度相对应,目标像素坐标维度为与最大的人体关键点像素坐标概率值对应的像素坐标维度。
在本公开一示例性实施例中,生成模块730可以采用以下方式基于人体关键点像素坐标热力图和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标:基于人体关键点像素坐标热力图,确定人体关键点像素坐标;基于人体关键点像素坐标和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标。
在本公开一示例性实施例中,生成模块730还可以被配置为用于基于多个人体关键点三维坐标,估计待检测人体图片中的三维人体姿态。
图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行三维人体关键点检测方法,该方法包括:获取待检测人体图片;将待检测人体图片输入至检测模型,得到检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,检测模型至少包括已训练第一卷积核和已训练第二卷积核,已训练第一卷积核用于卷积生成人体关键点像素坐标热力图,已训练第二卷积核用于基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标;基于人体关键点像素坐标热力图和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本公开还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的三维人体关键点检测方法,该方法包括:获取待检测人体图片;将待检测人体图片输入至检测模型,得到检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,检测模型至少包括已训练第一卷积核和已训练第二卷积核,已训练第一卷积核用于卷积生成人体关键点像素坐标热力图,已训练第二卷积核用于基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标;基于人体关键点像素坐标热力图和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标。
又一方面,本公开还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的三维人体关键点检测方法,该方法包括:获取待检测人体图片;将待检测人体图片输入至检测模型,得到检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,检测模型至少包括已训练第一卷积核和已训练第二卷积核,已训练第一卷积核用于卷积生成人体关键点像素坐标热力图,已训练第二卷积核用于基于人体关键点像素坐标热力图卷积生成人体关键点深度坐标;基于人体关键点像素坐标热力图和人体关键点深度坐标,得到待检测人体图片中的人体关键点三维坐标。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
进一步可以理解的是,本公开实施例中尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。
最后应说明的是:以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围。
Claims (12)
1.一种三维人体关键点检测方法,其特征在于,所述方法包括:
获取待检测人体图片;
将所述待检测人体图片输入至检测模型,得到所述检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,所述检测模型至少包括已训练第一卷积核和已训练第二卷积核,所述已训练第一卷积核用于卷积生成所述人体关键点像素坐标热力图,所述已训练第二卷积核用于基于所述人体关键点像素坐标热力图卷积生成所述人体关键点深度坐标;
基于所述人体关键点像素坐标热力图和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标。
2.根据权利要求1所述的三维人体关键点检测方法,其特征在于,所述检测模型采用以下方式训练得到:
获取训练样本和标签样本,其中,所述标签样本包括样本像素坐标标签和样本深度坐标标签;
提取所述训练样本的目标特征,并基于第一卷积核和第二卷积核分别对所述训练样本的目标特征进行卷积,得到样本像素坐标热力图和样本深度坐标热力图;
基于所述样本像素坐标热力图和所述样本像素坐标标签,得到第一损失值,其中,所述样本像素坐标标签为服从二维分布的第一热力图,所述第一热力图中包括多个标签候选关键点以及与所述标签候选关键点对应的像素坐标标签值;
基于所述样本深度坐标热力图和所述样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值,其中,所述误差加权和中的权重根据所述标签候选关键点对应的像素坐标标签值确定,所述样本像素坐标标签与所述样本深度坐标标签相对应;
基于所述第一损失值和所述第二损失值调整所述检测模型的参数,直至所述第一损失值和所述第二损失值小于设定阈值,并得到所述已训练第一卷积核和所述已训练第二卷积核。
3.根据权利要求2所述的三维人体关键点检测方法,其特征在于,所述样本像素坐标热力图包括多个样本候选关键点以及与所述样本候选关键点对应的样本像素坐标概率值;
所述基于所述样本像素坐标热力图和所述样本像素坐标标签,得到第一损失值,具体包括:
基于所述样本像素坐标热力图中的与所述样本候选关键点对应的样本像素坐标概率值,以及所述样本像素坐标标签中的与所述标签候选关键点对应的像素坐标标签值,得到所述第一损失值,其中,所述样本候选关键点与所述标签候选关键点相对应。
4.根据权利要求2所述的三维人体关键点检测方法,其特征在于,所述样本深度坐标热力图包括多个样本候选关键点以及与所述样本候选关键点对应的样本深度坐标概率值;所述样本深度坐标标签为服从二维分布的第二热力图,所述第二热力图中包括多个标签候选关键点以及与所述标签候选关键点对应的深度坐标标签值;
所述基于所述样本深度坐标热力图和所述样本深度坐标标签中各标签候选关键点的误差加权和,得到第二损失值,具体包括:
基于所述样本深度坐标热力图中的与所述样本候选关键点对应的样本深度坐标概率值,以及所述样本深度坐标标签中的与所述标签候选关键点对应的深度坐标标签值的误差加权和,得到第二损失值,其中,所述样本候选关键点与所述标签候选关键点相对应。
5.根据权利要求1所述的三维人体关键点检测方法,其特征在于,所述已训练第一卷积核采用以下方式生成所述人体关键点像素坐标热力图:
基于所述已训练第一卷积核对所述待检测人体图片的目标特征进行卷积,生成所述人体关键点像素坐标热力图,其中,所述待检测人体图片的目标特征通过所述检测模型提取得到。
6.根据权利要求1所述的三维人体关键点检测方法,其特征在于,所述人体关键点像素坐标热力图包括多个在不同像素坐标维度下的具有与所述像素坐标维度对应的人体关键点像素坐标概率值;
所述已训练第二卷积核采用以下方式基于所述人体关键点像素坐标热力图卷积生成所述人体关键点深度坐标:
在多个所述人体关键点像素坐标概率值中确定最大的人体关键点像素坐标概率值;
基于所述已训练第二卷积核对所述待检测人体图片的目标特征中目标局部特征进行卷积,生成所述人体关键点深度坐标,其中,所述待检测人体图片的目标特征通过所述检测模型提取得到,所述目标局部特征和目标像素坐标维度相对应,所述目标像素坐标维度为与所述最大的人体关键点像素坐标概率值对应的像素坐标维度。
7.根据权利要求1所述的三维人体关键点检测方法,其特征在于,所述基于所述人体关键点像素坐标热力图和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标,具体包括:
基于所述人体关键点像素坐标热力图,确定人体关键点像素坐标;
基于所述人体关键点像素坐标和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标。
8.根据权利要求1所述的三维人体关键点检测方法,其特征在于,在所述得到所述待检测人体图片中的人体关键点三维坐标之后,所述方法还包括:
基于多个所述人体关键点三维坐标,估计所述待检测人体图片中的三维人体姿态。
9.一种三维人体关键点检测装置,其特征在于,所述装置包括:
获取模块,用于获取待检测人体图片;
处理模块,用于将所述待检测人体图片输入至检测模型,得到所述检测模型输出的人体关键点像素坐标热力图和人体关键点深度坐标,其中,所述检测模型至少包括已训练第一卷积核和已训练第二卷积核,所述已训练第一卷积核用于卷积生成所述人体关键点像素坐标热力图,所述已训练第二卷积核用于基于所述人体关键点像素坐标热力图卷积生成所述人体关键点深度坐标;
生成模块,用于基于所述人体关键点像素坐标热力图和所述人体关键点深度坐标,得到所述待检测人体图片中的人体关键点三维坐标。
10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述的三维人体关键点检测方法。
11.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的三维人体关键点检测方法。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的三维人体关键点检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310029522.3A CN115965996A (zh) | 2023-01-09 | 2023-01-09 | 三维人体关键点检测方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310029522.3A CN115965996A (zh) | 2023-01-09 | 2023-01-09 | 三维人体关键点检测方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115965996A true CN115965996A (zh) | 2023-04-14 |
Family
ID=87360158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310029522.3A Pending CN115965996A (zh) | 2023-01-09 | 2023-01-09 | 三维人体关键点检测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115965996A (zh) |
-
2023
- 2023-01-09 CN CN202310029522.3A patent/CN115965996A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109063584B (zh) | 基于级联回归的面部特征点定位方法、装置、设备及介质 | |
CN112381061B (zh) | 一种面部表情识别方法及系统 | |
CN110569731A (zh) | 一种人脸识别方法、装置及电子设备 | |
CN112200056B (zh) | 人脸活体检测方法、装置、电子设备及存储介质 | |
CN115880558B (zh) | 农事行为检测方法、装置、电子设备及存储介质 | |
CN112200057A (zh) | 人脸活体检测方法、装置、电子设备及存储介质 | |
CN110135508B (zh) | 模型训练方法、装置、电子设备及计算机可读存储介质 | |
CN112488067B (zh) | 人脸姿态估计方法、装置、电子设备和存储介质 | |
CN111401192A (zh) | 基于人工智能的模型训练方法和相关装置 | |
EP3671635B1 (en) | Curvilinear object segmentation with noise priors | |
CN111382791B (zh) | 深度学习任务处理方法、图像识别任务处理方法和装置 | |
CN114118303B (zh) | 基于先验约束的人脸关键点检测方法及装置 | |
WO2015176502A1 (zh) | 一种图像特征的估计方法和设备 | |
CN111723688B (zh) | 人体动作识别结果的评价方法、装置和电子设备 | |
CN112233161B (zh) | 手部图像深度确定方法、装置、电子设备及存储介质 | |
CN112509154B (zh) | 图像生成模型的训练方法、图像生成方法及装置 | |
CN114119970B (zh) | 目标跟踪方法及装置 | |
CN111339973A (zh) | 一种对象识别方法、装置、设备及存储介质 | |
CN115965996A (zh) | 三维人体关键点检测方法、装置、电子设备及存储介质 | |
CN110751163A (zh) | 目标定位方法及其装置、计算机可读存储介质和电子设备 | |
CN115294351A (zh) | 图像特征提取方法、装置和电子设备 | |
CN114842506A (zh) | 一种人体姿态估计方法及系统 | |
CN114792436A (zh) | 人脸深度图像质量评价方法及系统、电子设备及存储介质 | |
CN114511591B (zh) | 轨迹跟踪方法、装置、电子设备及存储介质 | |
CN113642415B (zh) | 人脸特征表达方法及人脸识别方法 |
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 |