掌桥专利:专业的专利平台
掌桥专利
首页

训练方法、检测方法、装置、电子设备及存储介质

文献发布时间:2024-04-18 19:58:30


训练方法、检测方法、装置、电子设备及存储介质

技术领域

本公开涉及信息处理技术领域,尤其涉及一种训练方法、检测方法、装置、电子设备及存储介质。

背景技术

视线检测技术可根据图像采集装置对目标对象进行视线朝向的判断,可应用于目标对象的注意力分析、体感游戏的功能支持等技术领域。而视线检测结果通常由检测模型进行生成,检测模型的精度、检测耗时直接与上层任务的精度、耗时相关。故如何更好地对检测模型进行训练,是开发人员亟需解决的技术问题。

发明内容

本公开提出了一种训练、检测技术方案。

根据本公开的一方面,提供了一种训练方法,应用于检测模型,所述训练方法包括:获取第一样本;其中,所述第一样本包括:多个待训练图像、各个待训练图像分别对应的视线标签;其中,所述视线标签用以表示待训练图像中目标人物的视线方向;生成各个所述待训练图像分别对应的头部姿态标签和眼部位置标签;其中,所述头部姿态标签用以表示待训练图像中目标人物的头部朝向,所述眼部位置标签用以表示待训练图像中目标人物的眼部位置;基于所述多个待训练图像,利用每个待训练图像对应的视线标签、对应的头部姿态标签、对应的眼部位置标签,得到第二样本,并利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型。

在一种可能的实施方式中,所述生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签,包括:根据各个所述待训练图像,得到各个所述待训练图像分别对应的头部区域图像;根据各个所述待训练图像分别对应的头部区域图像,生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签。

在一种可能的实施方式中,所述根据各个所述待训练图像分别对应的头部区域图像,生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签,包括:根据目标图像,生成各个所述待训练图像分别对应的头部姿态角,并将所述头部姿态角的角度作为各个所述待训练图像分别对应的头部姿态标签;根据所述目标图像,生成各个所述待训练图像分别对应的眼部关键点,并将眼部关键点在各个所述待训练图像分别对应的头部区域图像中的位置信息作为各个所述待训练图像分别对应的眼部位置标签;其中,所述目标图像为待训练图像,或,基于预设的归一化规则对所述待训练图像进行归一化处理后得到的图像。

在一种可能的实施方式中,所述预设的归一化规则通过如下方式得到:根据所述第一样本中的多个待训练图像,确定所述多个待训练图像之间像素值的均值、标准差;根据所述均值、标准差,确定预设的归一化规则。

在一种可能的实施方式中,所述利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型,包括:利用所述第二样本对所述检测模型进行训练,基于训练后的整体损失,对所述检测模型的模型参数进行调整,得到训练后的检测模型;其中,所述整体损失包括:视线标签对应的视线估计损失、头部姿态标签对应的头部姿态估计损失、眼部位置标签对应的眼部位置估计损失;所述整体损失的值与视线估计损失、头部姿态估计损失、眼部位置估计损失中的任意一个正相关。

在一种可能的实施方式中,所述视线估计损失包括视线估计回归损失、视线估计分类损失;所述视线估计回归损失包括第二样本对应的视线标签与预测视线标签的差值;所述视线估计分类损失包括预测视线标签在第二样本中图像的两个图像坐标轴上的差值;所述头部姿态估计损失包括第二样本对应的头部姿态标签与预测头部姿态标签之间的差值;所述眼部位置估计损失包括第二样本对应的眼部位置标签与预测眼部位置标签之间的差值。

在一种可能的实施方式中,所述训练后的检测模型用以得到图像的视线检测结果、或视线检测结果以及头部姿态检测结果、或视线检测结果以及眼部位置检测结果、或视线检测结果以及头部姿态检测结果以及眼部位置检测结果。

根据本公开的一方面,提供了一种检测方法,所述检测方法包括:获取待检测图像;根据所述待检测图像、训练后的检测模型,生成所述待检测图像对应的模型检测结果;根据所述待检测图像对应的模型检测结果,确定所述待检测图像对应的目标检测结果;其中,所述训练后的检测模型为所述的训练方法训练得到的检测模型。

在一种可能的实施方式中,所述待检测图像为实时采集的视频中的一帧图像,所述根据所述待检测图像对应的模型检测结果,确定所述待检测图像对应的目标检测结果,包括:根据所述待检测图像对应的模型检测结果、所述待检测图像前一帧图像对应的目标检测结果、二者各自对应的预设权重,确定所述待检测图像对应的目标检测结果。

在一种可能的实施方式中,所述根据所述待检测图像、训练后的检测模型,生成所述待检测图像对应的模型检测结果,包括:根据所述待检测图像,生成所述待检测图像对应的头部区域图像;根据预设的归一化规则,对所述头部区域图像进行归一化处理;将归一化后的头部区域图像输入至训练后的检测模型中,得到所述待检测图像对应的模型检测结果。

根据本公开的一方面,提供了一种训练装置,应用于检测模型,所述训练装置包括:样本获取模块,用以获取第一样本;其中,所述第一样本包括:多个待训练图像、各个待训练图像分别对应的视线标签;其中,所述视线标签用以表示待训练图像中目标人物的视线方向;标签生成模块,用以生成各个所述待训练图像分别对应的头部姿态标签和眼部位置标签;其中,所述头部姿态标签用以表示待训练图像中目标人物的头部朝向,所述眼部位置标签用以表示待训练图像中目标人物的眼部位置;模型训练模块,用以基于所述多个待训练图像,利用每个待训练图像对应的视线标签、对应的头部姿态标签、对应的眼部位置标签,得到第二样本,并利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型。

根据本公开的一方面,提供了一种检测装置,所述检测装置包括:图像获取模块,用以获取待检测图像;模型检测结果生成模块,用以根据所述待检测图像、训练后的检测模型,生成所述待检测图像对应的模型检测结果;目标检测结果生成模块,用以根据所述待检测图像对应的模型检测结果,确定所述待检测图像对应的目标检测结果;其中,所述训练后的检测模型为所述的训练装置训练得到的检测模型。

根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。

根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。

在本公开实施例中,可获取第一样本,而后生成各个所述待训练图像分别对应的头部姿态标签和眼部位置标签。最终基于所述多个待训练图像,利用每个待训练图像对应的视线标签、对应的头部姿态标签、对应的眼部位置标签,得到第二样本,并利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型。本公开实施例通过将头部姿态标签、眼部位置标签加入至第一样本的方式,使得训练后的检测模型可同时学习到待训练样本中的头部姿态信息、眼部位置信息以及实现信息,可使得头部检测姿态结果、眼部位置检测结果、视线检测结果的生成过程可保持并行,能在提高检测模型精度的同时,加快模型的检测速度、训练的收敛速度。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。

图1示出了根据本公开实施例提供的训练方法的流程图。

图2示出了根据本公开实施例提供的检测方法的流程图。

图3示出了根据本公开实施例提供的一种训练装置的框图。

图4示出了根据本公开实施例提供的一种检测装置的框图。

图5示出了根据本公开实施例提供的一种电子设备的框图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。

另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

相关技术中,视线检测结果通常通过已有的训练集进行训练,而已有的训练集的构成为待训练图像、待训练图像对应的视线标签。在一个示例中,为提高视线检测结果的生成精度,通常会结合头部姿态检测结果进行视线检测结果的生成。而头部姿态检测结果的生成与视线检测结果的生成过程相互独立,可视为通过两个检测模型进行生成,在头部姿态检测模型输出头部姿态检测结果之后,输入至视线检测模型,而后视线检测模型才能输出视线检测结果。此举易造成以下问题:1、已有的训练集的标签较为单一,难以结合实际应用场景使用。2、若想提高视线检测精度,需要对视线检测结果进行额外处理,该过程为串行过程,会导致实际部署中视线检测流程过慢。

有鉴于此,本公开实施例提供了一种训练方法,可获取第一样本,而后生成各个所述待训练图像分别对应的头部姿态标签和眼部位置标签。最终基于所述多个待训练图像,利用每个待训练图像对应的视线标签、对应的头部姿态标签、对应的眼部位置标签,得到第二样本,并利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型。本公开实施例通过将头部姿态标签、眼部位置标签加入至第一样本的方式,使得训练后的检测模型可同时学习到待训练样本中的头部姿态信息、眼部位置信息以及实现信息,可使得头部检测姿态结果、眼部位置检测结果、视线检测结果的生成过程可保持并行,能在提高检测模型精度的同时,加快模型的检测速度、训练的收敛速度。

参阅图1所示,图1示出了根据本公开实施例提供的训练方法的流程图,结合图1所示,所述训练方法可应用于检测模型,所述训练方法包括:

步骤S100,获取第一样本。其中,所述第一样本包括:多个待训练图像、各个待训练图像分别对应的视线标签;其中,所述视线标签用以表示待训练图像中目标人物的视线方向。在一个示例中,所述第一样本可根据开发人员的实际需求进行选取,带有人脸即可,可包括相关技术中已有的数据集。

步骤S200,生成各个所述待训练图像分别对应的头部姿态标签和眼部位置标签。其中,所述头部姿态标签用以表示待训练图像中目标人物的头部朝向,所述眼部位置标签用以表示待训练图像中目标人物的眼部位置。

在一种可能的实施方式中,步骤S200可包括:根据各个所述待训练图像,得到各个所述待训练图像分别对应的头部区域图像。而后根据各个所述待训练图像分别对应的头部区域图像,生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签。示例性地,上述头部区域图像的生成过程可通过相关技术中的头部检测算法,或头部检测模型获取。在一个示例中,头部区域图像的生成可由检测模型中的一个子模型得到。示例性地,可通过待训练图像、待训练图像对应的头部区域标签(可表现为头部区域检测框的顶点在图像中的坐标信息),对上述子模型进行训练,以使训练后的子模型可根据输入的图像,生成头部区域图像,具体的训练方式本公开实施例在此不做限制,开发人员可视实际情况而定。本公开实施例通过对当前图像进行头部区域图像的提取,使得后续的视线检测任务能够专注于头部区域的检测,有利于降低无用图像特征对视线检测精度的影响。

在一种可能的实施方式中,所述根据各个所述待训练图像分别对应的头部区域图像,生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签,包括:根据目标图像,生成各个所述待训练图像分别对应的头部姿态角,并将所述头部姿态角的角度作为各个所述待训练图像分别对应的头部姿态标签。示例性地,上述头部姿态角可包括相关技术中的俯仰角(或称pitch)、偏航角(或称yaw)、翻滚角(或称roll)。在一个示例中,在获得上述头部姿态标签后还可进行人工校对,再进行后续的模型训练,以提高在模型应用阶段最终生成的视线检测结果、头部检测结果的精度。在一个示例中,上述头部姿态角可通过相关技术中的算法或模型得到,本公开实施例在此不做限制,例如可通过6DRepNet获取,6DRepNet为一种头部姿态角检测模型,其可对头部姿态进行六维旋转表示。而后根据所述目标图像,生成各个所述待训练图像分别对应的眼部关键点,并将眼部关键点在各个所述待训练图像分别对应的头部区域图像中的位置信息作为各个所述待训练图像分别对应的眼部位置标签。其中,所述目标图像为待训练图像,或,基于预设的归一化规则对所述待训练图像进行归一化处理后得到的图像。示例性地,上述眼部关键点可为眼部多个关键点中的一个预设关键点,例如眼部中心关键点,具体可结合眼部关键点的识别算法而定。若识别算法中不存在中心关键点,则可通过眼部多个关键点的多个坐标信息计算中值,并作为上述眼部关键点的眼部位置标签。在一个示例中,上述多个关键点可通过相关技术中的算法或模型得到,本公开实施例在此不做限制。例如:可通过SLPT(全称为Sparse Local PatchTransformer)获取,SLPT为一种面部关键点的检测模型,可得到面部关键点在图像中的坐标,可选择其眼部对应的关键点,以得到上文所述的眼部关键点的位置信息。示例性地,上述眼部关键点的位置信息可包括:左眼关键点的横纵坐标(可表现为图像的像素坐标系中的坐标)、右眼关键点的横纵坐标。上述归一化规则可根据开发人员的实际需求进行调整,在一个示例中,可根据所述第一样本中的多个待训练图像,确定所述多个待训练图像之间像素值的均值、标准差。而后根据所述均值、标准差,确定预设的归一化规则。示例性地,若均值表现为mean,标准差表现为std,归一化前的图像表现为X1,则归一化后的图像X2可表现为:X2=(X1/255-mean)/std,可将该公式视为上述预设的归一化规则。应当理解的是,开发人员也可根据实际情况对上述规则进行调整,本公开实施例在此不做限制。

继续参阅图1,步骤S300,基于所述多个待训练图像,利用每个待训练图像对应的视线标签、对应的头部姿态标签、对应的眼部位置标签,得到第二样本,并利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型。在一种可能的实施方式中,训练后的检测模型用以得到图像的视线检测结果、或视线检测结果以及头部姿态检测结果、或视线检测结果以及眼部位置检测结果、或视线检测结果以及头部姿态检测结果以及眼部位置检测结果。训练后的检测模型的输出结果的构成可通过增删检测模型的检测头而定。例如:每个检测结果可对应一个检测头,若去除对应的检测头即可去除对应的检测结果。应当理解的是,即使去除检测结果对应的检测头,但是训练后的检测模型已学习到了该检测结果的特征,有利于提高检测结果的精度。本公开实施例通过多个检测结果一次性输出的方式,可满足一些实际应用场景的需求,可视上层任务的需求对检测头进行增删,可提高训练后的检测模型的适配性。示例性地,上述检测模型的网络结构可参考相关技术中的Mobilenet、shufflenet、reset18等模型结构,也可选用MobileNetV3-Small等轻量级模型结构,在此基础上对应修改检测头数量、维度即可。

在一个示例中,所述利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型,包括:利用所述第二样本对所述检测模型进行训练,基于训练后的整体损失,对所述检测模型的模型参数进行调整,得到训练后的检测模型;其中,所述整体损失包括:视线标签对应的视线估计损失、头部姿态标签对应的头部姿态估计损失、眼部位置标签对应的眼部位置估计损失;所述整体损失的值与视线估计损失、头部姿态估计损失、眼部位置估计损失中的任意一个正相关。可通过以上多种标签,对检测模型进行有监督的训练,检测模型的模型参数,训练过程,本公开实施例在此不做限制。每个标签可对应有损失函数,以对多种预测损失进行反向传播,进而自动调整检测模型的模型参数。

在一个示例中,检测模型的整体损失可包括:视线估计回归损失loss1(可作为视线估计损失之一)、视线估计分类损失loss2(可作为视线估计损失之一)、眼部位置估计损失loss3(可作为眼部位置估计损失之一)、头部姿态估计损失loss4(可作为头部姿态估计损失之一)。所述视线估计回归损失包括第二样本对应的视线标签与预测视线标签二者之差,示例性地,

所述眼部位置估计损失(loss3)包括第二样本对应的眼部位置标签、对应的预测眼部位置标签之间的差值,示例性地,

所述头部姿态估计损失(loss4)包括第二样本对应的头部姿态标签与预测头部姿态标签之间的差值,示例性地,

检测模型的整体损失loss可表现为:loss=w1*loss1+w2*loss2+w3*loss3+w4*loss4。其中,w1、w2、w3、w4分别用以表示loss1、loss2、loss3、loss4对应的权重,四者满足和为1即可,具体数值本公开实施例在此不做限制。

在一种可能的实施方式中,步骤S300可包括:将所述多个待训练图像中每个待训练图像对应的归一化后的头部区域图像、对应的视线标签、对应的头部姿态标签、对应的眼部位置标签作为新的第一样本,并根据新的第一样本对所述检测模型进行训练,得到训练后的检测模型。本公开实施例可待训练图像进行归一化处理,得到归一化后的头部区域图像,而后基于新的第一样本,对检测模型进行训练,可降低图像大小对的特征提取的影响,有利于提高检测模型的检测精度。训练流程可参考上文,本公开实施例在此不做赘述。

在一种可能的实施方式中,所述利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型,包括:将第二样本根据预设规则拆分为训练集、验证集、测试集。在一个示例中,训练集、验证集、测试集的占比可由开发人员视实际情况进行设定,本公开实施例在此不做限制。而后根据所述训练集对多个机器学习模型进行训练。示例性地,多个机器学习模型的种类可相同或不同。再根据所述验证集,确定训练后的所述多个机器学习模型中精度最高的目标模型。示例性地,可将验证集中的图像输入至多个机器学习模型中,通过与验证集对应的标签进行对比的方式,可得到每个机器学习模型的精度。而后根据所述训练集、所述验证集对所述目标模型进行重新训练,得到训练后的目标模型,并作为训练后的检测模型。最终根据所述测试集,确定所述训练后的检测模型的精度。本公开实施例提供的训练方法还可为开发人员提供训练后的检测模型的精度,有利于开发人员对训练后的检测模型进行模型的评估。

本公开实施例提供的训练方法,以头部姿态标签、眼部位置标签、视线标签作为监督信息进行训练,可加速检测模型的收敛过程,提升检测模型的全面性、稳定性。,有利于提高检测模型的检测精度。

参阅图2所示,图2示出了根据本公开实施例提供的检测方法的流程图,结合图2,本公开实施例还提供了一种检测方法,所述检测方法包括:步骤S600,获取待检测图像。示例性地,可通过相关技术中的图像采集装置获取待检测图像。

步骤S700,根据所述待检测图像、训练后的检测模型,生成所述待检测图像对应的模型检测结果。示例性地,可将待检测图像输入至训练后的检测模型,以得到模型检测结果。在一个示例中,也可根据相关技术中的图像处理算法对待检测图像进行处理,而后将处理后的待检测图像输入至训练后的检测模型中。

在一种可能的实施方式中,步骤S700可包括:根据所述待检测图像,生成所述待检测图像对应的头部区域图像。示例性地,上述头部区域图像的生成过程可通过相关技术中的头部检测算法,或头部检测模型获取。在一个示例中,头部区域图像的生成可由检测模型中的一个子模型得到。示例性地,可通过待训练图像、待训练图像对应的头部区域标签(可表现为头部区域检测框的顶点在图像中的坐标信息),对上述子模型进行训练,以使训练后的子模型可根据输入的图像,生成头部区域图像,具体的训练方式本公开实施例在此不做限制,开发人员可视实际情况而定。本公开实施例通过对当前图像进行头部区域图像的提取,使得后续的视线检测任务能够专注于头部区域的检测,有利于降低无用图像特征对视线检测精度的影响。而后根据预设的归一化规则,对所述头部区域图像进行归一化处理。最终将归一化后的头部区域图像输入至训练后的检测模型中,得到所述待检测图像对应的模型检测结果。示例性地,上述归一化规则本公开实施例在此不做限定,与上文训练方法中的归一化规则一致即可。

继续参阅图2,步骤S800,根据所述待检测图像对应的模型检测结果,确定所述待检测图像对应的目标检测结果。示例性地,可直接将待检测图像对应的模型检测结果作为其对应的目标检测结果。在一个示例中,也可对模型检测结果做一些相关技术中的后续处理,以提高目标检测结果的精度或适配于特定的应用场景,本公开实施例在此不做限制。

在一种可能的实施方式中,所述模型检测结果、和/或所述目标检测结果包括:视线检测结果、或视线检测结果以及头部姿态检测结果、或视线检测结果以及眼部位置检测结果、或视线检测结果以及头部姿态检测结果以及眼部位置检测结果。训练后的检测模型的输出结果的构成可通过增删检测模型的检测头而定。例如:每个检测结果可对应一个检测头,若去除对应的检测头即可去除对应的检测结果。应当理解的是,即使去除检测结果对应的检测头,但是训练后的检测模型已学习到了该检测结果的特征,有利于提高实现检测结果的精度。本公开实施例通过多个检测结果一次性输出的方式,可满足一些实际应用场景的需求,可视上层任务的需求对检测头进行增删,可提高训练后的检测模型的适配性。

在一种可能的实施方式中,所述待检测图像为实时采集的视频中的一帧图像,步骤S800包括:根据所述待检测图像对应的模型检测结果、所述待检测图像前一帧图像对应的目标检测结果、二者各自对应的预设权重,确定所述待检测图像对应的目标检测结果。本公开实施例在此不限定上述预设权重的具体数值,开发人员可视实际情况而定,预设权值之和为1即可。在一个示例中,模型检测结果的预设权重可大于前一帧图像对应的目标检测结果的预设权重,以提高待检测图像对应的目标检测结果的准确率。

参阅图3,图3示出了根据本公开实施例提供的一种训练装置的框图,结合图3,本公开实施例还提供了一种训练装置100,应用于检测模型,所述训练装置100包括:样本获取模块110,用以获取第一样本;其中,所述第一样本包括:多个待训练图像、各个待训练图像分别对应的视线标签;其中,所述视线标签用以表示待训练图像中目标人物的视线方向;标签生成模块120,用以生成各个所述待训练图像分别对应的头部姿态标签和眼部位置标签;其中,所述头部姿态标签用以表示待训练图像中目标人物的头部朝向,所述眼部位置标签用以表示待训练图像中目标人物的眼部位置;模型训练模块130,用以基于所述多个待训练图像,利用每个待训练图像对应的视线标签、对应的头部姿态标签、对应的眼部位置标签,得到第二样本,并利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型。

在一种可能的实施方式中,所述生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签,包括:根据各个所述待训练图像,得到各个所述待训练图像分别对应的头部区域图像;根据各个所述待训练图像分别对应的头部区域图像,生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签。

在一种可能的实施方式中,所述根据各个所述待训练图像分别对应的头部区域图像,生成各个所述待训练图像分别对应的头部姿态标签、眼部位置标签,包括:根据目标图像,生成各个所述待训练图像分别对应的头部姿态角,并将所述头部姿态角的角度作为各个所述待训练图像分别对应的头部姿态标签;根据所述目标图像,生成各个所述待训练图像分别对应的眼部关键点,并将眼部关键点在各个所述待训练图像分别对应的头部区域图像中的位置信息作为各个所述待训练图像分别对应的眼部位置标签;其中,所述目标图像为待训练图像,或,基于预设的归一化规则对所述待训练图像进行归一化处理后得到的图像。

在一种可能的实施方式中,所述预设的归一化规则通过如下方式得到:根据所述第一样本中的多个待训练图像,确定所述多个待训练图像之间像素值的均值、标准差;根据所述均值、标准差,确定预设的归一化规则。

在一种可能的实施方式中,所述利用所述第二样本对所述检测模型进行训练,得到训练后的检测模型,包括:利用所述第二样本对所述检测模型进行训练,基于训练后的整体损失,对所述检测模型的模型参数进行调整,得到训练后的检测模型;其中,所述整体损失包括:视线标签对应的视线估计损失、头部姿态标签对应的头部姿态估计损失、眼部位置标签对应的眼部位置估计损失;所述整体损失的值与视线估计损失、头部姿态估计损失、眼部位置估计损失中的任意一个正相关。

在一种可能的实施方式中,所述视线估计损失包括视线估计回归损失、视线估计分类损失;所述视线估计回归损失包括第二样本对应的视线标签与预测视线标签的差值;所述视线估计分类损失包括预测视线标签在第二样本中图像的两个图像坐标轴上的差值;所述头部姿态估计损失包括第二样本对应的头部姿态标签与预测头部姿态标签之间的差值;所述眼部位置估计损失包括第二样本对应的眼部位置标签与预测眼部位置标签之间的差值。

在一种可能的实施方式中,所述训练后的检测模型用以得到图像的视线检测结果、或视线检测结果以及头部姿态检测结果、或视线检测结果以及眼部位置检测结果、或视线检测结果以及头部姿态检测结果以及眼部位置检测结果。

参阅图4,图4示出了根据本公开实施例提供的一种检测装置的框图,结合图4,本公开实施例还提供了一种检测装置200,所述检测装置200包括:图像获取模块210,用以获取待检测图像;模型检测结果生成模块220,用以根据所述待检测图像、训练后的检测模型,生成所述待检测图像对应的模型检测结果;目标检测结果生成模块230,用以根据所述待检测图像对应的模型检测结果,确定所述待检测图像对应的目标检测结果;其中,所述训练后的检测模型为所述的训练装置训练得到的检测模型。

在一种可能的实施方式中,所述待检测图像为实时采集的视频中的一帧图像,所述根据所述待检测图像对应的模型检测结果,确定所述待检测图像对应的目标检测结果,包括:根据所述待检测图像对应的模型检测结果、所述待检测图像前一帧图像对应的目标检测结果、二者各自对应的预设权重,确定所述待检测图像对应的目标检测结果。

在一种可能的实施方式中,所述根据所述待检测图像、训练后的检测模型,生成所述待检测图像对应的模型检测结果,包括:根据所述待检测图像,生成所述待检测图像对应的头部区域图像;根据预设的归一化规则,对所述头部区域图像进行归一化处理;将归一化后的头部区域图像输入至训练后的检测模型中,得到所述待检测图像对应的模型检测结果。

可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

此外,本公开还提供了电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任一种训练方法、检测方法,相应技术方案和描述和参见方法部分的相应记载,不再赘述。

该方法与计算机系统的内部结构存在特定技术关联,且能够解决如何提升硬件运算效率或执行效果的技术问题(包括减少数据存储量、减少数据传输量、提高硬件处理速度等),从而获得符合自然规律的计算机系统内部性能改进的技术效果。

在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。

本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。

本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。

本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。

电子设备可以被提供为终端设备、服务器或其它形态的设备。

参阅图5所示,图5示出了根据本公开实施例提供的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器或终端设备。参照图5,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。

电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如微软服务器操作系统(Windows Server

在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。

本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。

这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。

上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

若本申请技术方案涉及个人信息,应用本申请技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本申请技术方案涉及敏感个人信息,应用本申请技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

相关技术
  • 一种书法训练方法、装置、电子设备及存储介质
  • 一种液位检测装置和包含其的设备以及液位检测方法、电子设备及计算机可读存储介质
  • 手势关键点检测方法、装置、电子设备及存储介质
  • 加密恶意流量检测方法、装置、电子设备及存储介质
  • 对象检测方法及装置、电子设备和存储介质
  • 浓度检测模型的训练方法、浓度检测方法、装置、电子设备及存储介质
  • 图像检测模型训练方法、图像检测方法、装置、电子设备和存储介质
技术分类

06120116496953