CN115862067A - 手部姿态识别方法、装置、设备及存储介质 - Google Patents

手部姿态识别方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115862067A
CN115862067A CN202211551474.6A CN202211551474A CN115862067A CN 115862067 A CN115862067 A CN 115862067A CN 202211551474 A CN202211551474 A CN 202211551474A CN 115862067 A CN115862067 A CN 115862067A
Authority
CN
China
Prior art keywords
hand image
key point
predicted
hand
training 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
Application number
CN202211551474.6A
Other languages
English (en)
Inventor
韦立庆
赵显�
张彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Goldway Intelligent Transportation System Co Ltd
Original Assignee
Shanghai Goldway Intelligent Transportation System Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Goldway Intelligent Transportation System Co Ltd filed Critical Shanghai Goldway Intelligent Transportation System Co Ltd
Priority to CN202211551474.6A priority Critical patent/CN115862067A/zh
Publication of CN115862067A publication Critical patent/CN115862067A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

本申请公开了一种手部姿态识别方法、装置、设备及存储介质,所述手部姿态识别方法包括:获取待识别手部图像;将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。本申请属于智能驾驶技术领域,基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签进行机器深度预测学习,去除了输入样本自遮挡点的问题,且考虑手部图像深度,提高了预测手部关键点的准确性。

Description

手部姿态识别方法、装置、设备及存储介质
技术领域
本申请涉及智能驾驶技术领域,尤其涉及一种手部姿态识别方法、装置、设备及存储介质。
背景技术
在智能驾驶领域,手势识别是近年来大热的人机交互方式,手势识别技术是指检测图片或视频中的人手,并预测检出人手的手型以及关键点位置的技术。当前许多车厂已经使用了动态手势识别技术,可通过不同的手势实现车内接听电话、调节音量、切歌、控制导航等功能的操作,支持包括主副驾驶、后排乘客交互的多种场景,以此可以减少驾驶员的分神行为。
目前常用的基于计算机视觉的手部姿态估计任务大多采用深度学习的方式,以单目摄像机获取的2D人手图像作为输入,学习图像特征以及从图像到手部姿态的映射关系。但是以2D人手图像作为输入进行深度学习,手部图像识别的信息不足,导致预测的手部关键点准确性差。
发明内容
本申请的主要目的在于提供一种手部姿态识别方法、装置、设备及存储介质,旨在解决现有技术中预测的手部关键点准确性差的技术问题。
为实现以上目的,本申请提供一种手部姿态识别方法,所述手部姿态识别方法包括:
获取待识别手部图像;
将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
在本申请的一种可能的实施方式中,所述获取待识别手部图像的步骤之前,所述方法包括:
采用多目摄像机采集手部图像训练样本,得到多目视角的所述手部图像训练样本;
确定所述手部图像训练样本的3D关键点坐标标签;
基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型。
在本申请的一种可能的实施方式中,所述基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型的步骤,包括:
将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标;
基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
判断所述第一误差值是否满足预设第一误差阈值范围指示的第一误差标准;
若所述误差结果未满足所述第一误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型。
在本申请的一种可能的实施方式中,所述基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型的步骤,包括:
将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,构成所述手部图像训练样本的预测3D关键点坐标;
基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值;
将所述第一误差值、所述第二误差值和所述第三误差值相加,得到第四误差值,并判断所述第四误差值是否满足预设第二误差阈值范围指示的第二误差标准;
若所述第四误差值未满足所述第二误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型。
在本申请的一种可能的实施方式中,所述基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值的步骤,包括:
获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据;
计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离;
基于所述第一置信度数据和所述空间距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间2D关键点坐标的第二误差值Loss1;
Figure BDA0003981315260000031
其中,
Figure BDA0003981315260000032
表示第C个视角预测的第j个关键点的第一置信度数据,/>
Figure BDA0003981315260000033
是相机参数转换矩阵,/>
Figure BDA0003981315260000034
表示预测2D关键点坐标的空间距离计算,J代表全部的关键点,
Figure BDA0003981315260000035
表示预测的第C个视角的第j个关键点的位置;
基于所述第二置信度数据和所述关联点距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间3D关键点坐标的第三误差值Loss2;
Figure BDA0003981315260000036
其中,ε表示有关联的指部关节点,
Figure BDA0003981315260000041
表示第j个关键点的第二置信度数据,/>
Figure BDA0003981315260000042
表示关键点j到j’的平均距离,/>
Figure BDA0003981315260000043
表示每一手部图像训练样本中关联点之间的距离计算。
在本申请的一种可能的实施方式中,所述确定所述手部图像训练样本的3D关键点坐标标签的步骤,包括:
获取所述多目摄像机的相机参数;
标定每一目视角的所述手部图像训练样本的2D关键点坐标;
对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签。
在本申请的一种可能的实施方式中,所述对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签的步骤,包括:
基于所述多目摄像机的相机参数和所述2D关键点坐标,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标;
将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准;
若所述重投影误差未满足所述第三误差标准,则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签。
本申请还提供一种手部姿态识别装置,所述手部姿态识别装置包括:
获取模块,用于获取待识别手部图像;
识别模块,用于将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
在本申请的一种可能的实施方式中,所述手部姿态识别装置还包括:
采集模块,用于采用多目摄像机采集手部图像训练样本,得到多目视角的所述手部图像训练样本;确定模块,用于确定所述手部图像训练样本的3D关键点坐标标签;训练模块,用于基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型;
和/或者所述训练模块,包括:第一输入模块,用于将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标;第一误差计算模块,用于基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;第一判断模块,用于判断所述第一误差值是否满足预设误第一差阈值范围指示的第一误差标准;第一迭代训练模块,用于若所述误差结果未满足所述第一误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型;
和/或者所述训练模块还包括:第二输入模块,用于将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,构成所述手部图像训练样本的预测3D关键点坐标;第一误差计算模块,用于基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;误差值确定模块,用于基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值;第四误差确定模块,用于将所述第一误差值、所述第二误差值和所述第三误差值相加,得到第四误差值,并判断所述第四误差值是否满足预设第二误差阈值范围指示的第二误差标准;第二迭代训练模块,用于若所述第四误差值未满足所述第二误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型;
和/或者所述误差值确定模块,包括:置信度数据获取模块,用于获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据;距离确定模块,用于计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离;第二误差值确定模块,用于基于所述第一置信度数据和所述空间距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间2D关键点坐标的第二误差值Loss1;
Figure BDA0003981315260000061
其中,
Figure BDA0003981315260000062
表示第C个视角预测的第j个关键点的第一置信度数据,/>
Figure BDA0003981315260000063
是相机参数转换矩阵,/>
Figure BDA0003981315260000064
表示预测2D关键点坐标的空间距离计算,J代表全部的关键点,
Figure BDA0003981315260000065
表示预测的第C个视角的第j个关键点的位置;
第三误差值确定模块,用于基于所述第二置信度数据和所述关联点距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间3D关键点坐标的第三误差值Loss2;
Figure BDA0003981315260000066
其中,ε表示有关联的指部关节点,
Figure BDA0003981315260000067
表示第j个关键点的第二置信度数据,/>
Figure BDA0003981315260000068
表示关键点j到j’的平均距离,/>
Figure BDA0003981315260000069
表示每一手部图像训练样本中关联点之间的距离计算;
和/或者所述确定模块,包括:参数获取模块,用于获取所述多目摄像机的相机参数;标定模块,用于标定每一目视角的所述手部图像训练样本的2D关键点坐标;计算和验证模块,用于对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签;所述计算和验证模块,包括:超定方程计算模块,用于基于所述多目摄像机的相机参数和所述2D关键点坐标,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标;重投影模块,用于将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准;循环验证模块,用于若所述重投影误差未满足所述第三误差标准,则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三误差标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签。
本申请还提供一种手部姿态识别设备,所述手部姿态识别设备包括:存储器、处理器以及存储在存储器上的用于实现所述手部姿态识别方法的程序,
所述存储器用于存储实现手部姿态识别方法的程序;
所述处理器用于执行实现所述手部姿态识别方法的程序,以实现所述手部姿态识别方法的步骤。
本申请还提供一种存储介质,所述存储介质上存储有实现手部姿态识别方法的程序,所述实现手部姿态识别方法的程序被处理器执行以实现所述手部姿态识别方法的步骤。
本申请提供的一种手部姿态识别方法、装置、设备及存储介质,与现有技术中以2D人手图像作为输入进行深度学习,手部图像识别的信息不足,导致预测的手部关键点准确性差相比,在本申请中,获取待识别手部图像;将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。即在本申请中,基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签进行机器深度预测学习,对输入的训练样本去除了自遮挡点的问题,且考虑手部图像深度,提高了预测的手部关键点的准确性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本申请手部姿态识别方法第一实施例的流程示意图;
图3为本申请手部姿态识别装置的模块示意图;
图4为本申请手部姿态识别方法中模型的训练过程示意图;
图5为本申请手部姿态识别方法第二实施例的流程示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供一种手部姿态识别方法,参照图2,在本申请手部姿态识别方法的一实施例中,所述方法包括:
步骤S100,获取待识别手部图像;
步骤S200,将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
本实施例旨在:提升驾驶场景下动态手势识别的识别准确性,进而,拓展驾驶场景下的手势识别的应用。
具体地,在本申请中,不再以2D人手图像作为机器深度学习的训练样本输入,而是以多目视角的手部图像训练样本作为机器深度预测学习的输入,多目视角的训练样本去除了手部图像的自遮挡点问题,且考虑手部图像深度,提高了预测的手部关键点的准确性。
具体地,在本申请中,采用多目摄像机获取多目视角的所述手部图像训练样本,根据多个视角的手部图像,确定手部图像训练样本的3D关键点坐标标签,以所述3D关键点坐标标签作为模型训练的训练对照结果,以此提升模型深度预测学习的准确性,进而提高了预测手部关键点的准确性。
作为一种示例,在本申请中,将所述手部图像训练样本输入至所述待训练模型,并进行迭代,输出所述手部图像训练样本的预测3D关键点坐标,并判断模型损失是否收敛,直至得到目标手部图像识别模型,以此得到具有满足精度条件的手部识别模型,进而提高了预测手部关键点的准确性。
作为一种示例,在本申请中,将所述手部图像训练样本输入至所述待训练模型,并进行迭代,输出所述手部图像训练样本的预测3D关键点坐标,并通过多目相机预测2D关键点坐标的一致性(即第二误差值)和预测3D关键点坐标的一致性(即第三误差值),对模型的训练进行监督,判断模型损失是否收敛,直至得到目标手部图像识别模型,以此得到具有满足精度条件的手部识别模型,进一步提高了预测手部关键点的准确性。
进一步地,基于每一目视角的所述手部图像训练样本的2D关键点坐标和相应相机的相机参数,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标,并对3D关键点坐标进行重投影验证,以此得到所述手部图像训练样本的3D关键点坐标标签的准确度高,进而提高机器深度预测学习的准确性。
在本实施例中,具体的应用场景可以是:
车厂已经使用了动态手势识别技术,可通过不同的手势实现车内接听电话、调节音量、切歌、控制导航等功能的操作,支持包括主副驾驶、后排乘客交互的多种场景。目前常用的基于计算机视觉的手部姿态估计任务大多采用深度学习的方式,以单目摄像机获取的2D人手图像作为输入,学习图像特征以及从图像到手部姿态的映射关系。但是以2D人手图像作为输入进行深度学习,人手图像存在自遮挡点的问题,并且未考虑到图像深度,导致预测的手部关键点准确性差。
具体步骤如下:
在所述步骤S100,获取待识别手部图像的步骤之前,所述方法包括以下步骤A100-A300:
步骤A100,采用多目摄像机采集手部图像训练样本,得到多目视角的所述手部图像训练样本;
作为一种示例,所述手部姿态识别方法应用于手部姿态识别装置。
作为一种示例,多目摄像机可以是双目摄像机,也可以是三目摄像机,还可以是设置有三个以上摄像机的多目摄像机。
作为一种示例,所述手部图像训练样本是用于模型训练的RGB图像样本,所述手部图像训练样本可以是只包含人手信息的图像,也可以是包含人手信息和其他人像信息的图像;所述手部图像训练样本可以是图片,也可以是视频图像。
作为一种示例,所述多目摄像机设置有至少两个摄像机,装置采用所述多目摄像机采集手部图像训练样本,每一目摄像机所采集的手部图像训练样本的视角不同,即得到多目视角的所述手部图像训练样本,例如,装置采用双目摄像机采集用户A包含手部信息的图像,得到左侧俯视视角的用户A图像和右侧俯视视角的用户A图像。
步骤A200,确定所述手部图像训练样本的3D关键点坐标标签;
作为一种示例,3D关键点坐标为手部图像训练样本的手部关键点在三维坐标系上的坐标,包含二维平面坐标(2D关键点坐标)和一维方向向量(深度值),所述手部关键点是预设的22个手部关节或骨骼的点,三维坐标系是以手部图像的手腕点作为坐标系初始点。
作为一种示例,装置根据所述手部图像训练样本,确定相应所述手部图像训练样本的3D关键点坐标,并将所述3D关键点坐标作为标签标记至相应的手部图像训练样本;
作为一种示例,装置确定相应所述手部图像训练样本的3D关键点坐标标签,可以通过以下方式:
方式一:标定每一目视角的所述手部图像训练样本的2D关键点坐标;对多目相机进行标定,得到相应数量相机的内外参数、单应矩阵;根据标定结果对原始图像校正;对校正后相应数量的图像进行像素点匹配;根据匹配结果计算每个像素的深度,从而获得深度图;根据2D关键点坐标和深度,构成相应的3D关键点坐标;
方式二:标定每一目视角的所述手部图像训练样本的2D关键点坐标;对多目相机进行标定,得到相应数量相机的内外参数、单应矩阵;根据2D关键点坐标和相应数量相机的内外参数,采用超定方程,计算得到所述手部图像训练样本的3D关键点坐标。
步骤A300,基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型。
作为一种示例,预设的待训练模型是具有提取所述手部图像训练样本的2D关键点坐标和深度值的深度网络模型,可以是深度网络2.5D-Net,装置基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型。
具体地,所述步骤A300,包括以下步骤A310-A340:
步骤A310,将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标;
作为一种示例,参照图4,为模型训练的过程,其中,所述待训练模型是具有提取所述手部图像训练样本的2D关键点坐标和深度值的深度网络模型,首先输入多目不同视角的手部RGB图像I1,I2,2D关键点坐标(uj,vj),深度值
Figure BDA0003981315260000111
其中,深度值表示关键点到手腕点的深度,具体地,深度值公式如下:
Figure BDA0003981315260000112
其中,zj表示手腕点深度,zroot表示关键点深度,j表示第j个关键点。
预测3D关键点坐标由2D关键点坐标和深度值构成,如下表示:
Figure BDA0003981315260000113
步骤A320,基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
作为一种示例,装置基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值L2.,均方误差loss的具体公式如下:
Figure BDA0003981315260000114
其中,n表示关键点总数,
Figure BDA0003981315260000115
即所述3D关键点坐标标签。
步骤A330,判断所述第一误差值是否满足预设第一误差阈值范围指示的第一误差标准;
作为一种示例,装置判断所述第一误差值是否满足预设第一误差阈值范围指示的第一误差标准,其中,误差阈值为预设的阈值范围,可以自行设定,即判断模型损失是否收敛。
步骤A340,若所述误差结果未满足所述第一误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型。
作为一种示例,若所述误差结果未满足所述第一误差标准,装置则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型,所述手部识别模型具备准确预测手部图像的手部关键点。
步骤S100,获取待识别手部图像;
作为一种示例,待识别手部图像是用户向装置下达手势指令时待识别的手部图像,所述待识别手部图像可以是只包含人手信息的图像,也可以是包含人手信息和其他人像信息的图像;所述待识别手部图像可以是图片,也可以是视频图像。
作为一种示例,装置获取待识别手部图像的方式可以是与装置通信连接的摄像机采集得到待识别手部图像,并发送至装置得到的;也可以是用户自行上传至装置得到的待识别手部图像。
步骤S200,将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
作为一种示例,装置将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于上述步骤A100-A300所训练得到的,本申请中,基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签进行机器深度预测学习,对输入的训练样本去除自遮挡点的问题,且考虑手部图像深度,提高了预测的手部关键点的准确性。
本申请提供的一种手部姿态识别方法,与现有技术中以2D人手图像作为输入进行深度学习,手部图像识别的信息不足,导致预测的手部关键点准确性差相比,在本申请中,获取待识别手部图像;将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。即在本申请中,基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签进行机器深度预测学习,对输入的训练样本去除自遮挡点的问题,且考虑手部图像深度,提高了预测的手部关键点的准确性。
基于上述的第一实施例中,本申请还提供另一实施例,具体地,所述步骤A200,包括以下步骤A210-A230:
步骤A210,获取所述多目摄像机的相机参数;
作为一种示例,所述相机参数包括相机内参和相机外参,所述相机内参是与相机自身特性相关的参数,比如相机的焦距、像素大小;所述相机外参是在世界坐标系中的参数,比如相机的位置、旋转方向等。分为旋转矩阵和平移矩阵,旋转矩阵和平移矩阵共同描述了将点从世界坐标系转换到摄像机坐标系。
作为一种示例,装置获取所述多目摄像机的相机参数的方式可以是对多目相机进行标定,得到相应数量相机的内外参数;也可以是数据库预先设置有相应的相机参数,在收到获取相机参数的指令后,接收数据库发送相机参数。
步骤A220,标定每一目视角的所述手部图像训练样本的2D关键点坐标;
作为一种示例,装置标定每一目视角的所述手部图像训练样本的2D关键点坐标,具体地,标定2D关键点坐标通常采用深度网络预测,可以是用CNN提取特征,然后使用全连接层直接数值回归关键点的坐标,例如,DeepPose人体姿态估计网络(Human PoseEstimation via Deep Neural Networks)或者MTCNN网络(Multi-task CascadedConvolutional Networks),也可以是热力图预测的方法,提取一个通道中像素响应大于一定阈值的且响应最大的点,该点的坐标就是该类别关键点的坐标,例如OpenPose人体姿态识别算法或者HRNet(High-Resolution Net)2D人体姿态估计网络。
步骤A230,对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签。
作为一种示例,装置对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签,具体地,计算方式可以将所述相机参数和所述2D关键点坐标代入超定方程,得到3D关键点坐标,并验证所述3D关键点坐标是否准确,将验证完成,即准确的3D关键点坐标作为所述手部图像训练样本的3D关键点坐标标签。
具体地,所述步骤A230,包括以下步骤A231-A233:
步骤A231,基于所述多目摄像机的相机参数和所述2D关键点坐标,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标;
作为一种示例,参照图5,装置将所述相机参数和所述2D关键点坐标代入超定方程,得到所述手部图像训练样本的待验证3D关键点坐标,具体公式如下:
Figure BDA0003981315260000141
Figure BDA0003981315260000142
Figure BDA0003981315260000143
Figure BDA0003981315260000144
其中,
Figure BDA0003981315260000145
表示相机内参,第i个相机的第j行;xi、yi表示第i个相机中的2D关键点坐标;X表示需要求解的3D关键点坐标,X=[X,Y,Z,1]T,即待验证3D关键点坐标;
以上示例中是采用双目摄像机,此超定方程组为4方程3未知数([X,Y,Z])。
步骤A232,将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准;
作为一种示例,装置将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准,具体地,重投影的过程如下所示:
Figure BDA0003981315260000151
其中,u、v是重投影到相机后的点坐标;
将重投影后的点坐标与2D关键点坐标进行误差计算,得到重投影误差。
步骤A233,若所述重投影误差未满足所述第三误差标准,则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签。
作为一种示例,若所述重投影误差未满足所述第三误差标准,装置则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签,即验证所述3D关键点坐标是否准确,将验证完成,即准确的3D关键点坐标作为所述手部图像训练样本的3D关键点坐标标签。以此提高手部图像训练样本的3D关键点坐标标签的准确性,也使得标签在作为误差対照组,对预测手部关键点的准确性的提升。
基于上述的第一实施例和第二实施例中,本申请还提供另一实施例,所述步骤A300,还包括以下步骤B100-B500:
步骤B100,将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,构成所述手部图像训练样本的预测3D关键点坐标;
作为一种示例,参照上述步骤A310,得到所述手部图像训练样本的预测3D关键点坐标,在此不再赘述。
步骤B200,基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
作为一种示例,参照上述步骤A320,得到第一误差值,在此不再赘述。
步骤B300,基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值;
作为一种示例,装置基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值,通过多目相机2D关键点的一致性(第二误差值)和骨骼点长度的一致性(第三误差值),对模型训练进行监督,以此提高模型损失收敛的准确性。
具体地,所述步骤B300,包括以下步骤B310-B340:
步骤B310,获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据;
作为一种示例,装置获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据,其中,所述置信度数据在所述手部图像训练样本输入至待训练模型时,也一同3D关键点坐标输出,所述是置信度指样本参数的结果的真实值在测量结果的周围的概率,在本实施例中,置信度区间可采用[0,1]。
步骤B320,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离;
作为一种示例,装置计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离,具体的2D关键点坐标的空间距离
Figure BDA0003981315260000161
其中,d(.)表示空间距离计算,/>
Figure BDA0003981315260000162
是相机参数转换矩阵,用于将C′视角的关键点预测值投影到C视角下;具体的预测3D关键点坐标的关联点距离/>
Figure BDA0003981315260000163
,其中,/>
Figure BDA0003981315260000164
和/>
Figure BDA0003981315260000165
指有关联的关键点,例如食指第一骨骼关节和第二骨骼关节是有关联的关键点,食指第一骨骼关节和中指第一骨骼关节是非关联的关键点。
步骤B330,基于所述第一置信度数据和所述空间距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间2D关键点坐标的第二误差值Loss1;
Figure BDA0003981315260000166
其中,
Figure BDA0003981315260000171
表示第C个视角预测的第j个关键点的第一置信度数据,/>
Figure BDA0003981315260000172
是相机参数转换矩阵,/>
Figure BDA0003981315260000173
表示预测2D关键点坐标的空间距离计算,J代表全部的关键点,
Figure BDA0003981315260000174
表示预测的第C个视角的第j个关键点的位置;
步骤B340,基于所述第二置信度数据和所述关联点距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间3D关键点坐标的第三误差值Loss2;
Figure BDA0003981315260000175
其中,ε表示有关联的指部关节点,
Figure BDA0003981315260000176
表示第j个关键点的第二置信度数据,/>
Figure BDA0003981315260000177
表示关键点j到j’的平均距离,/>
Figure BDA0003981315260000178
表示每一手部图像训练样本中关联点之间的距离计算。
步骤B400,将所述第一误差值、所述第二误差值和所述第三误差值相加,得到第四误差值,并判断所述第四误差值是否满足预设第二误差阈值范围指示的第二误差标准;
作为一种示例,装置将所述第一误差值、所述第二误差值和所述第三误差值相加,即误差融合,得到第四误差值LMerge,具体如下:
LMerge=L2.+αLoss1+βLoss2
其中,α、β为预设系数。
步骤B500,若所述第四误差值未满足所述第二误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型。
作为一种示例,若所述第四误差值未满足所述第二误差标准,装置则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型。
本申请还提供一种手部姿态识别装置,参照图3,所述手部姿态识别装置包括:
获取模块10,用于获取待识别手部图像;
识别模块20,用于将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
在本申请的一种可能的实施方式中,所述手部姿态识别装置还包括:
采集模块,用于采用多目摄像机采集手部图像训练样本,得到多目视角的所述手部图像训练样本;
确定模块,用于确定所述手部图像训练样本的3D关键点坐标标签;
训练模块,用于基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型。
在本申请的一种可能的实施方式中,所述训练模块,包括:
第一输入模块,用于将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标;
第一误差计算模块,用于基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
第一判断模块,用于判断所述第一误差值是否满足预设误第一差阈值范围指示的第一误差标准;
第一迭代训练模块,用于若所述误差结果未满足所述第一误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型。
在本申请的一种可能的实施方式中,所述训练模块还包括:
第二输入模块,用于将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,构成所述手部图像训练样本的预测3D关键点坐标;
第一误差计算模块,用于基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
误差值确定模块,用于基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值;
第四误差确定模块,用于将所述第一误差值、所述第二误差值和所述第三误差值相加,得到第四误差值,并判断所述第四误差值是否满足预设第二误差阈值范围指示的第二误差标准;
第二迭代训练模块,用于若所述第四误差值未满足所述第二误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型。
在本申请的一种可能的实施方式中,所述误差值确定模块,包括:
置信度数据获取模块,用于获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据;
距离确定模块,用于计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离;
第二误差值确定模块,用于基于所述第一置信度数据和所述空间距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间2D关键点坐标的第二误差值Loss1;
Figure BDA0003981315260000191
其中,
Figure BDA0003981315260000192
表示第C个视角预测的第j个关键点的第一置信度数据,/>
Figure BDA0003981315260000193
是相机参数转换矩阵,/>
Figure BDA0003981315260000194
表示预测2D关键点坐标的空间距离计算,J代表全部的关键点,
Figure BDA0003981315260000195
表示预测的第C个视角的第j个关键点的位置;
第三误差值确定模块,用于基于所述第二置信度数据和所述关联点距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间3D关键点坐标的第三误差值Loss2;
Figure BDA0003981315260000201
其中,ε表示有关联的指部关节点,
Figure BDA0003981315260000202
表示第j个关键点的第二置信度数据,/>
Figure BDA0003981315260000203
表示关键点j到j’的平均距离,/>
Figure BDA0003981315260000204
表示每一手部图像训练样本中关联点之间的距离计算。
在本申请的一种可能的实施方式中,所述确定模块,包括:
参数获取模块,用于获取所述多目摄像机的相机参数;
标定模块,用于标定每一目视角的所述手部图像训练样本的2D关键点坐标;
计算和验证模块,用于对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签;
在本申请的一种可能的实施方式中,所述计算和验证模块,包括:
超定方程计算模块,用于基于所述多目摄像机的相机参数和所述2D关键点坐标,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标;
重投影模块,用于将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准;
循环验证模块,用于若所述重投影误差未满足所述第三误差标准,则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三误差标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签。
本申请手部姿态识别装置具体实施方式与上述手部姿态识别方法各实施例基本相同,在此不再赘述。
参照图1,图1是本申请实施例方案涉及的硬件运行环境的终端结构示意图。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
在本申请的一种可能的实施方式中,该手部姿态识别设备还可以包括矩形用户接口、网络接口、摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。矩形用户接口可以包括显示屏(Display)、输入子模块比如键盘(Keyboard),可选矩形用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
本领域技术人员可以理解,图1中示出的手部姿态识别设备结构并不构成对手部姿态识别设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块以及手部姿态识别程序。操作系统是管理和控制手部姿态识别设备硬件和软件资源的程序,支持手部姿态识别程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与手部姿态识别系统中其它硬件和软件之间通信。
在图1所示的手部姿态识别设备中,处理器1001用于执行存储器1005中存储的手部姿态识别程序,实现上述任一项所述的手部姿态识别方法的步骤。
本申请手部姿态识别设备具体实施方式与上述手部姿态识别方法各实施例基本相同,在此不再赘述。
本申请还提供一种存储介质,所述存储介质上存储有实现手部姿态识别方法的程序,所述实现手部姿态识别方法的程序被处理器执行以实现如下所述手部姿态识别方法:
获取待识别手部图像;
将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
在本申请的一种可能的实施方式中,所述获取待识别手部图像的步骤之前,所述方法包括:
采用多目摄像机采集手部图像训练样本,得到多目视角的所述手部图像训练样本;
确定所述手部图像训练样本的3D关键点坐标标签;
基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型。
在本申请的一种可能的实施方式中,所述基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型的步骤,包括:
将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标;
基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
判断所述第一误差值是否满足预设第一误差阈值范围指示的第一误差标准;
若所述误差结果未满足所述第一误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型。
在本申请的一种可能的实施方式中,所述基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型的步骤,包括:
将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,构成所述手部图像训练样本的预测3D关键点坐标;
基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值;
将所述第一误差值、所述第二误差值和所述第三误差值相加,得到第四误差值,并判断所述第四误差值是否满足预设第二误差阈值范围指示的第二误差标准;
若所述第四误差值未满足所述第二误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型。
在本申请的一种可能的实施方式中,所述基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值的步骤,包括:
获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据;
计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离;
基于所述第一置信度数据和所述空间距离,采用以下公式:
Figure BDA0003981315260000231
其中,
Figure BDA0003981315260000241
表示第C个视角预测的第j个关键点的第一置信度数据,/>
Figure BDA0003981315260000242
是相机参数转换矩阵,/>
Figure BDA0003981315260000243
表示预测2D关键点坐标的空间距离计算,J代表全部的关键点,
Figure BDA0003981315260000244
表示预测的第C个视角的第j个关键点的位置;
计算得到所述手部图像训练样本的多目视角之间2D关键点坐标的第二误差值Loss1;
基于所述第二置信度数据和所述关联点距离,采用以下公式:
Figure BDA0003981315260000245
其中,ε表示有关联的指部关节点,
Figure BDA0003981315260000246
表示第j个关键点的第二置信度数据,/>
Figure BDA0003981315260000247
表示关键点j到j’的平均距离,/>
Figure BDA0003981315260000248
表示每一手部图像训练样本中关联点之间的距离计算;
计算得到所述手部图像训练样本的多目视角之间3D关键点坐标的第三误差值Loss2。
在本申请的一种可能的实施方式中,所述确定所述手部图像训练样本的3D关键点坐标标签的步骤,包括:
获取所述多目摄像机的相机参数;
标定每一目视角的所述手部图像训练样本的2D关键点坐标;
对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签。
在本申请的一种可能的实施方式中,所述对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签的步骤,包括:
基于所述多目摄像机的相机参数和所述2D关键点坐标,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标;
将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准;
若所述重投影误差未满足所述第三误差标准,则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签。
本申请存储介质具体实施方式与上述手部姿态识别方法各实施例基本相同,在此不再赘述。
本申请还提供一种计算机程序产品、包括计算机程序,该计算机程序被处理器执行时实现上述的手部姿态识别方法的步骤。
本申请计算机程序产品的具体实施方式与上述手部姿态识别方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (11)

1.一种手部姿态识别方法,其特征在于,所述手部姿态识别方法包括:
获取待识别手部图像;
将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
2.如权利要求1所述的手部姿态识别方法,其特征在于,所述获取待识别手部图像的步骤之前,所述方法包括:
采用多目摄像机采集手部图像训练样本,得到多目视角的所述手部图像训练样本;
确定所述手部图像训练样本的3D关键点坐标标签;
基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型。
3.如权利要求2所述的手部姿态识别方法,其特征在于,所述基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型的步骤,包括:
将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标;
基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
判断所述第一误差值是否满足预设第一误差阈值范围指示的第一误差标准;
若所述误差结果未满足所述第一误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型。
4.如权利要求2所述的手部姿态识别方法,其特征在于,所述基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型的步骤,包括:
将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,构成所述手部图像训练样本的预测3D关键点坐标;
基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;
基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值;
将所述第一误差值、所述第二误差值和所述第三误差值相加,得到第四误差值,并判断所述第四误差值是否满足预设第二误差阈值范围指示的第二误差标准;
若所述第四误差值未满足所述第二误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型。
5.如权利要求4所述的手部姿态识别方法,其特征在于,所述基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值的步骤,包括:
获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据;
计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离;
基于所述第一置信度数据和所述空间距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间2D关键点坐标的第二误差值Loss1;
Figure FDA0003981315250000031
其中,
Figure FDA0003981315250000032
表示第C个视角预测的第j个关键点的第一置信度数据,/>
Figure FDA0003981315250000033
是相机参数转换矩阵,/>
Figure FDA0003981315250000034
表示预测2D关键点坐标的空间距离计算,J代表全部的关键点,/>
Figure FDA0003981315250000035
表示预测的第C个视角的第j个关键点的位置;
基于所述第二置信度数据和所述关联点距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间3D关键点坐标的第三误差值Loss2;
Figure FDA0003981315250000036
其中,ε表示有关联的指部关节点,
Figure FDA0003981315250000037
表示第j个关键点的第二置信度数据,/>
Figure FDA0003981315250000039
表示关键点j到j’的平均距离,/>
Figure FDA00039813152500000310
表示每一手部图像训练样本中关联点之间的距离计算。
6.如权利要求2所述的手部姿态识别方法,其特征在于,所述确定所述手部图像训练样本的3D关键点坐标标签的步骤,包括:
获取所述多目摄像机的相机参数;
标定每一目视角的所述手部图像训练样本的2D关键点坐标;
对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签。
7.如权利要求6所述的手部姿态识别方法,其特征在于,所述对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签的步骤,包括:
基于所述多目摄像机的相机参数和所述2D关键点坐标,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标;
将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准;
若所述重投影误差未满足所述第三误差标准,则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签。
8.一种手部姿态识别装置,其特征在于,所述手部姿态识别装置包括:
获取模块,用于获取待识别手部图像;
识别模块,用于将所述待识别手部图像输入至预设的手部图像识别模型,基于所述手部图像识别模型,对所述待识别手部图像进行关键点识别处理,得到所述待识别手部图像的3D关键点坐标,其中,所述手部图像识别模型是基于多目视角的手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练得到的。
9.如权利要求8所述的手部姿态识别装置,其特征在于,所述手部姿态识别装置还包括:
采集模块,用于采用多目摄像机采集手部图像训练样本,得到多目视角的所述手部图像训练样本;确定模块,用于确定所述手部图像训练样本的3D关键点坐标标签;训练模块,用于基于所述手部图像训练样本和所述手部图像训练样本的3D关键点坐标标签,对预设的待训练模型进行迭代训练,得到具有满足精度条件的手部图像识别模型;
和/或者所述训练模块,包括:第一输入模块,用于将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标;第一误差计算模块,用于基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;第一判断模块,用于判断所述第一误差值是否满足预设误第一差阈值范围指示的第一误差标准;第一迭代训练模块,用于若所述误差结果未满足所述第一误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第一误差值满足所述第一误差标准后停止训练,得到具有满足精度条件的手部识别模型;
和/或者所述训练模块还包括:第二输入模块,用于将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,构成所述手部图像训练样本的预测3D关键点坐标;第一误差计算模块,用于基于所述预测3D关键点坐标和所述3D关键点坐标标签,采用均方误差loss,计算得到第一误差值;误差值确定模块,用于基于所述预测2D关键点坐标和所述预测3D关键点坐标,计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的第二误差值和所述预测3D关键点坐标的第三误差值;第四误差确定模块,用于将所述第一误差值、所述第二误差值和所述第三误差值相加,得到第四误差值,并判断所述第四误差值是否满足预设第二误差阈值范围指示的第二误差标准;第二迭代训练模块,用于若所述第四误差值未满足所述第二误差标准,则返回将所述手部图像训练样本输入至所述待训练模型,得到每一目视角的所述手部图像训练样本的预测2D关键点坐标和所述预测2D关键点坐标相对于手腕点坐标的深度值,并基于所述预测2D关键点坐标和所述深度值,确定所述手部图像训练样本的预测3D关键点坐标的步骤,直到所述第四误差值满足所述第二误差标准后停止训练,得到具有满足精度条件的手部识别模型;
和/或者所述误差值确定模块,包括:置信度数据获取模块,用于获取每一目视角的所述手部图像训练样本的所述预测2D关键点坐标的第一置信度数据和所述3D关键点坐标的第二置信度数据;距离确定模块,用于计算多目视角的所述手部图像训练样本之间所述预测2D关键点坐标的空间距离和所述预测3D关键点坐标的关联点距离;第二误差值确定模块,用于基于所述第一置信度数据和所述空间距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间2D关键点坐标的第二误差值Loss1;
Figure FDA0003981315250000051
其中,
Figure FDA0003981315250000061
表示第C个视角预测的第j个关键点的第一置信度数据,/>
Figure FDA0003981315250000062
是相机参数转换矩阵,/>
Figure FDA0003981315250000063
表示预测2D关键点坐标的空间距离计算,J代表全部的关键点,/>
Figure FDA0003981315250000064
表示预测的第C个视角的第j个关键点的位置;
第三误差值确定模块,用于基于所述第二置信度数据和所述关联点距离,采用以下公式,计算得到所述手部图像训练样本的多目视角之间3D关键点坐标的第三误差值Loss2;
Figure FDA0003981315250000065
其中,ε表示有关联的指部关节点,
Figure FDA0003981315250000066
表示第j个关键点的第二置信度数据,/>
Figure FDA0003981315250000067
表示关键点j到j’的平均距离,/>
Figure FDA0003981315250000068
表示每一手部图像训练样本中关联点之间的距离计算;
和/或者所述确定模块,包括:参数获取模块,用于获取所述多目摄像机的相机参数;标定模块,用于标定每一目视角的所述手部图像训练样本的2D关键点坐标;计算和验证模块,用于对所述相机参数和所述2D关键点坐标进行计算和验证处理,得到所述手部图像训练样本的3D关键点坐标标签;所述计算和验证模块,包括:超定方程计算模块,用于基于所述多目摄像机的相机参数和所述2D关键点坐标,采用超定方程,计算得到所述手部图像训练样本的待验证3D关键点坐标;重投影模块,用于将所述待验证3D关键点坐标重投影至每一目视角的所述手部图像训练样本,得到重投影误差,并判断所述重投影误差是否满足预设的重投影误差阈值范围指示的第三误差标准;循环验证模块,用于若所述重投影误差未满足所述第三误差标准,则返回所述标定每一目视角的所述手部图像训练样本的2D关键点坐标的步骤,直到所述重投影误差满足所述第三误差标准后停止验证,得到所述手部图像训练样本的3D关键点坐标标签。
10.一种手部姿态识别设备,其特征在于,所述手部姿态识别设备包括:存储器、处理器以及存储在存储器上的用于实现所述手部姿态识别方法的程序,
所述存储器用于存储实现手部姿态识别方法的程序;
所述处理器用于执行实现所述手部姿态识别方法的程序,以实现如权利要求1至7中任一项所述手部姿态识别方法的步骤。
11.一种存储介质,其特征在于,所述存储介质上存储有实现手部姿态识别方法的程序,所述实现手部姿态识别方法的程序被处理器执行以实现如权利要求1至7中任一项所述手部姿态识别方法的步骤。
CN202211551474.6A 2022-12-05 2022-12-05 手部姿态识别方法、装置、设备及存储介质 Pending CN115862067A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211551474.6A CN115862067A (zh) 2022-12-05 2022-12-05 手部姿态识别方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211551474.6A CN115862067A (zh) 2022-12-05 2022-12-05 手部姿态识别方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115862067A true CN115862067A (zh) 2023-03-28

Family

ID=85670073

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211551474.6A Pending CN115862067A (zh) 2022-12-05 2022-12-05 手部姿态识别方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115862067A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117420917A (zh) * 2023-12-19 2024-01-19 烟台大学 基于手部骨架的虚拟现实控制方法、系统、设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117420917A (zh) * 2023-12-19 2024-01-19 烟台大学 基于手部骨架的虚拟现实控制方法、系统、设备及介质
CN117420917B (zh) * 2023-12-19 2024-03-08 烟台大学 基于手部骨架的虚拟现实控制方法、系统、设备及介质

Similar Documents

Publication Publication Date Title
US11422261B2 (en) Robot relocalization method and apparatus and robot using the same
CN108447097A (zh) 深度相机标定方法、装置、电子设备及存储介质
US20110010009A1 (en) Action teaching system and action teaching method
US20040062419A1 (en) Landmark, apparatus, and method for effectively determining position of autonomous vehicles
CN111735439B (zh) 地图构建方法、装置和计算机可读存储介质
CN110189373A (zh) 一种基于视觉语义信息的快速重定位方法及装置
CN108549878B (zh) 基于深度信息的手部检测方法及系统
CN115810133B (zh) 基于图像处理和点云处理的焊接控制方法及相关设备
US20180290300A1 (en) Information processing apparatus, information processing method, storage medium, system, and article manufacturing method
CN110986969A (zh) 地图融合方法及装置、设备、存储介质
US20080228433A1 (en) Method and Device for Determining the Relative Position of a First Object with Respect to a Second Object, Corresponding Computer Program and a Computer-Readable Storage Medium
US20240001558A1 (en) Robot calibration method, robot and computer-readable storage medium
CN115862067A (zh) 手部姿态识别方法、装置、设备及存储介质
CN112733641A (zh) 物体尺寸测量方法、装置、设备及存储介质
JP6922348B2 (ja) 情報処理装置、方法、及びプログラム
CN113052907A (zh) 一种动态环境移动机器人的定位方法
CN110007764B (zh) 一种手势骨架识别方法、装置、系统及存储介质
CN113608170B (zh) 雷达标定方法、雷达、机器人、介质及计算机程序产品
CN112767479A (zh) 位置信息检测方法、装置、系统及计算机可读存储介质
CN116263622A (zh) 手势识别方法、装置、电子设备、介质及程序产品
CN116642490A (zh) 基于混合地图的视觉定位导航方法、机器人及存储介质
CN114972530A (zh) 一种基于虚拟场景对摄像机的标定方法、装置、设备及存储介质
CN112183271A (zh) 一种图像处理的方法及装置
CN114608521B (zh) 单目测距方法及装置、电子设备和存储介质
CN117406185B (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