视线识别模型的训练方法、视线识别方法、装置及设备

文档序号:24969067发布日期:2021-05-07 22:39阅读:209来源:国知局
视线识别模型的训练方法、视线识别方法、装置及设备

本发明涉及图像处理技术领域,尤其涉及一种视线识别模型的训练方法、视线识别方法、装置及设备。



背景技术:

研究表明,人获取的约80%的外界信息来自人眼,人眼获取物体信息的方式是通过转动眼球使得物体最清晰的像出现在视网膜的中心凹中,中心凹与角膜中心的连线即为视线。由于视线具有直接性、自然性和双向性等特点,近年来成为研究热点,以使其可以很好地应用于各类场景。例如,可以应用在人机交互场景中,利用视线移动方向控制机器,弥补残疾人和老年人生理上的不便,也可以应用在安全驾驶场景中,通过跟踪驾驶员视线,评估驾驶员驾驶状态以预防事故,还可以应用在传媒场景中,通过采集视线停留广告的时间长度,确定用户的兴趣点。

现有的视线估计方法主要包括基于表观appearance-based的方法和基于几何模型model-based的方法。两种方法均可以采用3d视线估计和2d视线估计两种方式,3d视线估计预测视线的三维视线方向,2d视线估计预测视线在预设平面的坐标。

由于深度学习技术的兴起,基于表观的方法可以采用卷积神经网络从单眼回归视线,根据眼部关键点、相机内参和三维平均脸模型对原始图片进行归一化,以减小头部姿态对视线估计的影响。然而,当卷积神经网络的输入仅有眼部区域,缺少脸部其他有用区域时,将使得输出的视线估计的准确度降低。基于此,可以将卷积神经网络的输入从眼部区域扩展至全脸区域来进行视线回归,并在卷积神经网络中增加注意力机制,增加眼部区域的权重和脸部区域的权重,削弱背景等无用区域的权重,以提高视线估计的准确度。此外,还可以通过多个卷积神经网络合并训练,即对视线回归进行拆分,具体可以先利用一个网络对图片进行提取,以提取头部姿态、人脸关键点、脸部深度图和眼部区域等,之后再利用另一个网络基于提取的特征进行视线回归,以得到视线估计。

在基于卷积神经网络进行视线估计的方法中,不需要额外设计眼部特征就可以估计视线,相较于基于表观的方法具有较强的适用性。虽然,单独输入眼部区域或者输入全脸区域可以使得卷积神经网络获得丰富的特征信息,但是在设计上将引入复杂的框架结构,多个卷积神经网络合并训练的方法也将使得视线估计变得复杂,且难以保证输出视线信息的准确性。



技术实现要素:

本发明实施例提供一种视线识别模型的训练方法、视线识别方法、装置及电子设备,可以在不增加视线识别模型规模的前提下,提高视线识别模型识别视线的精确性。

本发明实施例提供了一种视线识别模型的训练方法,该训练方法包括:

获取样本图像集;样本图像集包括样本图像;样本图像包括第一区域和第二区域;

将样本图像输入预设机器学习模型,进行视线识别处理,得到第一区域对应的第一视线信息以及第二区域对应的第二视线信息;

基于第一视线信息,确定第二区域对应的第三视线信息;

基于第二视线信息和第三视线信息,确定第一损失信息;

根据第一损失信息,确定损失信息;

基于损失信息调整预设机器学习模型中的模型参数,至损失信息满足预设条件,将满足预设条件时的预设机器学习模型作为视线识别模型。

进一步地,基于第一视线信息,确定第二区域对应的第三视线信息,包括:

基于预设坐标系,确定第一区域对应的第一中心向量、第二区域对应的第二中心向量以及第一视线信息对应的第一向量;

根据第一中心向量、第二中心向量和第一向量,确定第三视线信息。

进一步地,基于第二视线信息和第三视线信息确定第一损失信息之后,还包括:

获取样本图像对应的视线标签信息;视线标签信息包括第一区域对应的视线标签信息和第二区域对应的视线标签信息;

根据视线标签信息、第一视线信息和第二视线信息,确定第二损失信息;

根据第一损失信息,确定损失信息,包括:

根据第一损失信息和第二损失信息,确定损失信息。

进一步地,基于第二视线信息和第三视线信息,确定第一损失信息,包括:

基于预设坐标系,确定第二视线信息和第三视线信息对应的距离信息;

根据距离信息,确定第一损失信息。

进一步地,得到第一区域对应的第一视线信息以及第二区域对应的第二视线信息之后,还包括:

根据第一视线信息和第二视线信息,确定第一损失信息,包括:

基于预设坐标系,确定第一视线信息对应的第一坐标信息、第二视线信息对应的第二坐标信息,以及确定第一区域对应的第一标准化向量和第二区域对应的第二标准化向量;

基于预设转换规则,确定第一坐标信息对应的第一角度向量以及第二坐标信息对应的第二角度向量;

根据第一标准化向量、第二标准化向量、第一角度向量和第二角度向量,确定第一损失信息。

相应地,本发明实施例还提供了一种视线识别方法,该视线识别方法包括:

获取待处理图像;待处理图像包括第一待识别区域和第二待识别区域;

将待处理图像作为视线识别模型的输入,进行视线识别处理,得到第一待识别区域对应的第一目标视线信息和第二待识别区域对应的第二目标视线信息;其中,视线识别模型为上文中所描述的视线识别模型。

相应地,本发明实施例还提供了一种视线识别模型的训练装置,该训练装置包括:

样本图像集获取模块,用于获取样本图像集;样本图像集包括样本图像;样本图像包括第一区域和第二区域;

识别处理模块,用于将样本图像输入预设机器学习模型,进行视线识别处理,得到第一区域对应的第一视线信息以及第二区域对应的第二视线信息;

第三视线信息确定模块,用于基于第一视线信息,确定第二区域对应的第三视线信息;

第一损失信息确定模块,用于基于第二视线信息和第三视线信息确定第一损失信息;

损失信息确定模块,用于根据第一损失信息,确定损失信息;

视线识别模型确定模块,用于基于损失信息调整预设机器学习模型中的模型参数,至损失信息满足预设条件,将满足预设条件时的预设机器学习模型作为视线识别模型。

相应地,本发明实施例还提供了一种视线识别装置,该视线识别装置包括:

待处理图像获取模块,用于获取待处理图像;待处理图像包括第一待识别区域和第二待识别区域;

目标视线确定模块,用于将待处理图像作为视线识别模型的输入,进行视线识别处理,得到第一待识别区域对应的第一目标视线信息和第二待识别区域对应的第二目标视线信息;其中,视线识别模型为上文中所描述的视线识别模型。

相应地,本发明实施例还提供了一种视线识别模型的训练设备,设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上文中所描述的视线识别模型的训练方法。

相应地,本发明实施例还提供了一种视线识别设备,设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上文中所描述的视线识别模型的视线识别方法。

本发明实施例具有如下有益效果:

本发明实施例可以在不增加视线识别模型规模的前提下,提高视线识别模型识别视线的精确性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。

图1是本发明实施例提供的一种视线识别模型的训练方法的流程图;

图2是本发明实施例提供的一种样本图像的示意图;

图3是本发明实施例提供的一种确定第二区域对应的第三视线信息的流程图;

图4是本发明实施例提供的一种确定第一损失信息的流程图;

图5是本发明实施例提供的一种距离信息的示意图;

图6是本发明实施例提供的一种确定第一损失信息的流程图;

图7是本发明实施例提供的一种视线识别模型的训练装置的结构示意图;

图8是本发明实施例提供的一种视线识别方法的流程图;

图9是本发明实施例提供的一种视线识别装置的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例作进一步地详细描述。显然,所描述的实施例仅仅是本发明一个实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

此处所称的“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本发明实施例的描述中,需要理解的是术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含的包括一个或者更多个该特征。而且,术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明实施例能够以除了在这里图示或描述以外的顺序实施。此外,术语“包括”和“为”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、装置、产品或设备固有的其它步骤或模块。

本说明书提供了如实施例或流程图所示的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多执行顺序中的一种方式,不代表唯一的执行顺序,在实际执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。

下面介绍本发明一种视线识别模型的训练方法的具体实施例,图1是本发明实施例提供的一种视线识别模型的训练方法的流程图,具体的如图1所示,该方法包括:

s101:获取样本图像集;样本图像集包括样本图像;样本图像包括第一区域和第二区域。

在一种可选的实施方式中,样本图像集可以包括多张样本图像,每一张样本图像可以包括第一区域和第二区域,即每一张样本图像可以包括左眼对应区域和右眼对应区域。图2是本发明实施例提供的一种样本图像的示意图,图中包括第一区域和第二区域,第一区域和第二区域的形状可以是矩形、圆形或三角形等形状,本说明书中不做具体限定。

在另一种可选的实施方式中,样本图像集可以包括多个样本图像组,每一个样本图像组可以包括第一样本图像和第二样本图像,第一样本图像可以包括第一区域,第二样本图像可以包括第二区域,如此,每一个样本图像组可以包括第一区域和第二区域,也即是,每一个样本图像组中两张样本图像可以分别包括左眼对应区域和右眼对应区域。

在实际应用中,样本图像还可以包括脸部其他区域,例如可以包括额头对应区域、嘴巴对应区域、鼻子对应区域等其他人脸关键部位的对应区域。样本图像在包括其他人脸关键部位的对应区域时,至少需要包括左眼对应区域和右眼对应区域。通过单独使用双眼对应区域或者联合其他脸部关键部位的对应区域,可以增加获取的信息的丰富性。

s103:将样本图像输入预设机器学习模型,进行视线识别处理,得到第一区域对应的第一视线信息以及第二区域对应的第二视线信息。

本发明实施例中,可以将样本图像输入预设机器学习模型中,进行视线识别处理,预设机器学习模型可以输出第一区域对应的第一视线信息以及第二区域对应的第二视线信息,也即是,预设机器学习模型可以输出左眼对应视线以及右眼对应视线。

s105:基于第一视线信息,确定第二区域对应的第三视线信息。

双眼具有协调属性,正常人双眼之间会联动转动并保证双眼视线注视同一目标点,并且,即使是在一只眼睛被遮挡的情况下,被遮挡的眼睛仍然会随着未被遮挡的眼睛的转动而转动。

本发明实施例中,图3是本发明实施例提供的一种确定第二区域对应的第三视线信息的流程图,如图3所示,确定第二区域对应的第三视线信息的步骤可以具体包括:

s301:确定第一区域对应的第一中心向量、第二区域对应的第二中心向量以及第一视线信息对应的第一向量;

本发明实施中,第一中心向量可以是第一区域对应的一只眼睛中心对应的向量,第二中心向量可以是第二区域对应的另一只眼睛中心对应的向量,第一向量可以是第一区域对应的眼睛在注视目标点时对应的向量。

s303:根据第一中心向量、第二中心向量和第一向量,确定第二区域对应的第三视线信息。

在一种可选的实施方式中,假设第一区域为左眼对应区域,第二区域为右眼对应区域,可以基于预设机器学习模型中预存储的空间坐标系,确定左眼中心对应的第一中心向量p1、右眼中心对应的第二中心向量p2以及左眼注视目标点时左眼视线对应的第一向量v1,确定此时右眼对应的视线信息,即符合双眼协调特征的右眼对应的第三向量。确定符合双眼协调特征的右眼对应的视线信息的公式可以具体为:

v12=p1-p2+v1

上述例子是假设第一区域为左眼对应区域,第二区域为右眼对应区域,确定符合协调属性的右眼对应的视线信息,在第一区域为右眼对应区域,第二区域为左眼对应区域时,也可以采用上述例子所描述的公式。为避免重复,此处不再赘述。

s107:基于第二视线信息和第三视线信息,确定第一损失信息。

本发明实施例中,图4是本发明实施例提供的一种确定第一损失信息的流程图,如图4所示,确定第一损失信息的步骤可以具体包括:

s401:基于预设坐标系,确定第二视线信息和第三视线信息对应的距离信息。

本发明实施例中,距离信息的具体表现形式可以是第二视线信息对应的向量和第三视线信息对应的向量之间的范数求解,也可以是第二视线信息对应的向量和第三视线信息对应的向量之间的空间角度差。第二视线信息和第三视线信息的表示形式包括但不限于欧式空间向量和欧拉角。

本发明实施例中,可以基于预设坐标系,确定第二视线信息对应的第二向量v2以及第三视线信息对应的第三向量v12,进而根据第二向量v2和第三向量v12,确定第二视线信息和第三视线信息对应的距离信息l12,确定距离信息l12的公式可以具体为:

l12=dist(v12,v2)

在一种可选的实施方式中,假设第一区域为左眼对应区域,第二区域为右眼对应区域。具体地,可以基于上文中所描述的空间坐标系,确定右眼对应视线对应的第二向量v2以及符合双眼协调特征的右眼对应视线对应的第三向量v12,进而根据第二向量v2和第三向量v12,确定第二视线信息和第三视线信息对应的距离信息。图5是本发明实施例提供的一种距离信息的示意图,确定距离信息l12的公式可以具体为:

s403:根据距离信息,确定第一损失信息。

在一种可选的实施方式中,可以根据距离信息,确定第一损失信息。例如,可以根据第二视线信息对应的向量和第三视线信息对应的向量之间的范数求解,确定第一损失值。也可以根据第二视线信息对应的向量和第三视线信息对应的向量之间的空间角度差,确定第一损失值。

在另一种可选的实施方式中,在上文中所描述的得到第一区域对应的第一视线信息以及第二区域对应的第二视线信息之后,还可以根据第一视线信息和第二视线信息,确定第一损失信息。图6是本发明实施例提供的一种确定第一损失信息的流程图,如图6所示,确定第一损失值的步骤可以具体包括:

s601:基于预设坐标系,确定第一视线信息对应的第一坐标信息、第二视线信息对应的第二坐标信息,以及确定第一区域对应的第一标准化向量和第二区域对应的第二标准化向量。

本发明实施例中,基于上文中所描述的空间坐标系,确定第一视线信息对应的第一坐标信息(x1,y1,z1)、第二视线信息对应的第二坐标信息(x2,y2,z2),以及基于空间坐标系确定第一区域对应的第一标准化向量p3和第二区域对应的第二标准化向量p4。

s603:基于预设转换规则,确定第一坐标信息对应的第一角度向量以及第二坐标信息对应的第二角度向量。

本发明实施例中,可以基于预设转换规则,确定第一坐标信息(x1,y1,z1)对应的第一角度向量g1以及第二坐标信息(x2,y2,z2)对应的第二角度向量g2。在一种可选的实施方式中,预设转换规则可以为如下表现形式:

x=cos(φ)*sin(θ)

y=-sin(φ)

z=cos(φ)*cos(θ)

φ=-arcsin(y)

其中,第一角度向量g1和第二角度向量g2分别可以采用(θ,ф)表示形式。

s605:根据第一标准化向量、第二标准化向量、第一角度向量和第二角度向量,确定第一损失信息。

本发明实施例中,可以根据第一标准化向量p3、第二标准化向量p4、第一角度向量g1和第二角度向量g2,确定第一视线信息和第二视线信息对应的距离信息l,并根据距离信息确定第一损失信息。在一种可选的实施方式中,确定距离信息l的公式可以具体为:

其中,g表示将角度向量转换为坐标对应的向量,α表示相对深度调节因子。

s109:根据第一损失信息,确定损失信息。

在一种可选的实施方式中,可以根据第一参数信息和第一损失信息,确定损失信息。具体地,可以根据第一预设参数以及第二视线信息对应的向量和第三视线信息对应的向量之间的范数求解,确定损失值。也可以根据第一预设参数以及第二视线信息对应的向量和第三视线信息对应的向量之间的空间角度差,确定损失值。

在另一种可选的实施方式中,在基于第二视线信息和第三视线信息确定第一损失信息之后,还可以获取样本图像对应的视线标签信息,并根据视线标签信息、第一视线信息和第二视线信息,确定第二损失信息,进而根据第一损失信息和第二损失信息确定损失信息。其中,视线标签信息包括第一区域对应的视线标签信息和第二区域对应的视线标签信息。也即是,可以根据第一区域对应的视线标签信息、第二区域对应的视线标签信息、第一视线信息和第二视线信息确定第二损失信息,也可以根据第一区域对应的视线标签信息和第一视线信息确定第二损失值,还可以根据第二区域对应的视线标签信息和第二视线信息确定第二损失值。

下面,以根据视线标签信息、第一视线信息和第二视线信息确定第二损失信息为例,进行说明。

基于空间坐标系,可以确定第一区域对应的视线标签信息、第二区域对应的视线标签信息、第一视线信息和第二视线信息分别对应的向量,进而确定第一区域对应的视线标签信息和第一视线信息分别对应的向量之间的第一距离信息,以及确定第二区域对应的视线标签信息和第二视线信息分别对应的向量之间的第二距离信息,再根据第一距离信息和第二距离信息确定第二损失信息。这里,第一距离信息的具体表现形式可以是视线标签信息对应的向量和第一视线信息对应的向量之间的范数求解,也可以是视线标签信息对应的向量和第一视线信息对应的向量之间的空间角度差。第二距离信息的具体表现形式可以是视线标签信息对应的向量和第二视线信息对应的向量之间的范数求解,也可以是视线标签信息对应的向量和第二视线信息对应的向量之间的空间角度差。视线标签信息、第一视线信息和第二视线信息的表示形式包括但不限于欧式空间向量和欧拉角。

基于平面坐标系,第一距离信息的具体表现形式可以是视线标签信息对应的向量终点和第一视线信息对应的向量终点之间的距离,第二距离信息的具体表现形式可以是视线标签信息对应的向量终点和第二视线信息对应的向量终点之间的距离。

第一距离信息和第二距离信息的具体公式可以采用如下三种公式:

l=||v-v'||=||p-p'||

其中,v表示视线标签信息对应的向量,v’表示第一视线信息对应的向量或者第二视线信息对应的向量,p表示视线标签信息对应的向量终点,p’表示第一视线信息对应的向量终点或者第二视线信息对应的向量终点,

s111:基于损失信息调整预设机器学习模型中的模型参数,至损失信息满足预设条件,将满足预设条件时的预设机器学习模型作为视线识别模型。

本发明实施例中,可以基于损失信息调整预设机器学习模型中的参数,直至损失信息满足预设条件,即总损失值稳定小于预期损失值时,将预设机器学习模型作为视线识别模型。

采用本发明实施所提供的视线识别模型的训练方法,通过综合考虑识别的双眼视线信息以及基于双眼协调规则输出的视线信息,确定损失信息以训练视线识别模型,可以在不增加视线识别模型规模的前提下,提高视线识别模型识别视线的精确性。

本发明实施例还提供了一种视线识别模型的训练装置,图7是本发明实施例提供的一种视线识别模型的训练装置的结构示意图,如图7所示,该装置包括:

样本图像集获取模块701用于获取样本图像集;样本图像集包括样本图像;样本图像包括第一区域和第二区域;

识别处理模块703用于将样本图像输入预设机器学习模型,进行视线识别处理,得到第一区域对应的第一视线信息以及第二区域对应的第二视线信息;

第三视线信息确定模块705用于基于双眼协调规则和第一视线信息,确定第二区域对应的第三视线信息;

第一损失信息确定模块707用于基于第二视线信息和第三视线信息确定第一损失信息;

损失信息确定模块709用于根据第一损失信息,确定损失信息;

视线识别模型确定模块711用于基于损失信息调整预设机器学习模型中的模型参数,至损失信息满足预设条件,将满足预设条件时的预设机器学习模型作为视线识别模型。

本发明实施例中的装置与方法实施例基于同样的发明构思。

本发明实施例还提供了一种视线识别模型的训练设备,该设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上文中所描述的视线识别模型的训练方法。

下面介绍本发明一种视线识别方法的具体实施例,图8是本发明实施例提供的一种视线识别方法的流程图,具体的如图8所示,该方法包括:

s801:获取待处理图像;待处理图像包括第一待识别区域和第二待识别区域。

本发明实施例中,待处理图像可以包括第一待识别区域和第二待识别区域,即待处理图像可以包括左眼对应区域和右眼对应区域。在实际应用中,待处理图像还可以包括脸部其他区域,例如可以包括额头对应区域、嘴巴对应区域、鼻子对应区域等其他人脸关键部位的对应区域。

s803:将待处理图像作为视线识别模型的输入,进行视线识别处理,得到第一待识别区域对应的第一目标视线信息和第二待识别区域对应的第二目标视线信息;其中,视线识别模型为上文中所描述的视线识别模型。

本发明实施例还提供了一种视线识别装置,图9是本发明实施例提供的一种视线识别装置的结构示意图,如图9所示,该装置包括:

待处理图像获取模块901用于获取待处理图像;待处理图像包括第一待识别区域和第二待识别区域;

目标视线确定模块903用于将待处理图像作为视线识别模型的输入,进行视线识别处理,得到第一待识别区域对应的第一目标视线信息和第二待识别区域对应的第二目标视线信息;其中,视线识别模型为上文中所描述的视线识别模型。

本发明实施例中的装置与方法实施例基于同样的发明构思。

本发明实施例还提供了一种视线识别设备,设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上文中所描述的视线识别模型的视线识别方法。

由上述本发明实施例提供的视线识别模型的训练方法、视线识别方法、装置或存储介质的实施例可见,本发明综合考虑识别的双眼视线信息以及基于双眼协调规则输出的视线信息,确定损失信息以训练视线识别模型,可以减小视线识别模型的规模,可以提高视线识别模型识别视线的精确性。。

需要说明的是:上述本发明实施例的先后顺序仅仅为了描述,不代表实施例的优劣,且上述本说明书对特定的实施例进行了描述,其他实施例也在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或者步骤可以按照不同的实施例中的顺序来执行并且能够实现预期的结果。另外,在附图中描绘的过程不一定要求示出特定顺序或者而连接顺序才能够实现期望的结果,在某些实施方式中,多任务并行处理也是可以的或者可能是有利的。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的均为与其他实施例的不同之处。尤其,对于装置的实施例而言,由于其基于相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1