CN118762075B - 基于6d旋转表示的端到端多人头部姿态估计方法及装置 - Google Patents
基于6d旋转表示的端到端多人头部姿态估计方法及装置 Download PDFInfo
- Publication number
- CN118762075B CN118762075B CN202411215165.0A CN202411215165A CN118762075B CN 118762075 B CN118762075 B CN 118762075B CN 202411215165 A CN202411215165 A CN 202411215165A CN 118762075 B CN118762075 B CN 118762075B
- Authority
- CN
- China
- Prior art keywords
- head
- detection
- person
- posture
- parameters
- 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/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本发明公开一种基于6D旋转表示的端到端多人头部姿态估计方法及装置,该方法步骤包括:获取图像训练集并输入至多人头部姿态检测模型中进行训练,训练过程中,先对输入图像进行特征提取,预测出多个头部对象的头部预测参数以及头部位姿6D旋转表示参数,将各头部对象的两个三维头部姿态旋转矩阵转换得到头部姿态估计矩阵;根据各头部对象的真实头部姿态矩阵与头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数,直至得到训练后的多人头部姿态检测模型;获取待测图像,将待测图像输入至训练后的多人头部姿态检测模型中,得到多个头部对象的检测结果。本发明能够提高端到端的多人头部姿态估计精度的同时保持检测实时性。
Description
技术领域
本发明涉及姿态估计技术领域,尤其涉及一种基于6D(Dimension,维度)旋转表示的端到端多人头部姿态估计方法及装置。
背景技术
头部姿态是判断人类行为很重要的一个因素,同时对于理解人类行为也具有很大的帮助。头部姿态估计即是指利用计算机技术通过对输入图像或者视频序列进行分析、预测,确定人的头部在三维空间中的位置以及姿态参量。头部姿态估计技术在人机交互、生物识别、虚拟现实以及疲劳检测等领域有着广泛的应用。
针对于头部姿态估计,目前大多数方案都是针对单人头部姿态估计,即仅能实现单个头部对象的姿态估计,针对于需要同时实现多人头部姿态估计的应用场景,直接使用该类单人头部姿态估计方法实现多人头部姿态估计,不仅检测效率低,而且实现复杂,不利于实际工程部署与应用。
虽然针对于多人头部姿态估计,有从业者提出使用目标检测算法,通过在目标检测算法的基础上增加欧拉角检测头分支进行头部姿态预测分支的参数优化,使得可以实现多人头部姿态识别模型训练与识别。但是使用欧拉角直接进行预测头部姿态,会存在随着连续旋转的增加累积误差不断增加、欧拉角表示的旋转不唯一导致欧拉角恢复旋转矩阵的过程复杂以及计算复杂度高等问题,导致姿态估计的准确性仍然不足。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种实现方法简单、估计精度高、实时性强的基于6D旋转表示的端到端多人头部姿态估计方法及装置,能够提高端到端的多人头部姿态估计精度的同时保持检测实时性。
为解决上述技术问题,本发明提出的技术方案为:
一种基于6D旋转表示的端到端多人头部姿态估计方法,步骤包括:
获取图像训练集并输入至基于神经网络的多人头部姿态检测模型中进行训练,所述图像训练集中图像包括多个头部对象;
训练过程中,由所述多人头部姿态检测模型先对输入图像进行特征提取,根据提取出的特征预测出多个头部对象的头部预测参数,所述头部预测参数包括头部预测分数以及头部检测框位置参数以及头部姿态估计参数,所述头部姿态估计参数包括基于头部姿态估计分支预测出的各个头部对象的头部位姿6D旋转表示参数;将各头部对象的 头部位姿6D旋转表示参数转换得到头部姿态估计矩阵;根据各头部对象的真实头部姿态矩阵与得到的所述头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数,直至所述相似度达到预设要求,得到训练后的多人头部姿态检测模型;
获取待测图像,将待测图像输入至训练后的多人头部姿态检测模型中,得到多个头部对象的检测结果。
进一步的,所述头部预测分数为当前预测为头部的概率值,所述头部检测框位置参数包括当前预测头部检测框的中心位置坐标以及当前预测头部检测框的宽与高。
进一步的,所述多人头部姿态检测模型的基础检测网络为YOLOV(You Only LookOnce)9,并在基于YOLOV9的检测网络中设置一个头部姿态估计6D解耦检测头,以用于预测出头部对象的头部位姿6D旋转表示参数。
进一步的,所述将各头部对象的头部位姿6D旋转表示参数转换得到头部姿态估计矩阵包括:将各头部对象的头部位姿6D旋转表示参数所对应的两个不相关三维向量u、v转换为三个相互正交的单位向量、、,由转换得到的各个单位向量、、构成所述头部姿态估计矩阵,其中:
其中,、、分别表示将6D旋转表示参数矩阵转化形成3×3旋转矩阵中三个三维单位向量,,,,~分别表示、、中各元素,分别为u在x、y、z轴的坐标值,分别为v在x、y、z轴的坐标值,表示头部姿态估计矩阵,表示与在三维空间垂直的向量。
进一步的,所述根据各头部对象的真实头部姿态矩阵与得到的所述头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数包括:
获取真实头部姿态向量构成的真实头部姿态矩阵:
其中,,,是三个相互正交的头部真实姿态单位向量;
使用综合损失函数衡量真实头部姿态矩阵与头部姿态估计矩阵之间的相似度,所述综合损失函数使用对应多人头部姿态检测模型中检测头部预测概率分支的损失函数、对应多人头部姿态检测模型中检测头部检测框分支的损失函数以及对应多人头部姿态检测模型中检测头部姿态估计参数分支的损失函数加权得到;
根据训练过程中所述综合损失函数的值调整多人头部姿态检测模型的参数;
使用调整后的多人头部姿态检测模型重新对输入图像进行检测得到新的头部姿态旋转矩阵,返回重新使用综合损失函数对模型进行训练,直至真实头部姿态矩阵与头部姿态估计矩阵之间的相似度达到预设条件。
进一步的,训练多人头部姿态检测模型的过程中使用的所述综合损失函数的计算表达式为:
其中,表示训练时多人头部姿态检测模型一次处理的数据样本的数量大小,、、分别表示、及三者的权重,表示检测头部检测框分支的损失函数,表示检测头部预测概率分支的损失函数,表示检测头部姿态估计参数分支的损失函数,表示头部姿态矩阵在第i维度上的损失权重,,,表示头部姿态估计矩阵中三个相互正交的头部姿态估计单位向量,表示第i个头部检测框预测的头部概率,表示第i个头部检测框的头部真实标签,表示第i个头部检测框与真实头部框的重合度,BCE表示二元交叉熵,N表示头部检测图片中总头部检测框数。
进一步的,检测头部检测框分支的损失函数的计算表达式为:
=+1
=-
=1-
其中,、分别表示、的权重,表示头部检测框中框中心点坐标及框长的损失值,为DFL损失函数,i表示头部检测图片中头部检测框的序号,表示的第j个分量,表示图片中第i个头部检测位置预测值,M表示的总维度,表示图片中第i个头部位置左边界标签值,,表示图片中第i个头部位置右边界标签值,表示图片中第i个头部位置左边界权重,表示图片中第i个头部位置右边界权重,表示第i个头部检测框对应的锚点位置,表示第i个头部检测框真实位置的起始点坐标,表示图片中第i个头部检测框参数。
进一步的,使用多人头部姿态检测模型得到多个头部对象的检测结果后还包括后数据处理步骤,步骤包括:
从当前获取的多个头部对象的检测结果中过滤掉置信度小于预设阈值的检测框,得到过滤处理后检测结果;
计算所述过滤处理后检测结果中所有检测框两两之间的接近度,并根据接近度将所有检测框进行归类,其中将接近度小于预设阈值的检测框归为一簇;
计算归类后每一簇的置信度并使用置信度对各两两检测框之间的接近度进行加权;
寻找每一簇中置信度加权后的接近度最小的检测框并对应作为每一簇的检测结果;
从当前检测结果中滤除接近度小于预设阈值的检测框,直至得到最终的头部对象检测结果。
一种基于6D旋转表示的端到端多人头部姿态估计装置,包括:
训练模块,用于获取图像训练集并输入至多人头部姿态检测模型中进行训练,所述图像训练集中图像包括多个头部对象;训练过程中,由所述多人头部姿态检测模型先对输入图像进行特征提取,根据提取出的特征预测出多个头部对象的头部预测参数,所述头部预测参数包括头部预测分数以及头部检测框位置参数以及头部姿态估计参数,所述头部姿态估计参数包括基于头部姿态估计分支预测出的各个头部对象的头部位姿6D旋转表示参数;将各头部对象的 头部位姿6D旋转表示参数转换得到头部姿态估计矩阵;根据各头部对象的真实头部姿态矩阵与得到的所述头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数,直至所述相似度达到预设要求,得到训练后的多人头部姿态检测模型;
实时估计模块,用于获取待测图像,将待测图像输入至训练后的多人头部姿态检测模型中,得到多个头部对象的检测结果。
一种计算机装置,包括处理器以及存储器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序以执行如上述方法。
与现有技术相比,本发明的优点在于:本发明通过基于神经网络构建端对端的多人头部姿态检测模型,同时在模型中设置基于6D旋转表示的头部姿态估计分支以用于估计头部位姿6D旋转表示参数,利用头部位姿6D旋转表示参数组成的三维头部姿态旋转矩阵转换得到头部姿态估计矩阵,模型的训练过程中根据真实头部姿态矩阵与该头部姿态估计矩阵之间的相似度不断优化调整模型参数可以快速得到精准的多人头部姿态检测模型,提高端到端多人头部姿态估计的精度,解决传统基于欧拉角实现多人头部姿态估计时会存在由于累积误差、表示不唯一、计算复杂性高等导致的姿态估计不准确问题,同时能够简化头部姿态识别算法模型训练识别流程,从而提高检测的实时性。
附图说明
图1是本实施例基于6D旋转表示的端到端多人头部姿态估计方法的实现流程示意图。
图2是本实施例基于YOLOV9实现多人头部姿态估计的原理示意图。
图3是本实施例基于不依赖于置信度与Iou的非极大抑制方法进行后数据处理的实现流程示意图。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
如图1所示,本实施例基于6D旋转表示的端到端多人头部姿态估计方法的步骤包括:
步骤S01.获取图像训练集并输入至基于神经网络的多人头部姿态检测模型中进行训练,图像训练集中图像包括多个头部对象;训练过程中,由多人头部姿态检测模型先对输入图像进行特征提取,根据提取出的特征预测出多个头部对象的头部预测参数,头部预测参数包括头部预测分数以及头部检测框位置参数以及头部姿态估计参数,头部姿态估计参数包括基于头部姿态估计分支预测出的各个头部对象的头部位姿6D旋转表示参数;将各头部对象的 头部位姿6D旋转表示参数转换得到头部姿态估计矩阵;根据各头部对象的真实头部姿态矩阵与得到的头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数,直至相似度达到预设要求,得到训练后的多人头部姿态检测模型。
步骤S02.获取待测图像,将待测图像输入至训练后的多人头部姿态检测模型中,得到多个头部对象的检测结果。
将头部位置检测与头部姿态估计嵌入到一个特征表示层有利于网络学习两者之间的内在联系,且利用六维度的旋转表示方法可实现连续旋转矩阵,利于神经网络学习。本实施例通过基于神经网络构建端对端的多人头部姿态检测模型,同时在模型中设置基于6D旋转表示的头部姿态估计分支以用于估计头部位姿6D旋转表示参数,利用头部位姿6D旋转表示参数组成的三维向量转换得到头部姿态估计矩阵而不是欧拉角,模型的训练过程中根据真实头部姿态矩阵与该头部姿态估计矩阵之间的相似度不断优化调整模型参数可以快速得到精准的多人头部姿态检测模型,提高端到端one-stage(单阶段)多人头部姿态估计的精度,解决传统基于欧拉角实现多人头部姿态估计时会存在旋转表示方法不连续导致姿态估计不准确问题,从而提高头部姿态精度的同时保持一定检测实时性,便于实际工程化部署与应用。
本实施例中,头部预测分数具体为当前预测为头部的概率值,头部检测框位置参数包括当前预测头部检测框的中心位置坐标以及当前预测头部检测框的宽与高等。可以理解的是,除上述参数以外,头部预测分数当然也可以使用其他的与预测分数相关的参数,头部检测框位置参数也可以使用其他的与检测框位置相关的参数,具体的参数类型可以根据实际需求选取配置。
例如,多人头部姿态检测模型可以采用密集检测网络直接预测一组头部对象,其中,表示头部预测分数及位置参数,表示头部位姿6D旋转表示参数;具体参数为,代表当前预测为头部的概率值,代表当前预测头部检测框的中心位置,代表当前预测头部检测框的宽与高;具体参数为,表示6D旋转表示参数,这6个值构成了两个三维向量:,,u、v分别也即三维头部姿态旋转矩阵,分别为三维头部姿态旋转矩阵u在x、y、z轴的坐标值,分别为三维头部姿态旋转矩阵v在x、y、z轴的坐标值,u、v为两个不平行的向量。通过将视为头部对象的一个属性,将其与进行联合形成头部预测对象,可以实现基于6D旋转表示的端到端的one-stage多人头部姿态高精度估计。
头部位姿6D旋转表示参数由两个不相关的向量组成,为了将各头部对象的头部位姿6D旋转表示参数转换为头部姿态估计矩阵,本实施例通过将头部位姿6D旋转表示参数先转换为三个相互正交的单位向量,由该三个相互正交的单位向量来转换得到头部姿态估计矩阵,使得可以基于头部位姿6D旋转表示参数可以转换得到头部姿态估计矩阵。
本实施例中,基于头部位姿6D旋转表示参数、三维头部姿态旋转矩阵u、v转换为头部姿态估计矩阵的具体计算表达式为:
(1)
(2)
(3)
(4)
(5)
其中,、、分别表示将6D旋转表示参数矩阵转化形成3×3旋转矩阵中三个三维单位向量,,,、、中各元素~对应为头部位姿6D旋转表示参数,表示与在三维空间垂直的向量。
如上述式(1)、(2)以及(4)所示,是将三维向量进行归一化处理得到的单位向量,是将三维向量w进行归一化处理得到的单位向量,是与、组成的空间平面垂直的单位向量。
多人头部姿态检测模型中利用检测网络检测出6D旋转表示参数后,按照上述公式(1)~(5)即可转化为3×3旋转矩阵,该3×3旋转矩阵即为头部姿态估计矩阵。由于头部姿态估计参数采用6D旋转表示方法,本实施例通过按照上述方式将6D旋转表示方法转换成3×3的连续旋转矩阵,可以进一步实现连续旋转矩阵的表征,从而使得在模型训练过程中可直接利用该头部姿态估计矩阵与真实头部姿态估计矩阵之间的距离进行模型参数的优化调整,利于提高模型训练的精度,从而提高头部姿态估计的精度。
本实施例中,多人头部姿态检测模型具体为基于YOLOV9的检测网络构建得到,并在基于YOLOV9的检测网络中设置一个头部姿态估计6D解耦检测头,以用于预测出头部对象的头部位姿6D旋转表示参数。
当输入数据在深度学习模型中经过逐层特征提取和空间变换时,大量信息将会丢失。在多人头部检测情景中,由于头部区域属于中小目标区域,头部区域经过深度学习模型逐层特征提取和空间变换后,会导致头部区域大量信息损失,这不利于头部区域检测及其姿态估计。YOLOv9 不仅继承了YOLO 系列算法的单阶段检测特性,且通过可编程梯度信息(PGI)和通用高效层聚合网络(GELAN)架构,还可以解决深度网络传输时数据信息丢失问题(即信息瓶颈和可逆函数),其中由PGI 可以为目标任务计算目标函数提供完整的输入信息,降低数据在深度网络传输时信息损失,从而获得可靠的梯度信息来更新网络权值,GELAN 网络作为兼顾轻量级、推理速度和准确性的通用高效层聚合网络,能够保证模型检测高精度与实时性。本实施例考虑多人头部姿态估计的上述问题以及YOLOv9的特性,通过采用YOLOv9作为多人头部姿态估计基础检测网络,以充分发挥YOLOv9的优势,大大减少多人头部姿态估计过程中头部区域的信息损失,同时确保检测的精度以及实时性。
具体地,YOLOv9中可编程梯度信息PGI包括三个部分:主分支、辅助可逆分支(Auxiliary Reversible Branch)及多级辅助信息(Multi-level AuxiliaryInformation)。PGI的推理过程只使用主分支,因此不需要任何额外的推理成本。辅助可逆分支旨在处理由神经网络加深将导致信息瓶颈而使得损失函数无法生成可靠的梯度的问题。多级辅助信息旨在处理由深度监督造成的误差累积问题,特别是对于具有多个预测分支的架构和轻量型模型。
GELAN网络则采用了CSPNet(Cross Stage Partial Network)的分割和重组的概念,并在每一部分引入了ELAN的层级卷积处理方式。GELAN不仅使用卷积层,还可以使用任何计算块使得网络更加灵活,能够根据不同的应用需求定制。GELAN的设计考虑到了轻量化、推理速度和精确度,以此来提高模型的整体性能。模块和分区的可选性进一步增加了网络的适应性和可定制性,使得GELAN的这种结构允许支持多种类型的计算块,从而可以更好地适应各种不同的计算需求和硬件约束,且还可以提供一个更加通用和高效的网络,可以适应从轻量级到复杂的深度学习任务,同时保持或增强计算效率和性能。
本实施例基于YOLOV9的多人头部姿态检测模型中具体设置6(可配置)个预测头,即有6个预测输出位置,分别对应输出6个头部姿态估计网格,每个网格输出包括头部预测概率、位置检测框及头部姿态估计参数共计11个通道,模型输入一张RGB图像后,先经过特征提取层,然后从6个预测头输出6个头部姿态估计网格,并产生密集头部对象o输出,即。
如图2所示,本实施例通过在YOLOv9框架的基础上,除头部预测概率检测头(用以预测分类概率Cls)以及头部位置检测框检测头(用于预测头部位置检测框Bbox)以外,新增一个头部姿态估计6D解耦检测头(Decoupled Head),用以预测头部位姿6D旋转表示参数,也即预测头部姿态(Head pose)。YOLOV9基于anchor-free(无锚点)的检测方式,采用解耦检测头分三路利用滑动卷积分别实现类别预测(Cls)、人头位置检测(Bbox)及头部姿态参数(Head pose)估计。通过采用解耦检测头的方法可加快模型收敛速度、提高模型检测精度。
本实施例中,根据各头部对象的真实头部姿态矩阵与得到的头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数包括:
步骤S101.获取真实头部姿态向量构成的真实头部姿态矩阵:
(6)
其中,,,是三个相互正交的头部真实姿态单位向量;
步骤S102.使用综合损失函数衡量真实头部姿态矩阵与头部姿态估计矩阵之间的相似度,综合损失函数使用对应多人头部姿态检测模型中检测头部预测概率分支的损失函数、对应多人头部姿态检测模型中检测头部检测框分支的损失函数以及对应多人头部姿态检测模型中检测头部姿态估计参数分支的损失函数加权得到;
步骤S103.根据训练过程中综合损失函数的值调整多人头部姿态检测模型的参数;
步骤S104.使用调整后的多人头部姿态检测模型重新对输入图像进行检测得到新的头部姿态旋转矩阵,返回步骤S102以重新使用综合损失函数对模型进行训练,直至真实头部姿态矩阵与头部姿态估计矩阵之间的相似度达到预设条件。
深度学习方法的关键是设计合适的目标函数,使得模型的预测结果能够最接近真实情况。本实施例中,由于多人头部姿态估计模型的检测头包括分别用于头部预测概率、头部检测框及头部姿态估计参数的检测头,因此模型训练过程中使用的损失函数为综合各个检测分支的损失函数所得到的综合损失函数,可以使得多人头部预测结果最接近真实情况,确保预测的精度。
在具体应用实施例中,训练多人头部姿态检测模型的过程中使用的综合损失函数的计算表达式为:
(7)
其中,表示训练时多人头部姿态检测模型一次处理的数据样本(batch size)的数量大小,、、分别表示、及三者的权重,表示检测头部检测框分支的损失函数,表示检测头部预测概率分支的损失函数,表示检测头部姿态估计参数分支的损失函数。
为了不破坏头部姿态3x3旋转矩阵的SO(3)流行几何结构,本实施例采用基于余弦相似度的方法表征头部姿态估计矩阵与真实头部姿态矩阵之间的相似度,以构建形成检测头部姿态估计参数分支的损失函数,详细步骤为:
由每个锚点处的检测头部姿态估计参数分支6D分支预测6个值,构成两个三维向量:,,然后按照上述式(1)~(6)转换为一头部姿态估计矩阵,该矩阵为正交矩阵;
而通过欧拉角得到的标签旋转矩阵也是一个正交矩阵:
其中,,,是三个相互正交的头部真实姿态单位向量。上述矩阵即为真实头部姿态矩阵。
在多人头部姿态模型中需要使用一个损失函数衡量头部姿态估计矩阵与真实头部姿态矩阵之间的距离,以使得模型能够通过不断进行参数优化并预测出头部姿态旋转矩阵。为了计算头部姿态估计矩阵与真实头部姿态矩阵之间的相似度/距离,本实施例基于余弦相似度的方法采用如下方式构建形成检测头部姿态估计参数分支的损失函数:
(8)
其中,表示头部姿态矩阵第i维度上损失权重,,,表示头部姿态估计矩阵中三个相互正交的头部姿态估计单位向量。
本实施例通过上述方式构建检测头部姿态估计参数分支的损失函数,不会破坏头部姿态3x3旋转矩阵的SO(3)流行几何结构,且由于,因而,即头部姿态估计参数分支的损失函数取值范要求大于等于0,而反余弦函数部分取值范围大于0,反余弦函数在姿态估计不准时可以放大损失值,有利于模型关注难样本学习,因而通过设置调节因子可以进一步动态调节三个维度之间比例,保证头部姿态估计的准确性,使得损失值趋于0。例如,若两个矩阵中某个维度分量相似度较小,则其所贡献的损失占比将会进一步增大。通过上述方式可以使得多人头部姿态模型进一步关注难样本,从而进一步提高头部姿态估计的精度。
本实施例中,检测头部预测概率分支的损失函数具体按照下式计算得到:
(9)
其中,表示第i个头部检测框预测的头部概率,表示第i个头部检测框的头部真实标签,表示第i个头部检测框与真实头部框的重合度,BCE表示二元交叉熵,N表示头部检测图片中总头部检测框数。
本实施例中,检测头部检测框分支的损失函数的计算表达式为:
(10)
(11)
(12)
(13)
(14)
=+1(15)
=-(16)
=1-(17)
其中,、分别表示、的权重,表示头部检测框中4个参数(框中心点坐标及框长)的损失值,为DFL损失函数以用于在目标检测任务中的边界框回归(bounding box regression)过程中校正模型在预测物体边界框时的误差,使得可以在一定程度上针对有些模糊或者焦点不集中的图片进行优化,提升对象检测的精度。i表示头部检测图片中头部检测框的序号,表示的第j个分量,表示图片中第i个头部检测位置预测值,M表示的总维度,表示图片中第i个头部位置左边界标签值,,表示图片中第i个头部位置右边界标签值,表示图片中第i个头部位置左边界权重,表示图片中第i个头部位置右边界权重,表示第i个头部检测框对应的锚点位置,表示图片中第i个头部检测框参数,分别表示第i个头部检测框真实位置的起始点、终点两个点的横纵坐标值,其中下标1对应表示起始点,下标2对应表示终点。对于矩形检测框,可取检测框左上角坐标点作为起点,右下角坐标点作为终点。
本实施例通过基于6D旋转表示方法表示头部姿态估计参数,先将6D旋转表示方法转换成3x3的连续旋转矩阵,然后按照方式构建形成特定的损失函数实现头部姿态参数优化更新,能够尽可能的使得预测结果接近于真实情况,提高多人头部姿态估计的精度。
本实施例中,使用多人头部姿态检测模型得到多个头部对象的检测结果后还包括后数据处理步骤S03,如图3所示,详细步骤包括:
步骤S301.从当前获取的多个头部对象的检测结果中过滤掉置信度小于预设阈值的检测框,得到过滤处理后检测结果;
步骤S302.计算过滤处理后检测结果中所有检测框两两之间的接近度,并根据接近度将所有检测框进行归类,其中将接近度小于第一预设阈值的检测框归为一簇;
步骤S303.根据曼哈顿距离计算归类后各一簇的置信度并使用置信度对各两两检测框之间的接近度P进行加权;
步骤S304.寻找每一簇中置信度加权后的接近度P最小的检测框并对应作为每一簇的检测结果;
步骤S305. 从当前检测结果中滤除接近度P小于第二预设阈值的其他检测框以滤除冗余的检测框,对于剩余框,重复执行步骤S302-S305,直至得到最终的头部对象检测结果,第二预设阈值小于第一预设阈值。
多人头部姿态检测模型在进行推理后,会产生一系列头部检测对象,还需要对这一系列检测对象进行后处理以得到最终真实的检测对象。由于多人头部姿态估计场景属于密集目标检测,目标之间存在着不同程度之间重叠,传统针对目标姿态检测后处理的非极大抑制算法(nms)只依赖于目标分类最高置信度及Iou(Intersection over Union,交并比),导致其对于重叠检测场景会存在一定程度定位不准、漏检等情况。本实施例通过依据检测框之间的接近度将所有头部对象检测框进行归类,然后使用置信度对接近度进行加权,寻找出置信度加权后最小的检测框得到检测结果,不需要依赖于置信度与Iou,可以解决传统的非极大抑制方法必须依赖于置信度与Iou的问题,使得可以提高对于重叠场景的检测精度,进而提高头部姿态估计精度。
在具体应用实施例中,可通过首先将相关坐标进行归一化,然后利用曼哈顿距离等方式计算接近度P。
本实施例基于6D旋转表示的端到端多人头部姿态估计装置,包括:
训练模块,用于获取图像训练集并输入至多人头部姿态检测模型中进行训练,图像训练集中图像包括多个头部对象;训练过程中,由多人头部姿态检测模型先对输入图像进行特征提取,根据提取出的特征预测出多个头部对象的头部预测参数以及头部位姿6D旋转表示参数,头部预测参数包括头部预测分数以及头部检测框位置参数,由头部位姿6D旋转表示参数组成两个三维头部姿态旋转矩阵;将各头部对象的两个三维头部姿态旋转矩阵转换得到头部姿态估计矩阵;根据各头部对象的真实头部姿态矩阵与得到的头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数,直至相似度达到预设要求,得到训练后的多人头部姿态检测模型;
实时估计模块,用于获取待测图像,将待测图像输入至训练后的多人头部姿态检测模型中,得到多个头部对象的检测结果。
本实施例基于6D旋转表示的端到端多人头部姿态估计装置与上述基于6D旋转表示的端到端多人头部姿态估计方法为一一对应,在此不再一一赘述。
本实施例进一步提供计算机装置,包括处理器以及存储器,存储器用于存储计算机程序,处理器用于执行计算机程序以执行如上述方法。
可以理解的是,本实施例上述方法可以由单个设备执行,例如一台计算机或服务器等,也可以应用于分布式场景下由多台设备相互配合来完成,在分布式场景的情况下,多台设备中的一台设备可以只执行本实施例上述方法中的某一个或多个步骤,多台设备之间进行交互以完成上述方法。处理器可以采用通用的CPU、微处理器、应用专用集成电路、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本实施例上述方法。存储器可以采用只读存储器ROM、随机存取存储器RAM、静态存储设备以及动态存储设备等形式实现。存储器可以存储操作系统和其他应用程序,在通过软件或者固件来实现本实施例上述方法时,相关的程序代码保存在存储器中,并由处理器来调用执行。
本领域内的技术人员应明白,本申请的上述实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。
Claims (8)
1.一种基于6D旋转表示的端到端多人头部姿态估计方法,其特征在于,步骤包括:
获取图像训练集并输入至基于神经网络的多人头部姿态检测模型中进行训练,所述图像训练集中图像包括多个头部对象;
训练过程中,由所述多人头部姿态检测模型先对输入图像进行特征提取,根据提取出的特征预测出多个头部对象的头部预测参数,所述头部预测参数包括头部预测分数以及头部检测框位置参数以及头部姿态估计参数,所述头部姿态估计参数包括基于头部姿态估计分支预测出的各个头部对象的头部位姿6D旋转表示参数;将各头部对象的头部位姿6D旋转表示参数转换得到头部姿态估计矩阵;根据各头部对象的真实头部姿态矩阵与得到的所述头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数,直至所述相似度达到预设要求,得到训练后的多人头部姿态检测模型;
获取待测图像,将待测图像输入至训练后的多人头部姿态检测模型中,得到多个头部对象的检测结果;
所述根据各头部对象的真实头部姿态矩阵与得到的所述头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数包括:
获取真实头部姿态向量构成的真实头部姿态矩阵:
其中,,,是三个相互正交的头部真实姿态单位向量;
使用综合损失函数衡量真实头部姿态矩阵与头部姿态估计矩阵之间的相似度,所述综合损失函数使用对应多人头部姿态检测模型中检测头部预测概率分支的损失函数、对应多人头部姿态检测模型中检测头部检测框分支的损失函数以及对应多人头部姿态检测模型中检测头部姿态估计参数分支的损失函数加权得到;
根据训练过程中所述综合损失函数的值调整多人头部姿态检测模型的参数;
使用调整后的多人头部姿态检测模型重新对输入图像进行检测得到新的头部姿态旋转矩阵,返回重新使用综合损失函数对模型进行训练,直至真实头部姿态矩阵与头部姿态估计矩阵之间的相似度达到预设条件;
训练多人头部姿态检测模型的过程中使用的所述综合损失函数的计算表达式为:
其中,表示训练时多人头部姿态检测模型一次处理的数据样本的数量大小,、、分别表示、及三者的权重,表示检测头部检测框分支的损失函数,表示检测头部预测概率分支的损失函数,表示检测头部姿态估计参数分支的损失函数,表示头部姿态矩阵在第i维度上的损失权重,,,表示头部姿态估计矩阵中三个相互正交的头部姿态估计单位向量,,,是三个相互正交的头部真实姿态单位向量,表示第i个头部检测框预测的头部概率,表示第i个头部检测框的头部真实标签,表示第i个头部检测框与真实头部框的重合度,BCE表示二元交叉熵,N表示头部检测图片中总头部检测框数。
2.根据权利要求1所述的基于6D旋转表示的端到端多人头部姿态估计方法,其特征在于,所述头部预测分数为当前预测为头部的概率值,所述头部检测框位置参数包括当前预测头部检测框的中心位置坐标以及当前预测头部检测框的宽与高。
3.根据权利要求1所述的基于6D旋转表示的端到端多人头部姿态估计方法,其特征在于,所述多人头部姿态检测模型的基础检测网络为YOLOV9,并在基于YOLOV9的检测网络中设置一个头部姿态估计6D解耦检测头,以用于预测出头部对象的头部位姿6D旋转表示参数。
4.根据权利要求1所述的基于6D旋转表示的端到端多人头部姿态估计方法,其特征在于,所述将各头部对象的头部位姿6D旋转表示参数转换得到头部姿态估计矩阵包括:将各头部对象的头部位姿6D旋转表示参数所对应的两个不相关三维向量u、v转换为三个相互正交的单位向量,由转换得到的各个单位向量构成所述头部姿态估计矩阵,计算表达式为:
其中,、、分别表示将6D旋转表示参数矩阵转化形成3×3旋转矩阵中三个三维单位向量,,,,~分别表示、、中各元素,分别为u在x、y、z轴的坐标值,分别为v在x、y、z轴的坐标值,表示头部姿态估计矩阵,表示与在三维空间垂直的向量。
5.根据权利要求1所述的基于6D旋转表示的端到端多人头部姿态估计方法,其特征在于,检测头部检测框分支的损失函数的计算表达式为:
= +1
=-
=1-
其中,、分别表示、的权重,表示头部检测框中框中心点坐标及框长的损失值,为DFL损失函数,i表示头部检测图片中头部检测框的序号, 表示的第j个分量,表示图片中第i个头部检测位置预测值,M表示的总维度,表示图片中第i个头部位置左边界标签值,,表示图片中第i个头部位置右边界标签值,表示图片中第i个头部位置左边界权重,表示图片中第i个头部位置右边界权重,表示第i个头部检测框对应的锚点位置,表示第i个头部检测框真实位置的起始点坐标,表示图片中第i个头部检测框参数。
6.根据权利要求1~5中任意一项所述的基于6D旋转表示的端到端多人头部姿态估计方法,其特征在于,使用多人头部姿态检测模型得到多个头部对象的检测结果后还包括后数据处理步骤,步骤包括:
从当前获取的多个头部对象的检测结果中过滤掉置信度小于预设阈值的检测框,得到过滤处理后检测结果;
计算所述过滤处理后检测结果中所有检测框两两之间的接近度,并根据接近度将所有检测框进行归类,其中将接近度小于预设阈值的检测框归为一簇;
计算归类后每一簇的置信度并使用置信度对各两两检测框之间的接近度进行加权;
寻找每一簇中置信度加权后的接近度最小的检测框并对应作为每一簇的检测结果;
从当前检测结果中滤除接近度小于预设阈值的检测框,直至得到最终的头部对象检测结果。
7.一种用于实现权利要求1~6中任意一项所述的基于6D旋转表示的端到端多人头部姿态估计方法的装置,其特征在于,包括:
训练模块,用于获取图像训练集并输入至多人头部姿态检测模型中进行训练,所述图像训练集中图像包括多个头部对象;训练过程中,由所述多人头部姿态检测模型先对输入图像进行特征提取,根据提取出的特征预测出多个头部对象的头部预测参数,所述头部预测参数包括头部预测分数以及头部检测框位置参数以及头部姿态估计参数,所述头部姿态估计参数包括基于头部姿态估计分支预测出的各个头部对象的头部位姿6D旋转表示参数;将各头部对象的 头部位姿6D旋转表示参数转换得到头部姿态估计矩阵;根据各头部对象的真实头部姿态矩阵与得到的所述头部姿态估计矩阵之间的相似度不断调整多人头部姿态检测模型的参数,直至所述相似度达到预设要求,得到训练后的多人头部姿态检测模型;
实时估计模块,用于获取待测图像,将待测图像输入至训练后的多人头部姿态检测模型中,得到多个头部对象的检测结果。
8.一种计算机装置,包括处理器以及存储器,所述存储器用于存储计算机程序,其特征在于,所述处理器用于执行所述计算机程序以执行如权利要求1~6中任意一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411215165.0A CN118762075B (zh) | 2024-09-02 | 2024-09-02 | 基于6d旋转表示的端到端多人头部姿态估计方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411215165.0A CN118762075B (zh) | 2024-09-02 | 2024-09-02 | 基于6d旋转表示的端到端多人头部姿态估计方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118762075A CN118762075A (zh) | 2024-10-11 |
CN118762075B true CN118762075B (zh) | 2024-12-27 |
Family
ID=92943982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202411215165.0A Active CN118762075B (zh) | 2024-09-02 | 2024-09-02 | 基于6d旋转表示的端到端多人头部姿态估计方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118762075B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN119152280B (zh) * | 2024-11-11 | 2025-01-28 | 成都锦城学院 | 一种姿态预测方法、装置及智能机器人 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115731441A (zh) * | 2022-11-29 | 2023-03-03 | 浙江大学 | 基于数据跨模态迁移学习的目标检测和姿态估计方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111582333A (zh) * | 2020-04-23 | 2020-08-25 | 浙江大学 | 结合Yolo-v3及Open-pose的避雷器图片搬运状态识别方法 |
CN112529839B (zh) * | 2020-11-05 | 2023-05-02 | 西安交通大学 | 一种核磁共振图像中颈动脉血管中心线的提取方法及系统 |
CN113963445B (zh) * | 2021-11-15 | 2024-06-18 | 河南理工大学 | 一种基于姿态估计的行人摔倒动作识别方法及设备 |
CN114926895A (zh) * | 2022-04-01 | 2022-08-19 | 北京大学 | 一种基于上下文实例解耦的多人姿态估计方法与装置 |
EP4372687A1 (en) * | 2022-11-18 | 2024-05-22 | Toyota Jidosha Kabushiki Kaisha | Training method for object pose estimation |
-
2024
- 2024-09-02 CN CN202411215165.0A patent/CN118762075B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115731441A (zh) * | 2022-11-29 | 2023-03-03 | 浙江大学 | 基于数据跨模态迁移学习的目标检测和姿态估计方法 |
Non-Patent Citations (1)
Title |
---|
YOLO-6D-Pose: Enhancing YOLO for Single-Stage Monocular Multi-Object 6D Pose Estimation;Debapriya Maji等;《2024 International Conference on 3D Vision (3DV)》;20240612;第1616-1625页 * |
Also Published As
Publication number | Publication date |
---|---|
CN118762075A (zh) | 2024-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110084299B (zh) | 基于多头融合注意力的目标检测方法和装置 | |
CN110930454A (zh) | 一种基于边界框外关键点定位的六自由度位姿估计算法 | |
CN112801047B (zh) | 缺陷检测方法、装置、电子设备及可读存储介质 | |
CN112861808B (zh) | 动态手势识别方法、装置、计算机设备及可读存储介质 | |
CN111091101B (zh) | 基于一步法的高精度行人检测方法、系统、装置 | |
CN113592060A (zh) | 一种神经网络优化方法以及装置 | |
CN118762075B (zh) | 基于6d旋转表示的端到端多人头部姿态估计方法及装置 | |
CN115063447A (zh) | 一种基于视频序列的目标动物运动追踪方法及相关设备 | |
CN116266387A (zh) | 基于重参数化残差结构和坐标注意力机制的yolov4的图像识别算法及系统 | |
CN115457492A (zh) | 目标检测方法、装置、计算机设备及存储介质 | |
CN114707604A (zh) | 一种基于时空注意力机制的孪生网络跟踪系统及方法 | |
CN115471863A (zh) | 三维姿态的获取方法、模型训练方法和相关设备 | |
Kalash et al. | Relative saliency and ranking: Models, metrics, data and benchmarks | |
CN118247810A (zh) | 一种基于TensorFlow.js的人体姿态识别方法及识别系统 | |
CN110533184B (zh) | 一种网络模型的训练方法及装置 | |
CN112597956B (zh) | 基于人体锚点集合与感知增强网络的多人姿态估计方法 | |
CN114743273A (zh) | 基于多尺度残差图卷积网络的人体骨骼行为识别方法及系统 | |
CN117854155B (zh) | 一种人体骨骼动作识别方法及系统 | |
CN113343918A (zh) | 一种电力设备识别方法、系统、介质及电子设备 | |
CN112633078A (zh) | 目标跟踪自校正方法、系统、介质、设备、终端及应用 | |
CN118053174A (zh) | 一种身体特征快速定位方法及系统 | |
Xie et al. | Towards Hardware-Friendly and Robust Facial Landmark Detection Method | |
CN118072163A (zh) | 基于神经网络的国土耕地违规占用高精度检测方法及系统 | |
CN116912314A (zh) | 一种姿态估计方法及其相关设备 | |
CN116758212A (zh) | 基于自适应去噪算法的3d重建方法、装置、设备及介质 |
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 |