CN116030512B - 注视点检测方法及装置 - Google Patents

注视点检测方法及装置 Download PDF

Info

Publication number
CN116030512B
CN116030512B CN202210932760.0A CN202210932760A CN116030512B CN 116030512 B CN116030512 B CN 116030512B CN 202210932760 A CN202210932760 A CN 202210932760A CN 116030512 B CN116030512 B CN 116030512B
Authority
CN
China
Prior art keywords
face image
predicted
face
gaze point
feature vector
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
Application number
CN202210932760.0A
Other languages
English (en)
Other versions
CN116030512A (zh
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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202210932760.0A priority Critical patent/CN116030512B/zh
Publication of CN116030512A publication Critical patent/CN116030512A/zh
Application granted granted Critical
Publication of CN116030512B publication Critical patent/CN116030512B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)

Abstract

本申请提供一种注视点检测方法及装置,该方法包括:获取标定注视点和目标注视点的人脸图像;利用正脸模型分别对两个人脸图像进行正脸化处理,得到两个人脸图像的预测正脸图像;之后利用预测模型对两个预测正脸图像进行处理,得到目标注视点与标定注视点的偏移量;然后根据标定注视点的坐标和偏移量得到目标注视点的坐标。该方案先将图像进行正脸化处理,相当于填充了侧脸图像中眼睛缺失的信息,如果本身是正脸图像也依然能使得眼睛的信息更加丰富,之后在信息更加丰富的图像的基础上引入标定注视点,通过求取标定注视点和待测点的偏移量来综合得到待测点的坐标,能够减小侧脸和个体差异带来的误差影响,从而能够有效提高注视点检测的准确性。

Description

注视点检测方法及装置
技术领域
本申请涉及视线检测追踪技术领域,尤其涉及一种注视点检测方法及装置。
背景技术
眼睛不仅是心灵的窗户,它还可以反映出当前视线的焦点,因此可以作为一种简单有效的人机交互方式。随着视线检测和眼动追踪等技术的发展,越来越多的视线控制场景出现,也就是通过视线来进行人机交互的情景越来越多。例如,车辆驾驶中通过视线检测,推测驾驶员的转向意图或者追踪障碍物;终端拍照时可以通过检测眼睛的动作来控制;此外还有眼动翻页和眼控游戏等其他基于视线方向、注视点(即视线焦点)或眼睛的动作进行人机交互的场景。
传统方案中,往往通过对眼球模型的几何求解或者利用深度学习方法学习眼球的外观特征等方式来实现视线检测。但是,这两种方案并没有考虑到个体差异带来的影响,误差较大,尤其对于侧脸的情况,由于信息缺失的原因,加重了检测的难度,导致误差进一步增大。传统方案大多只能实现对于视线方向的检测却难以精确到某个注视点的检测,也正是因为这些方案的误差过大无法满足注视点检测的高准确性的要求。
因此,如何提高注视点检测的准确性是亟待解决的技术问题。
发明内容
本申请提供一种注视点检测方法及装置,能够提高注视点检测的准确性。
第一方面,提供了一种注视点检测方法,该方法包括:获取标定注视点的第一人脸图像和目标注视点的第二人脸图像;利用正脸模型对第一人脸图像和第二人脸图像进行正脸化处理,得到第一预测正脸图像和第二预测正脸图像;利用预测模型对第一预测正脸图像和第二预测正脸图像进行处理,得到目标注视点与标定注视点的偏移量;根据标定注视点的坐标和上述偏移量,得到目标注视点的坐标。其中,第一预测正脸图像表示第一人脸图像的预测正脸图像,第二预测正脸图像表示第二人脸图像的预测正脸图像。
本申请技术方案,先将图像进行正脸化处理,相当于填充了侧脸图像中眼睛缺失的信息,如果本身是正脸图像也依然能使得正脸图像中的眼睛的信息更加丰富,之后在信息更加丰富的图像的基础上引入标定注视点,通过求取标定注视点和待测点的偏移量来综合得到待测点的坐标,能够减小侧脸和个体差异带来的误差影响,从而能够有效提高注视点检测的准确性。
第一人脸图像用于表示用户注视标定注视点的情况下拍摄到的人脸图像,因此第一人脸图像中的人物的注视点即为标定注视点。在实际操作中,可以先给出用户一个请看某个标定点的提示,然后采集用户的人脸图像即为该第一人脸图像,该标定点即为上述标定注视点。第二人脸图像用于表示用户注视目标注视点的情况下拍摄到的人脸图像,因此第二人脸图像中的人物的注视点即为目标注视点。目标注视点可以理解为希望知道的用户在注视的点,所以目标注视点的坐标是未知的,也是需要进行检测的,因此也可以称之为待检测注视点。
在本申请实施例中,正脸模型用于将输入到正脸模型的人脸图像转换为正脸。该人脸图像转换为正脸的过程简称为正脸化处理。应理解,此处的人脸图像可能是正脸也可能是侧脸,如果是侧脸,则正脸化处理之后,相当于将侧脸转正的同时还填充了因为侧脸导致的缺失信息,将侧脸真正变成了正脸,而不仅仅是坐标系的转换,或者理解为将侧脸填充为正脸。在本申请实施例中尤其补充眼部的信息。如果输入到正脸模型的人脸图像本身就是正脸,则正脸化处理依然能够使得其包含的正脸信息更加丰富,可以理解为是一个微调整的过程。
在本申请实施例中,预测模型主要用于求取输入到预测模型的两个人脸图像中的人物的注视点之间的偏移量。应理解,输入到预测模型的两个人脸图像不存在正脸和侧脸的限制,也就是说,可以都是正脸图像,也可以都是侧脸图像,还可以一个是正脸图像一个是侧脸图像。在预测模型对两个预测正脸图像进行处理时,由于两个预测正脸图像包括了相对丰富的眼部信息,所以预测模型对偏移量的预测也会相对更加准确。
结合第一方面,在第一方面的某些实现方式中,正脸模型可以包括编码器和解码器;编码器用于提取输入到正脸模型的人脸图像的特征向量;解码器用于将特征向量转换为与输入到正脸模型的人脸图像对应的正脸图像。则在利用正脸模型对第一人脸图像和第二人脸图像进行正脸化处理,得到第一预测正脸图像和第二预测正脸图像时,可以包括下面的操作:
编码器对第一人脸图像进行特征提取,得到第一人脸图像的特征向量;解码器对第一人脸图像的特征向量进行处理,得到第一预测正脸图像;
编码器对第二人脸图像进行特征提取,得到第二人脸图像的特征向量;解码器对第二人脸图像的特征向量进行处理,得到第二预测正脸图像。
需要说明的是,如下文所述,上述特征向量可以包括人脸特征向量和视线特征向量,也就是说,编码器对人脸图像(例如第一人脸图像和第二人脸图像)进行特征提取后得到的特征向量中包括人脸特征向量和视线特征向量。则解码器在对上述特征向量进行处理得到预测正脸图像的时候,可以是只对人脸特征向量进行处理,也可以是对人脸特征向量和视线特征向量都进行处理。如果解码器只对人脸特征向量进行处理,运算量相对较小;如果解码器对人脸特征向量和视线特征向量都进行处理,运算量相对较大,但由于视线特征向量中包含了丰富的与视线相关的信息,使得这样得到的预测正脸图像更加适合注视点检测的任务,所以利用这样的预测正脸图像来检测注视点的话,检测结果的精度也会进一步提高。
结合第一方面,在第一方面的某些实现方式中,预测模型可以包括特征提取网络和全连接层网络,特征提取网络用于提取输入到预测模型的两个人脸图像的视线向量;全连接层网络用于对视线向量进行融合,得到两个人脸图像对应的注视点的偏移量。则在利用预测模型对第一预测正脸图像和第二预测正脸图像进行处理,得到目标注视点与标定注视点的偏移量时,可以包括下面的操作:
特征提取网络对第一预测正脸图像和第二预测正脸图像进行特征提取,得到第一预测正脸图像的视线向量和第二预测正脸图像的视线向量;
全连接层网络对第一预测正脸图像的视线向量和第二预测正脸图像的视线向量进行融合处理,得到目标注视点与标定注视点之间的偏移量。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:根据目标注视点的坐标,执行目标注视点处的操作,操作包括点击、滑动、触控、解锁、翻页、对焦或游戏操作中的至少一项。
结合第一方面,在第一方面的某些实现方式中,上述标定注视点为屏幕中心点。
第二方面,提供一种正脸模型的训练方法,该训练方法包括:获取训练数据,该训练数据包括正脸图像样本和与正脸图像样本对应的多个侧脸图像样本;利用训练数据对正脸模型进行训练,得到目标正脸模型,该正脸模型包括编码器和解码器,编码器用于提取输入到编码器的图像的特征向量,解码器用于对特征向量进行处理得到预测正脸图像。
利用第二方面的任意一种训练方法训练得到的目标正脸模型可以用于第一方面中利用正脸模型进行正脸化处理的步骤。
在本申请技术方案中利用第二方面的训练方法训练得到的目标正脸模型能够具备正脸化处理的能力,也就是可以将输入到正脸模型/目标正脸模型的人脸图像转化为正脸图像。由于该训练方法利用了同一个人的正脸图像和侧脸图像来训练,所以训练好的模型能够将侧脸转换成正脸,也就是坐标系转换的同时,还能将侧脸缺失的信息进行补充,真正意义上将侧脸转换为正脸。
结合第二方面,在第二方面的某些实现方式中,上述特征向量包括人脸特征向量和视线特征向量;解码器具体用于,对人脸特征向量进行处理,得到预测正脸图像。则在利用训练数据对正脸模型进行训练,得到目标正脸模型时,可以包括下面的操作:
将侧脸图像样本输入到编码器,得到人脸特征向量和视线特征向量;
将人脸特征向量输入到解码器,得到预测正脸图像;
根据预测正脸图像和正脸图像样本,调整编码器和解码器的参数,从而得到目标正脸模型。
在这些实现方式中,解码器只对人脸特征向量进行处理,而不对视线特征向量进行处理,能够降低运算复杂度,简化训练过程,但训练得到的解码器只具备对人脸特征向量的处理的能力而不具备对视线特征向量处理的能力。应理解,即使不对视线特征向量进行处理,依然可以实现侧脸转正脸的任务,也就是,利用上述实现方式训练得到的正脸模型是具备将侧脸转正脸的能力的。
结合第二方面,在第二方面的某些实现方式中,解码器还用于对视线特征向量进行处理,也就是说,解码器可以用于对所述人脸特征向量和所述视线特征向量进行处理,则将所述人脸特征向量输入到解码器,得到预测正脸图像期间,具体包括:将人脸特征向量和视线特征向量输入到解码器,解码器对两种向量进行处理,得到预测正脸图像。在这些实现方式中,解码器需要对人脸特征向量和视线特征向量都进行处理,运算复杂度相对提高,但训练得到的解码器具备对两种向量的处理的能力。这样的正脸模型,得到的预测正脸图像中包括更加丰富的视线相关的信息,使得这样的预测正脸图像更加适合注视点检测的任务,所以利用这样的预测正脸图像来检测注视点的话,检测结果的精度也会进一步提高。简而言之,上述实现方式在使得正脸模型具备侧脸转正脸的能力的基础上,进一步契合注视点检测的任务,加强了对于视线相关的特征的处理能力,使得预测正脸图像包含更多的视线相关的信息。
结合第二方面,在第二方面的某些实现方式中,正脸图像样本和多个侧脸图像样本的注视点相同;训练数据还包括注视点的已知坐标。则在利用训练数据对正脸模型进行训练,得到目标正脸模型时,可以包括下面的操作:
将视线特征向量输入到全连接层,得到预测注视点的坐标;
根据预测注视点的坐标与注视点的已知坐标,调整编码器、解码器和全连接层的参数,从而得到目标正脸模型。
在上述实现方式种,在正脸模型的训练过程中增加了注视点这一约束,相当于增加了一项监督学习,通过注视点的这层约束,能够进一步提高目标正脸模型的准确性。
需要说明的是,在根据预测注视点的坐标与注视点的已知坐标,调整编码器、解码器和全连接层的参数时,对于编码器和全连接层是反向调节过程中直接调整其参数,也就是根据注视点的预测值和真实值(标签)之间的差值,直接影响编码器和全连接层的参数,而由于编码器和解码器之间的关联性,当编码器的参数发生变化时,会使得解码器的参数随之发生变化。因此,一次训练过程中,最终因为预测注视点的坐标与注视点的已知坐标而被调整的是编码器、解码器和全连接层的参数。
第三方面,提供一种预测模型的训练方法,该训练方法包括:获取训练数据,训练数据包括:第一注视点的第一人脸图像样本,第二注视点的第二人脸图像样本,以及第一注视点和第二注视点的偏移量标签;利用训练数据对预测模型进行训练,得到目标预测模型,预测模型用于对输入到预测模型的两个人脸图像进行处理,得到两个人脸图像对应的注视点之间的偏移量。
利用第三方面的任意一种训练方法训练得到的目标预测模型可以用于第一方面中利用预测模型求取偏移量的步骤。
在本申请技术方案中,利用第三方面的训练方法训练得到的目标预测模型能够具备求取注视点偏移量的能力,也就是可以将输入到预测模型/目标预测模型的两个人脸图像中注视点之间的偏移量求取出来。由于该训练方法利用了已知注视点的人脸图像来训练,所以训练好的模型不会受个体差异的影响。举例说明,虽然不同人看同一个点的图像可能存在差异,但同一个人看两个点的两个图像之间的偏移或消除单个注视点带来的差异。且第三方面的训练方法训练得到的目标预测模型的输入图像不受正脸或侧脸的限制。
结合第三方面,在第三方面的某些实现方式中,预测模型可以包括特征提取网络和全连接层网络,特征提取网络用于提取输入到预测模型的两个人脸图像的视线特征向量;全连接层网络用于对视线特征向量进行融合,得到两个人脸图像对应的注视点的偏移量。
结合第三方面,在第三方面的某些实现方式中,在利用训练数据对预测模型进行训练,得到目标预测模型时,可以包括下面的操作:
将第一人脸图像样本和第二人脸图像样本分别输入到特征提取网络,分别得到第一人脸图像样本的视线特征向量和第二人脸图像样本的视线特征向量;
将第一人脸图像样本的视线特征向量和第二人脸图像样本的视线特征向量输入到全连接层网络,得到预测偏移量,预测偏移量用于表示第一注视点与第二注视点之间的偏移量的预测值;
根据预测偏移量和偏移量标签,调整特征提取网络和全连接层的参数,从而得到目标预测模型。
第四方面,提供了一种注视点检测装置,该装置包括由软件和/或硬件组成的用于执行第一方面中的任意一种方法的单元。
第五方面,提供了一种正脸模型的训练装置,该装置包括由软件和/或硬件组成的用于执行第二方面中的任意一种训练方法的单元。
第六方面,提供了一种预测模型的训练装置,该装置包括由软件和/或硬件组成的用于执行第二方面中的任意一种训练方法的单元。
第七方面,提供了一种终端设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,当处理器执行计算机程序时能够实现第一方面的任意一种方法。
第八方面,提供了一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,当处理器执行计算机程序时能够实现第二方面或第三方面的任意一种训练方法。
第九方面,提供了一种芯片,包括处理器,该处理器用于读取并执行存储在存储器中的计算机程序,当计算机程序被处理器执行时能够实现第一方面、第二方面或第三方面的任意一种方法。
可选地,该芯片还包括存储器,存储器与处理器电连接。
可选地,该芯片还可以包括通信接口。
第十方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当计算机程序被处理器执行时能够实现第一方面、第二方面或第三方面的任意一种方法。
第十一方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,当计算机程序被处理器执行时能够实现第一方面、第二方面或第三方面的任意一种方法。
附图说明
图1是本申请实施例的一种利用视线进行人机交互的场景的示意图。
图2是本申请实施例的一种人机交互的界面示意图。
图3是本申请实施例的另一种人机交互的界面示意图。
图4是本申请实施例的一种注视点检测方法的示意性流程图。
图5是本申请实施例的一种正脸模型的训练方法的示意性流程图。
图6是本申请实施例的另一种正脸模型的训练过程的示意图。
图7是本申请实施例的一种预测模型的训练方法的示意性流程图。
图8是本申请实施例的另一种预测模型的训练过程的示意图。
图9是本申请实施例的一种视线检测过程的示意性流程图。
图10是本申请实施例的一种注视点检测装置的示意图。
图11是本申请实施例的一种正脸模型的训练装置的示意图。
图12是本申请实施例的一种预测模型的训练装置的示意图。
图13是本申请实施例的一种终端设备的硬件结构的示意图。
图14是本申请实施例的一种计算机设备的硬件结构示意图。
具体实施方式
下面结合附图对本申请实施例的方案进行介绍。本申请提供的注视点检测方法能够应用于各类眼动交互、视线交互或眼纹交互等人机交互的场景。本申请提供的注视点检测方法能用于终端设备和计算机设备等能够支持利用眼睛进行人机交互的设备中。
图1是本申请实施例的一种利用视线进行人机交互的场景的示意图。如图1所示,在该场景中,用户看向屏幕,该屏幕可以是各类计算机设备的屏幕或投影幕,通过用户看的位置来执行相应操作,也就是根据用户的注视点来执行该注视点处的相关操作。
在图1中的(a)中,用户A看向屏幕中的A处,则如果通过屏幕上的摄像头拍摄到用户A的图像中检测到用户A的注视点是A,就可以相应执行A处的操作。例如,假设A处是某个应用程序的图标,就可以打开该应用程序,假设A处是一个交互选项,就可以执行该交互选项的选定操作。举例说明:假设屏幕中正在运行一个射击游戏,则用户A视线看到哪个位置,就往哪个位置射击,也就是说,根据摄像头拍摄到的用户A的图像分析得到用户A的注视点是A,则往该注视点A进行射击。假设屏幕中正在运行一个寻宝游戏,则用户A视线看到哪个宝箱,就打开哪个宝箱,也就是说,根据摄像头拍摄到的用户A的图像分析得到用户A的注视点是A,则打开注视点A的宝箱。假设A处是一个天气的应用程序,即天气软件,则根据摄像头拍摄到的用户A的图像分析得到用户A的注视点是A时,打开天气软件。其它例子不再逐一列举。
在图1中的(b)中,用户看向屏幕的B处,则如果检测到用户的注视点是B,就可以相应执行B处的操作。相关说明可以参照图1中的(a)的相关介绍。举例说明,假设B处是关闭的选项框,则根据摄像头拍摄到的用户A的图像分析得到用户A的注视点是B时,关闭当前页面或退出正在打开的软件。上述交互选项例如还可以是选择框、翻页、下拉、点击等各类交互选项,不再逐一列举。
应理解,图1主要给出了视线交互场景的一个示例,在实际场景中,可能存在其他情况。例如,用户可能在使用虚拟现实眼镜,则屏幕是虚拟的投影,不再是实体屏幕。又例如,采集图像的摄像头也可能不是屏幕上的,而是外置的。也就是说,只要能够利用眼睛进行人机交互的场景都可以应用本申请实施例提供的注视点检测方案。
在本申请实施例中,计算机设备可以是手机、电脑、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、可视电话、投影设备、网络电视设备等终端设备。智能终端例如可以是智能电视、智能手环或智慧屏等。也可以是服务器、计算机、集控箱、云端设备等能够执行眼动交互的其他计算机设备。
图2是本申请实施例的一种人机交互的界面示意图。图2以手机界面为例进行介绍,但应理解,其他计算机设备也可以实现图2所示人机交互过程。如图2所示,控制界面210中包括多个应用程序。通过硬键触发、语音唤醒或触屏点击操作等方式触发眼动控制模式,则跳转至控制界面220。在控制界面220中,提醒用户注视屏幕中心的圆点,为了提醒作用,还可以让圆点是红色等比较鲜亮的颜色。控制界面220中的圆圈内是倒计时时间,给用户预留准备时间。倒计时结束后,会利用前置摄像头拍摄用户的人脸图像。此时拍摄到的人脸图像就是标定注视点的人脸图像,例如本文中的第一人脸图像,而控制界面220中的屏幕中心的圆点即为标定注视点的一例,该注视点的坐标已知。之后转至控制界面230。在控制界面230中,提醒用户注视目标注视点(即待检测注视点)。再次用前置摄像头拍摄用户的人脸图像,此时拍摄到的人脸图像就是目标注视点的人脸图像,也就是待检测的注视点的人脸图像,例如本文中的第二人脸图像,该注视点的坐标是未知的。利用本申请实施例的方案得到目标注视点的坐标。假设得到目标注视点的坐标在计算器的图标处,如控制界面240所示,则执行打开计算器的操作,显示为控制界面250所示。
图3是本申请实施例的另一种人机交互的界面示意图。图3以手机界面为例进行介绍,但应理解,其他计算机设备也可以实现图3所示人机交互过程。如图3所示,控制界面310显示的是寻宝游戏的界面。通过硬键触发、语音唤醒或触屏点击操作等方式触发眼动控制模式,或者在游戏中的模式选择中选择眼睛互动模式,则跳转至控制界面320。在控制界面320中,提醒用户注视屏幕中心的圆点,为了提醒作用,还可以让圆点是红色等比较鲜亮的颜色。控制界面330中的圆圈内是倒计时时间,给用户预留准备时间。倒计时结束后,会利用前置摄像头拍摄用户的人脸图像。此时拍摄到的人脸图像就是标定注视点的人脸图像,例如本文中的第一人脸图像,而控制界面320中的屏幕中心的圆点即为标定注视点的一例,该注视点的坐标已知。之后转至控制界面330。在控制界面330中,提醒用户开始游戏,也就是开始寻宝。用前置摄像头按照预设时间间隔连续拍摄用户的人脸图像,此时拍摄到的人脸图像就是目标注视点的人脸图像,也就是待检测的注视点的人脸图像,例如本文中的第二人脸图像,该注视点的坐标是未知的。利用本申请实施例的方案得到目标注视点的坐标。假设得到目标注视点的坐标在标号为3的宝箱处,如控制界面340所示,则执行打开宝箱的操作,显示为控制界面350所示标号为3的宝箱被打开。
应理解,图2和图3只是给出了两个利用眼睛进行人机交互的具体示例,在实际应用中,并不局限于此,为了简洁,不再逐一列举。
图4是本申请实施例的一种注视点检测方法的示意性流程图。图4所示方法可以用于图1至图3所示任意场景,为了便于理解,下文以注视点是计算机设备的屏幕上的点为例进行介绍。
S401、获取标定注视点的第一人脸图像和目标注视点的第二人脸图像。
标定注视点的坐标已知。假设该注视点是计算机设备的屏幕,则标定注视点的坐标就是该点在该计算机设备的屏幕上的相对位置坐标。
第一人脸图像用于表示用户注视标定注视点的情况下拍摄到的人脸图像,因此第一人脸图像中的人物的注视点即为标定注视点。在实际操作中,可以先给出用户一个请看某个标定点的提示,然后采集用户的人脸图像即为该第一人脸图像,该标定点即为上述标定注视点。例如图2所示场景中,控制界面220中的屏幕中心圆点就可以作为标定注视点的一个示例,在控制界面220中倒计时结束拍摄到的图像即为第一人脸图像的一个示例。又例如图3所示场景中,控制界面320中的屏幕中心圆点就可以作为标定注视点的一个示例,在控制界面320中倒计时结束拍摄到的图像即为第一人脸图像的一个示例。但应理解,屏幕中心只是标定注视点的一个示例,在实际场景中,标定注视点也可以是其他的已知点,例如图2和图3所示场景中,可以是屏幕上的任意一点。当将屏幕中心作为标定点时,屏幕中的其他点的坐标更方便表示。
第二人脸图像用于表示用户注视目标注视点的情况下拍摄到的人脸图像,因此第二人脸图像中的人物的注视点即为目标注视点。
目标注视点可以理解为希望知道的用户在注视的点,所以目标注视点的坐标是未知的,也是需要进行检测的,因此也可以称之为待检测注视点。
需要说明的是,一个标定注视点可以用于检测不止一个目标注视点。也就是说,一个标定注视点的第一人脸图像并不是只能使用一次,而是可以给标定图像获取之后的任意目标注视点使用。举例说明,假设T1、T2和T3是三个不同时刻,T1早于T2,T2早于T3,且3个时刻的注视点的坐标不同。三个时刻的人脸图像可能是分别在三个时刻实时获取,也可能是已经存储好的图像序列。假设T1时刻的标定注视点的图像就是上述第一人脸图像,T2时刻的注视点的图像就是上述第二人脸图像。则T1时刻的注视点是标定注视点,且坐标已知;T2时刻的注视点是上述目标注视点,坐标未知;T3时刻的注视点是与T2时刻的注视点的坐标不同的其他目标注视点,坐标未知。因此,相当于对T1、T2、T3三个时刻的图像分别执行S402正脸化处理的操作,分别得到三个时刻的预测正脸图像;对T1和T2两个时刻的预测正脸图像执行S403偏移量预测和S404确定目标注视点的坐标的操作,得到T2时刻的目标注视点的坐标;对T1和T3两个时刻的预测图像执行S403偏移量预测和S404确定目标注视点的坐标的操作,得到T3时刻的目标注视点的坐标。简而言之,不需要每次需要检测目标注视点的时候都重新标定。
例如图2所示场景中,在控制界面230中倒计时结束拍摄到的图像即为第二人脸图像的一个示例,拍摄该图像时用户在看哪里并不知晓。然后利用本申请实施例的注视点检测方法确定目标注视点的坐标如控制界面240中所示位置,此时控制界面240中计算器处的圆圈表示的就是目标注视点的检测结果的坐标。又例如图3所示场景中,在控制界面330中倒计时结束拍摄到的图像即为第二人脸图像的一个示例,拍摄该图像时用户在看哪里并不知晓。然后利用本申请实施例的注视点检测方法确定目标注视点的坐标如控制界面340中所示位置,此时控制界面340中编号为3的宝箱处的圆圈表示的就是目标注视点的检测结果的坐标。
可选地,可以将标定注视点的坐标设置为(0,0),也就是作为原点,则目标注视点的偏移量即为其坐标,例如,假设利用图4所示方法,在下述步骤S403得到偏移量为(Δx,Δy),则该偏移量就是目标注视点的检测结果的坐标,即(0+Δx,0+Δy)=(Δx,Δy)。基于这个例子,假设标定注视点的坐标不是原点,是(x,y),则目标注视点的检测结果的坐标为(x+Δx,y+Δy)。
在一些实现方式中,上述标定注视点为屏幕中心点,以方便表示目标注视点的坐标。
步骤S401可以利用图像采集设备实时获取上述人脸图像,也可以从存储装置中读取已经存储好的上述人脸图像,还可以通过通信接口从网络中接收上述人脸图像。标定注视点的信息则可以是从设备内部读取,例如图2和图3所示应用场景,标定注视点是终端设备预设好的屏幕中心点,该信息可以存储在终端设备的内部存储单元中。
S402、利用正脸模型对第一人脸图像和第二人脸图像进行正脸化处理,得到第一预测正脸图像和第二预测正脸图像。
其中,第一预测正脸图像表示第一人脸图像的预测正脸图像,第二预测正脸图像表示第二人脸图像的预测正脸图像。
在本申请实施例中,正脸模型用于将输入到正脸模型的人脸图像转换为正脸。该人脸图像转换为正脸的过程简称为正脸化处理。应理解,此处的人脸图像可能是正脸也可能是侧脸,如果是侧脸,则正脸化处理之后,相当于将侧脸转正的同时还填充了因为侧脸导致的缺失信息,将侧脸真正变成了正脸,而不仅仅是坐标系的转换,或者理解为将侧脸填充为正脸。在本申请实施例中尤其补充眼部的信息。如果输入到正脸模型的人脸图像本身就是正脸,则正脸化处理依然能够使得其包含的正脸信息更加丰富,可以理解为是一个微调整的过程。
还应理解,在本申请实施例中,正脸和侧脸是相对于相机坐标系而言,正脸的坐标系与相机坐标系平行,侧脸的坐标系与相机坐标系不平行。或者可以理解为,正脸图像中脸部的平面与相机的平面平行,侧脸图像中脸的脸部平面与相机的平面不平行。此处相机也可能是摄像机等其他能够拍摄图像的设备。实际操作中,例如,正脸图像是人的脸正对镜头拍到的图像,侧脸图像则是人的脸侧对镜头拍到的图像。
在视线检测或注视点检测的任务中,正脸图像包括更丰富的眼睛相关的信息,所以相对更能准确检测出眼睛注视的方向或位置。但是实际场景中,侧脸的情况很普遍,甚至比正脸可能都多。例如摄像头在拍摄人在整个房间的活动时,几乎很少会出现人脸正对摄像头的情况。而如果采用传统方案进行视线检测,会因为图像中侧脸的原因,难以确定视线和注视点,导致检测结果的准确性太低。
针对上述问题,本申请实施例利用正脸模型将人脸图像进行正脸化处理,使得处理后得到的预测正脸图像包含更多的有效信息,基于这样的预测正脸图像进行注视点检测,能够有效提高检测结果的准确性。虽然传统方案中,也有将侧脸转换成正脸的方法,但这种单纯的坐标系的转换并不能解决侧脸带来的信息缺失的问题,所以准确性依然较低。
在一些实现方式中,正脸模型可以包括编码器和解码器;编码器用于提取输入到正脸模型的人脸图像的特征向量;解码器用于将特征向量转换为与输入到正脸模型的人脸图像对应的正脸图像。则在执行步骤S402时,可以包括下面的操作:
编码器对第一人脸图像进行特征提取,得到第一人脸图像的特征向量;解码器对第一人脸图像的特征向量进行处理,得到第一预测正脸图像;
编码器对第二人脸图像进行特征提取,得到第二人脸图像的特征向量;解码器对第二人脸图像的特征向量进行处理,得到第二预测正脸图像。
需要说明的是,如下文所述,上述特征向量可以包括人脸特征向量和视线特征向量,也就是说,编码器对人脸图像(例如第一人脸图像和第二人脸图像)进行特征提取后得到的特征向量中包括人脸特征向量和视线特征向量。则解码器在对上述特征向量进行处理得到预测正脸图像的时候,可以是只对人脸特征向量进行处理,也可以是对人脸特征向量和视线特征向量都进行处理。如果解码器只对人脸特征向量进行处理,运算量相对较小;如果解码器对人脸特征向量和视线特征向量都进行处理,运算量相对较大,但由于视线特征向量中包含了丰富的与视线相关的信息,使得这样得到的预测正脸图像更加适合注视点检测的任务,所以利用这样的预测正脸图像来检测注视点的话,检测结果的精度也会进一步提高。
也就是说,编码器可以对输入到编码器的人脸图像(例如上述第一人脸图像或第二人脸图像)进行特征提取,得到人脸特征向量和视线特征向量,以第一人脸图像为例,则经过编码器处理得到的是第一人脸图像的人脸特征向量和第一人脸图像的视线特征向量。此时,在其中一个例子中,解码器可以只对人脸特征向量进行处理,以第一人脸图像为例,就是解码器只对第一人脸图像的人脸特征向量进行处理得到第一预测正脸图像。在另一个例子中,解码器可以对人脸特征向量和视线特征向量都进行处理,以第一人脸图像为例,就是解码器对第一人脸图像的人脸特征向量和第一人脸图像的视线特征向量都进行处理得到第一预测正脸图像。第二人脸图像与第一人脸图像的处理过程类似,不再赘述,只要把上述例子中的第一人脸图像替换为第二人脸图像即可。
在上述例子中,当解码器只对人脸特征向量进行处理时,能够降低运算复杂度,提高推理的速度。应理解,即使不对视线特征向量进行处理,已经能够实现侧脸转正脸的任务,也就是说,在这个例子中,解码器只对人脸特征向量进行处理得到的预测正脸图像已经包括了更加丰富的眼部信息,因为眼睛是人脸的必要部分,在对整个脸部的信息填充过程中也包括了对眼睛的填充。所以,该方案相对于传统方案中只是进行侧脸转正脸的坐标转换的情况已经达到了使得侧脸转换出来的正脸是真正意义上完整的脸的目的,不再是传统方案中侧脸导致的缺失的脸部信息依然缺失的情况。
还应理解,在这个例子中,由于解码器只对人脸特征向量进行处理,所以编码器可以只提取人脸图像的人脸特征向量而不需要提取其视线特征向量,从而进一步减少运算量。
在上述例子中,当解码器对人脸特征向量和视线特征向量都进行处理时,运算量相对上面只对人脸特征向量进行处理的例子较大,但是得到的预测正脸图像中包括了比只对人脸特征向量进行处理时更加丰富的视线相关的信息,使得这样的预测正脸图像更加适合注视点检测的任务,所以利用这样的预测正脸图像来检测注视点的话,检测结果的精度也会进一步提高。简而言之,这个例子中,在使得正脸模型具备侧脸转正脸的能力的基础上,进一步契合注视点检测的任务,加强了对于视线相关的特征的处理能力,使得预测正脸图像相比于只进行人脸特征向量的处理的情况包含更多的视线相关的信息。
还需要说明的是,由于图4所示方法中是利用已经有的正脸模型(即预训练好的正脸模型,例如下文的目标正脸模型)进行推理,也就是进行应用的一个过程,而上述人脸特征向量和视线特征向量属于正脸模型在处理过程中,在内部产生的中间量,也就是过程量。对于步骤S402而言,正脸模型是一个整体,输入的分别是第一人脸图像和第二人脸图像,输出的分别是第一预测正脸图像和第二预测正脸图像。
S403、利用预测模型对第一预测正脸图像和第二预测正脸图像进行处理,得到目标注视点与标定注视点的偏移量。
在本申请实施例中,预测模型主要用于求取输入到预测模型的两个人脸图像中的人物的注视点之间的偏移量。应理解,输入到预测模型的两个人脸图像不存在正脸和侧脸的限制,也就是说,可以都是正脸图像,也可以都是侧脸图像,还可以一个是正脸图像一个是侧脸图像。
在一些例子中,输入到预测模型的人脸图像还可以是只有眼睛部分的图像,因为注视点相关的信息大部分都包括在眼睛部分,与脸部的其他部分的关联性较小,所以可以通过只对眼睛部分的图像进行预测来减少需要处理的数据量,提高处理速率。
在步骤S403预测模型对S402得到的两个预测正脸图像进行处理,由于两个预测正脸图像包括了相对丰富的眼部信息,所以S403的偏移量的预测也会相对更加准确。
在一些实现方式中,在步骤S403之前,还可以先对步骤S402得到的两个预测正脸图像进行处理,得到两个预测正脸图像的眼睛部分的图像,然后将这两个预测正脸图像的眼睛部分的图像输入到预测模型中,执行步骤S403。
需要说明的是,如上所述一个标定注视点可以用于检测不止一个目标注视点的坐标,因此在执行步骤S403时,不需要重复对标定注视点的人脸图像进行处理。继续以上述T1、T2和T3三个不同时刻为例,T1早于T2,T2早于T3,且3个时刻的注视点的坐标不同。三个时刻的人脸图像可能是分别在三个时刻实时获取,也可能是已经存储好的图像序列。假设T1时刻的标定注视点的图像就是上述第一人脸图像,T2时刻的注视点的图像就是上述第二人脸图像。则T1时刻的注视点是标定注视点,且坐标已知;T2时刻的注视点是上述目标注视点,坐标未知;T3时刻的注视点是与T2时刻的注视点的坐标不同的其他目标注视点,坐标未知。因此,相当于对T1、T2、T3三个时刻的图像分别执行S402正脸化处理的操作,分别得到三个时刻的预测正脸图像。在执行S403时,则可以是预测模型对T1和T2两个时刻的预测正脸图像进行处理,得到T2相对于T1时刻的偏移量;预测模型对T1和T3两个时刻的预测正脸图像进行处理,得到T3相对于T1时刻的偏移量。也就是说,如果目标注视点不止一个时,可以保存标定注视点对应的中间处理结果,用于其他目标注视点的检测,此处中间处理结果为T1时刻的预测正脸图像。
在一些实现方式中,预测模型可以包括特征提取网络和全连接层网络,特征提取网络用于提取输入到预测模型的两个人脸图像的视线向量;全连接层网络用于对视线向量进行融合,得到两个人脸图像对应的注视点的偏移量。则在执行步骤S403时,可以包括下面的操作:
特征提取网络对第一预测正脸图像和第二预测正脸图像进行特征提取,得到第一预测正脸图像的视线向量和第二预测正脸图像的视线向量;
全连接层网络对第一预测正脸图像的视线向量和第二预测正脸图像的视线向量进行融合处理,得到目标注视点与标定注视点之间的偏移量。
如上所述,如果目标注视点不止一个时,可以保存标定注视点对应的中间处理结果,用于其他目标注视点的检测。在一些实现方式中,该中间处理结果可以是特征提取网络对标定注视点对应的预测正脸图像进行特征提取后得到的视线向量。
继续以上述T1、T2和T3三个不同时刻为例,在执行S403时,可以是特征提取网络分别对T1、T2和T3三个时刻的预测正脸图像进行处理,分别得到三个时刻的视线向量;全连接层对T1和T2两个时刻的视线向量进行处理,得到T2相对于T1时刻的偏移量;全连接层对T1和T3两个时刻的视线向量进行处理,得到T3相对于T1时刻的偏移量。这样可以减少重复对标定注视点的图像进行处理。
S404、根据标定注视点的坐标和上述偏移量,得到目标注视点的坐标。
也就是说,在标定注视点的坐标基础上加上S403求取的偏移量,就可以得到目标注视点的坐标。
图4所示方法,先将图像进行正脸化处理,相当于填充了侧脸图像中眼睛缺失的信息,如果本身是正脸图像也依然能使得正脸图像中的眼睛的信息更加丰富,之后在信息更加丰富的图像的基础上引入标定注视点,通过求取标定注视点和待测点的偏移量来综合得到待测点的坐标,能够避免个体差异带来的影响,从而能够有效提高注视点检测的准确性。
不同的人的眼睛是不同的,所以即使在其他条件完全相同的情况下观察同一个点,依然会产生不同的眼部信息。在传统方案中,如果针对每个人单独设计视线检测方法,则兼容性太差,且成本太高,如果采用统一的无差别的检测方法,则这种个体差异带来的误差无法消除。而在本申请实施例中,则通过引入标定注视点解决了这一问题,由于标定注视点和目标注视点都是同一个人注视屏幕的情况下采集的,且先求取偏移量再结合标定注视点的已知坐标来确定目标注视点,有效消除了个体差异影响,准确性会有效提高。上述正脸化处理和利用标定注视点求取偏移量再确定目标注视点坐标的方法,准确性有效提高,使得能够满足注视点检测的高精度要求,从而能够实现更加精准的眼动交互。
在一种实现方式中,图4所示方法还可以包括:根据目标注视点的坐标,执行目标注视点处的操作。相应操作可以包括点击、滑动、触控、解锁、翻页、对焦或游戏操作中的至少一项。例如,图1所示场景中,就是执行注视点A或注视点B的相应操作;在图2所示场景中,就是执行打开计算器的操作,执行结果如控制界面250所示;在图3所示场景中,就是执行打开宝箱的操作,也就是游戏操作的一例,执行结果如控制界面350所示。其他操作不在逐一列举。
图5是本申请实施例的一种正脸模型的训练方法的示意性流程图。
S501、获取训练数据,该训练数据包括正脸图像样本和与正脸图像样本对应的多个侧脸图像样本。
假设训练数据中包括多个人的人脸图像,则同一个人注视同一个点的正脸图像和侧脸图像是一组,也就是上述正脸图像样本和与该正脸图像样本对应的多个侧脸图像样本。可以让同一个人注视一个固定点来采集其正脸图像和侧脸图像,采集到的正脸图像和侧脸图像即可以作为上述训练数据。也就是说,与正脸图像样本对应的多个侧脸图像样本可以理解为,注视点与这个正脸图像样本相同,且与这个正脸图像样本中的人是同一个人的多个侧脸图像。
应理解,图5所示方法主要目的是训练得到一个具备正脸化能力的模型,所以侧脸转正脸的能力更为重要,因此在训练时,正脸图像样本主要作为标签使用,也就是参照图像,而侧脸图像样本则作为训练图像使用。例如,获取了用户A的注视A点的3张正脸图像和10张侧脸图像,则这10张侧脸图像对应的参照图像就可以是这3张正脸图像中的任意一张。当然这3张正脸图像也可以作为训练图像,此时这3张正脸图像对应的参照图像可以是这3张正脸图像中的某张图像,也可以额外拍摄一张用户A的注视A点的正脸图像作为参照图像。还应理解,上述数值只是为了便于理解方案,不存在限定。
在一些实现方式中,正脸图像样本和侧脸图像样本还可以是只有人脸部分的图像,也就是说,可以先对正脸图像和侧脸图像进行预处理,将其中的人脸部分的图像区域提取出来作为上述图像样本。这种方式能够消除图像中背景元素的干扰,且减少了对背景部分的图像数据的处理,所以可以达到在提高训练效率和模型精度的目的。
S502、利用训练数据对正脸模型进行训练,得到目标正脸模型。
该正脸模型包括编码器和解码器,编码器用于提取输入到编码器的图像的特征向量,解码器用于对特征向量进行处理得到预测正脸图像。
正脸模型也可以称之为正脸转换模型或者侧脸转正脸模型等,主要目的就是将输入到正脸模型的人脸图像中的脸变成正脸。如果输入的人脸图像中本身就是正脸,则相当于微调整,经过正脸模型的正脸化处理后的预测正脸图像与原本输入的正脸图像差别不大。如果输入的人脸图像中是侧脸,则相当于将侧脸转成正脸的角度,即坐标系转换之后,还对缺失的脸部信息进行填充,从而得到预测正脸图像。
目标正脸模型可以用于执行上述步骤S402。
在一种实现方式中,经过编码器处理后得到的特征向量可以包括人脸特征向量和视线特征向量。其中,人脸特征向量可以理解为包括人脸的五官、脸型等特点的特征向量。视线向量则可以理解为包括眼睛瞳孔、眼球角度等特点的特征向量。
在一种实现方式中,可以只将人脸特征向量输入到解码器进行处理,以得到预测正脸图像。在这种实现方式中,解码器只对人脸特征向量进行处理,而不对视线特征向量进行处理,能够降低运算复杂度,简化训练过程,但训练得到的解码器只具备对人脸特征向量的处理的能力而不具备对视线特征向量处理的能力。应理解,即使不对视线特征向量进行处理,依然可以实现侧脸转正脸的任务,也就是,利用上述实现方式训练得到的正脸模型是具备将侧脸转正脸的能力的。
在另一种实现方式中,可以将人脸特征向量和视线特征向量都输入到解码器进行处理,以得到预测正脸图像。在这种实现方式中,解码器需要对人脸特征向量和视线特征向量都进行处理,运算复杂度相对提高,但训练得到的解码器具备对两种向量的处理的能力。这样的正脸模型,得到的预测正脸图像中包括更加丰富的视线相关的信息,使得这样的预测正脸图像更加适合注视点检测的任务,所以利用这样的预测正脸图像来检测注视点的话,检测结果的精度也会进一步提高。简而言之,上述实现方式在使得正脸模型具备侧脸转正脸的能力的基础上,进一步契合注视点检测的任务,加强了对于视线相关的特征的处理能力,使得预测正脸图像包含更多的视线相关的信息。
在一个例子中,解码器可以具体用于对人脸特征向量进行处理,得到预测正脸图像。在这个例子中,当执行步骤S502时,可以将侧脸图像样本输入到编码器,得到人脸特征向量和视线特征向量;将人脸特征向量输入到解码器,得到预测正脸图像;根据预测正脸图像和该侧脸图像样本对应的正脸图像样本(即该侧脸图像样本的参照图像),调整编码器和解码器的参数,从而得到训练后的正脸模型。在这例子中,当执行步骤S502时,可以将正脸图像样本输入到编码器,得到人脸特征向量和视线特征向量;将人脸特征向量输入到解码器,得到预测正脸图像;根据预测正脸图像和该正脸图像样本的标签图像(即该正脸图像样本的参照图像),调整编码器和解码器的参数,从而得到训练后的正脸模型。
在另一个例子中,解码器可以具体用于对人脸特征向量和视线特征向量进行处理,得到预测正脸图像。在这个例子中,当执行步骤S502时,可以将侧脸图像样本输入到编码器,得到人脸特征向量和视线特征向量;将人脸特征向量和视线特征向量都输入到解码器,得到预测正脸图像;根据预测正脸图像和该侧脸图像样本对应的正脸图像样本(即该侧脸图像样本的参照图像),调整编码器和解码器的参数,从而得到训练后的正脸模型。在这例子中,当执行步骤S502时,可以将正脸图像样本输入到编码器,得到人脸特征向量和视线特征向量;将人脸特征向量和视线特征向量都输入到解码器,得到预测正脸图像;根据预测正脸图像和该正脸图像样本的标签图像(即该正脸图像样本的参照图像),调整编码器和解码器的参数,从而得到训练后的正脸模型。在另一种实现方式中,上述训练数据还包括注视点的已知坐标,也就是说,正脸图像样本和多个侧脸图像样本的共同注视点的坐标标签。
在一个例子中,当执行步骤S502时,将视线特征向量输入到全连接(fullyconnected,FC)层,得到预测注视点的坐标;根据预测注视点的坐标与注视点的已知坐标(即正脸图像样本和多个侧脸图像样本的共同注视点的坐标标签),调整编码器、解码器和全连接层的参数,从而得到训练后正脸模型。在这个例子中,增加了注视点这一约束,相当于增加了一项监督学习,通过注视点的这层约束,能够进一步提高目标正脸模型的准确性。
需要说明的是,在根据预测注视点的坐标与注视点的已知坐标,调整编码器、解码器和全连接层的参数时,对于编码器和全连接层是反向调节过程中直接调整其参数,也就是根据注视点的预测值和真实值(标签)之间的差值,直接影响编码器和全连接层的参数,而由于编码器和解码器之间的关联性,当编码器的参数发生变化时,会使得解码器的参数随之发生变化。因此,一次训练过程中,最终因为预测注视点的坐标与注视点的已知坐标而被调整的是编码器、解码器和全连接层的参数。
训练完成后得到的正脸模型即为目标正脸模型。
应理解,在这个例子中,全连接层是为了增加一项约束而设置的,所以可以不包括在目标正脸模型中。也就是说,目标正脸模型是训练完成后的编码器和解码器,而全连接层只在训练阶段参与训练,不在推理阶段参与正脸化处理的过程。
利用图5所示训练方法训练得到的目标正脸模型能够具备正脸化处理的能力,也就是可以将输入到正脸模型/目标正脸模型的人脸图像转化为正脸图像。由于该训练方法利用了同一个人的正脸图像和侧脸图像来训练,所以训练好的模型能够将侧脸转换成正脸,也就是坐标系转换的同时,还能将侧脸缺失的信息进行补充,真正意义上将侧脸转换为正脸。
为了进一步理解图5所示方案,下面结合图6进行介绍。图6是本申请实施例的另一种正脸模型的训练过程的示意图。图6可以看作是图5所示方法的一个具体示例。图6中的正脸模型包括编码器和解码器,是一种神经网络模型。
图6的(a)中示出了利用侧脸样本(即侧脸图像样本)进行训练的过程。如图6中(a)所示,将侧脸样本输入到编码器,经过编码器的特征提取,得到侧脸样本的人脸特征向量和视线特征向量,将人脸特征向量和视线特征向量输入到解码器,经过解码器对人脸特征向量和视线特征向量的处理,就可以得到预测正脸图像,该预测正脸图像可以理解为是对侧脸样本进行正脸化处理得到的。此时,可以根据预测正脸图像和侧脸样本对应的正脸图像(即侧脸样本的标签图像或参照图像)之间的差异,去调整编码器和解码器的参数,从而完成对正脸模型的一次训练。如图6中(a)所示,在该训练过程中,还包括对于注视点的处理,也就是将视线特征向量输入到FC层,经过FC层处理后会得到预测注视点坐标,也就是说,侧脸样本中注视点的预测值。此时,可以根据预测注视点坐标和侧脸样本的注视点标签(即侧脸样本的注视点的已知坐标)之间的差异,去调整编码器、解码器和FC层的参数,从而完成对正脸模型的一次训练。
图6的(b)中示出了利用正脸样本(即正脸图像样本)进行训练的过程。如图6中(b)所示,将正脸样本输入到编码器,经过编码器的特征提取,得到正脸样本的人脸特征向量和视线特征向量,将人脸特征向量和视线特征向量输入到解码器,经过解码器对人脸特征向量和视线特征向量的处理,就可以得到预测正脸图像,该预测正脸图像可以理解为是对正脸样本进行正脸化处理得到的。此时,可以根据预测正脸图像和正脸样本对应的正脸图像(即正脸样本的标签图像或参照图像)之间的差异,去调整编码器和解码器的参数,从而完成对正脸模型的一次训练。如图6中(b)所示,在该训练过程中,还包括对于注视点的处理,也就是将视线特征向量输入到FC层,经过FC层处理后会得到预测注视点坐标,也就是说,正脸样本中注视点的预测值。此时,可以根据预测注视点坐标和正脸样本的注视点标签(即正脸样本的注视点的已知坐标)之间的差异,去调整编码器、解码器和FC层的参数,从而完成对正脸模型的一次训练。
可以看出,在图6所示训练过程中,侧脸样本、正脸样本、注视点标签和标签图像都是参与训练的训练数据。其中,侧脸样本的标签图像是侧脸样本对应的正脸图像,正脸样本的标签图像可以是正脸样本对应的其他正脸图像,也可以是正脸样本本身。注视点的标签即为侧脸样本已知的注视点坐标或者正脸样本已知的注视点。例如,假设让用户注视某个特定点采集了多张正脸图像和多张侧脸图像,则这个特定点的坐标即为注视点标签,这多张正脸图像即为正脸样本,这多张侧脸图像即为侧脸样本,这多张正脸图像可以作为正脸样本和侧脸样本的标签图像。
图7是本申请实施例的一种预测模型的训练方法的示意性流程图。
S701、获取训练数据,该训练数据包括:第一注视点的第一人脸图像样本,第二注视点的第二人脸图像样本,以及第一注视点和第二注视点的偏移量标签。
可以理解为,该训练数据包括多个已知注视点的人脸图像样本,这些人脸图像样本不局限于正脸或侧脸,这些已知注视点可能是每个样本的注视点的坐标都已知,也可能是每两个样本的注视点之间的偏移量已知。
可选地,上述人脸图像样本也可以是只有人脸部分的图像,从而排除样本中背景元素的影响。上述人脸图像样本还可以是只有眼睛部分的图像,因为注视点主要与眼睛相关,而与人脸的其他部分关联性较低,所以可以只利用眼睛部分的图像作为上述人脸图像样本,但只利用眼睛部分的图像训练得到的预测模型,在进行推理阶段的操作时,需要先将待检测的图像进行预处理,使得输入到预测模型的时眼睛部分的图像。
上述第一注视点和第二注视点只是为了区分两个注视点不同,不存在其他限定,第一人脸图像样本和第二人脸图像样本只是为了分别对应第一注视点和第二注视点,同样不存在其他限定。
假设训练数据中包括多个人的人脸图像,则同一个人注视不同的点的人脸图像(可能是正脸也可能是侧脸)就可以作为上述训练数据中的人脸图像。
为了提高训练的效果还可以让同一个人从固定的位置,通过轻微的头部姿态的变化去得到人脸图像样本。
应理解,图7所示方法主要目的是训练得到一个具备预测注视点偏移量的能力的模型,因此在训练时,人脸图像样本既可以是正脸也可以是侧脸。但由于正脸会包括更加丰富的眼部信息,且本申请实施例还可以先对图像正脸化处理之后再进行预测,也就是输入到预测模型的人脸图像都是正脸(正脸图像样本或正脸化处理得到的预测正脸图像)。所以为了进一步提高训练效果,可以保证头部姿态的变化只是水平移动,也就是头部姿态的变化过程中人脸坐标系和图像采集设备的坐标系是平行的,从而产生的都是正脸图像,此时训练数据中的人脸图像样本都是正脸的样本。
需要说明的是,第一人脸图像样本和上文所述的第一人脸图像是不同的,第一人脸图像样本是训练阶段的样本图像,第一人脸图像是推理阶段的参与推理(即注视点检测的应用阶段)的标定注视点采集到的图像。第二人脸图像样本和上文所述的第二人脸图像是不同的,第二人脸图像样本是训练阶段的样本图像,第二人脸图像是推理阶段的目标注视点的图像,即注视点检测的应用阶段中需要推断出注视点的坐标的待处理图像。
S702、利用训练数据对预测模型进行训练,得到目标预测模型。
该预测模型用于对输入到预测模型的两个人脸图像进行处理,得到两个人脸图像对应的注视点之间的偏移量。
目标预测模型可以用于执行上述步骤S403。
在一种实现方式中,该预测模型包括特征提取网络和全连接层网络,特征提取网络用于提取输入到预测模型的人脸图像的视线特征向量,全连接层网络用于对视线特征向量进行融合,得到输入到预测模型的人脸图像对应的注视点的偏移量。
在一个例子中,当执行步骤S702时,可以将第一人脸图像样本和第二人脸图像样本分别输入到特征提取网络,分别得到第一人脸图像样本的视线特征向量和第二人脸图像样本的视线特征向量;将第一人脸图像样本的视线特征向量和第二人脸图像样本的视线特征向量输入到全连接层网络,得到预测偏移量,预测偏移量用于表示第一注视点与第二注视点之间的偏移量的预测值;根据预测偏移量和偏移量标签,调整特征提取网络和全连接层的参数,从而得到目标预测模型。
应理解,预测模型中的全连接层和正脸模型中的全连接层是相同的事物,但并不是同一个事物。
可选地,特征提取网络可以是卷积神经网络(convolutional neural networks,CNN)、深度神经网络(deep neural networks,DNN)或者其他能够对图像及逆行特征提取的神经网络。
利用图7所示训练方法训练得到的目标预测模型能够具备求取注视点偏移量的能力,也就是可以将输入到预测模型/目标预测模型的两个人脸图像中注视点之间的偏移量求取出来。由于该训练方法利用了已知注视点的人脸图像来训练,所以训练好的模型不会受个体差异的影响。举例说明,虽然不同人看同一个点的图像可能存在差异,但同一个人看两个点的两个图像之间的偏移或消除单个注视点带来的差异。且图7所示训练方法训练得到的目标预测模型的输入图像不受正脸或侧脸的限制。
为了进一步理解图7所示方案,下面结合图8进行介绍。图8是本申请实施例的另一种预测模型的训练过程的示意图。图8可以看作是图7所示方法的一个具体示例。图8中的预测模型包括特征提取网络和FC层,是一种神经网络模型。
如图8所示,将标定样本和测试样本输入到特征提取网络中,得到视线特征向量#1和视线特征向量#2,其中,视线特征向量#1和视线特征向量#2分别是标定样本和侧视图对应的视线特征向量。
如图8所示特征提取网络包括CNN和FC1层,也就是说,图8给出了一种特征提取网络可以是CNN和FC1层组合的一个示例。但应理解,由于CNN本身包括至少一个FC层,所以,也可以将CNN和FC1层组合看作是一个新的CNN。还应理解,图8只是给出了一种特征提取网络的示例,在实际场景中,可以按需选择或设计其他的特征提取网络,只要能够提取图像中的视线特征即可。
标定样本和测试样本都是人脸图像,且都是已知注视点的人脸图像。因此标定样本和测试样本可以随机从人脸图像样本中选取,不存在限定,此处只是为了便于理解方案区分命名。标定样本可以看作是上述第一注视点的第一人脸图像样本或第二注视点的第二人脸图像样本的一例,测试样本也可以看作是上述第一注视点的第一人脸图像样本或第二注视点的第二人脸图像样本的一例。
将视线特征向量#1和视线特征向量#2输入到FC2层,经过FC2层对视线特征向量#1和视线特征向量#2的融合处理,就可以得到预测偏移量,该预测偏移量可以理解为是标定样本中人的注视点和测试样本中人的注视点之间的偏移量的预测值。此时,可以根据预测偏移量和偏移量标签(即标定样本和测试样本中注视点的已知偏移量)之间的差异,去调整特征提取网络和FC2层的参数,从而完成对预测模型的一次训练。
图9是本申请实施例的一种视线检测过程的示意性流程图,图9可以看作是图4的一个示例,也就是利用训练好的模型进行推理的过程的示例,或者可以理解为利用训练好的模型进行注视点的检测的推理阶段的过程示例。
如图9所示,将已知坐标的标定图和目标图(即待检测的图或者待处理的图)输入到目标正脸模型,得到标定图的预测正脸图和目标图的预测正脸图。
标定图可以看作是上述标定注视点的第一人脸图像的一个示例,目标图可以看作是上述目标注视点的第二人脸图像的一个示例。因此标定图的注视点坐标是已知的,目标图中的注视点的坐标是需要进行检测的。标定图的预测正脸图可以看作是第一预测正脸图像的一个示例,目标图的预测正脸图可以看作是上述第二预测正脸图像的一个示例。标定图的预测正脸图在图中用标定预测正脸图表示,目标图的预测正脸图在图中用目标预测正脸图表示。
目标正脸模型可以看作是步骤S402中的正脸模型的一例。目标正脸模型可以利用图5或图6所示任意一种训练方法得到的目标正脸模型。
如图9所示,将标定图的预测正脸图和目标图的预测正脸图输入到目标预测模型,经过目标预测模型的处理之后就可以输出预测偏移量,该预测偏移量即为标定图对应的标定注视点和目标图对应的目标注视点之间的偏移量。
目标预测模型可以看作是步骤S403中的预测模型的一例。目标预测模型可以利用图7或图8所示任意一种训练方法得到的目标预测模型。
当知道上述偏移量之后,就可以结合标定注视点,确定出目标注视点的坐标。
需要说明的是,在图9所示场景中,一个标定图可以对应至少一个目标图。当一个标定图对应一个目标图时,过程如上,不再重复。当一个标定图对应多个目标图时,标定图不需要每次都经过目标正脸模型和目标预测模型的处理。假设目标图包括目标图1和目标图2,则在图9所示过程中,可以是目标正脸模型对标定图、目标图1和目标图2分别进行处理后分别得到标定预测正脸图、目标预测正脸图1和目标预测正脸图2;目标预测模型对标定预测正脸图和目标预测正脸图1进行处理,得到目标图1和标定图之间的预测偏移量;目标预测模型对标定预测正脸图和目标预测正脸图2进行处理,得到目标图2和标定图之间的预测偏移量。此外,由于目标预测模型可以包括特征提取网络和全连接层,为了便于理解以图8为例,则在图9所示过程中,可以是目标正脸模型对标定图、目标图1和目标图2分别进行处理后分别得到标定预测正脸图、目标预测正脸图1和目标预测正脸图2;目标预测模型中的特征提取网络(例如图8的CNN层和FC1层)分别对标定图、目标图1和目标图2进行处理后,分别得到标定图的视线特征向量、目标图1的视线特征向量1和目标图2的视线特征向量2;目标预测模型中的全连接层(例如图8中的FC2层)对标定图的视线特征向量和目标图1的视线特征向量1进行处理,得到目标图1和标定图之间的预测偏移量;目标预测模型中的全连接层(例如图8中的FC2层)对标定图的视线特征向量和目标图2的视线特征向量2进行处理,得到目标图2和标定图之间的预测偏移量。
上文主要结合附图对本申请实施例的方法进行了介绍。应理解,虽然如上所述的各实施例所涉及的流程图中的各个步骤依次显示,但是这些步骤并不是必然按照图中所示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。下面结合附图对本申请实施例的装置进行介绍。
图10是本申请实施例的一种注视点检测装置的示意图。如图10所示,该装置1000包括获取单元1001和处理单元1002。该装置1000可以是集成在计算设备中,也可以是独立于计算机设备的装置。
在一种实现方式中,该装置1000可以为图1中屏幕对应的计算机设备,或者设置该计算机设备中。
在另一种实现方式中,该装置1000还可以为图2或图3所示终端设备,或者设置该终端设备中。
该装置1000能够用于执行上文任意一种注视点检测方法。例如,获取单元1001可用于执行步骤S401,处理单元1002可用于执行步骤S402至S404。又例如,处理单元1002还可用于执行图9中目标正脸模型和目标预测模型执行的操作。又例如,处理单元1002还可以用于执行:根据目标注视点的坐标,执行目标注视点处的操作。相应操作可以包括点击、滑动、触控、解锁、翻页、对焦或游戏操作中的至少一项。
在一种实现方式中,装置1000还可以包括存储单元,用于存储人脸图像等数据。该存储单元可以是集成在处理单元1002中,也可以是独立于获取单元1001和处理单元1002之外的单元。
图11是本申请实施例的一种正脸模型的训练装置的示意图。如图11所示,该训练装置2000包括获取单元2001和训练单元2002。该训练装置2000可以是能够进行神经网络训练的计算机设备,例如服务器、云端设备等。
由于训练过程对于数据处理能力的要求较高,需要存储和运算的数据量都较大,所以像普通的手机、平板电脑等终端设备不会作为训练装置使用,训练装置往往是具备较强的数据处理能力的服务器、云端设备等数据处理设备,但这些数据处理设备只要具备能够进行基于眼睛动作的人机交互的条件,依然可以作为注视点检测装置使用。
该装置2000能够用于执行上文任意一种正脸模型的训练方法。例如,获取单元2001可用于执行步骤S501,训练单元2002可用于执行步骤S502。该装置2000能够用于执行图6所示训练过程的操作。
在一种实现方式中,训练装置2000还可以包括存储单元,用于存储训练数据等数据。该存储单元可以是集成在训练单元2002中,也可以是独立于获取单元2001和训练单元2002之外的单元。
图12是本申请实施例的一种预测模型的训练装置的示意图。如图12所示,该训练装置3000包括获取单元3001和训练单元3002。该训练装置3000可以是能够进行神经网络训练的计算机设备,例如服务器、云端设备等。
由于训练过程对于数据处理能力的要求较高,需要存储和运算的数据量都较大,所以像普通的手机、平板电脑等终端设备不会作为训练装置使用,训练装置往往是具备较强的数据处理能力的服务器、云端设备等数据处理设备,但这些数据处理设备只要具备能够进行基于眼睛动作的人机交互的条件,依然可以作为注视点检测装置使用。
该装置3000能够用于执行上文任意一种预测模型的训练方法。例如,获取单元3001可用于执行步骤S701,训练单元3002可用于执行步骤S702。该装置3000能够用于执行图8所示训练过程的操作。
在一种实现方式中,训练装置3000还可以包括存储单元,用于存储训练数据等数据。该存储单元可以是集成在训练单元3002中,也可以是独立于获取单元3001和训练单元3002之外的单元。
图13是本申请实施例的一种终端设备的硬件结构的示意图。图13所示终端设备100能够用于执行本申请实施例任意一种注视点检测方法。
在一种实现方式中,图13所示终端设备100可以为图2或图3所示终端设备。
如图13所示,该终端设备100包括:射频(radio frequency,RF)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、无线保真(wireless fidelity,WiFi)模块170、处理器180、以及摄像头190等部件。本领域技术人员可以理解,图13中示出的各个结构并不构成对终端设备100的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图13所示,RF电路110可用于收发信息或通话过程中,信号的接收和发送,例如可以将基站的下行信息接收后,给处理器180处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoise amplifier,LNA)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。在本申请实施例中,RF电路110可以用于执行获取人脸图像或注视点坐标的操作,例如,当RF电路110用于执行步骤S401时,相当于通过通信接口获取第一人脸图像和/或第二人脸图像的一个示例。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行终端设备100的各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。在本申请实施例中,存储器120可以用于存储人脸图像、注释点坐标、正脸模型、预测模型和注视点检测过程中产生的中间数据或者检测结果。
输入单元130可用于接收输入的数字或字符信息,以及产生与终端设备100的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选地,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板131。除了触控面板131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。以图2所示场景为例,输入单元130可以用于在控制界面210时执行输入触发眼控模式的操作。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端设备100的各种菜单。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图13中,触控面板131与显示面板141是作为两个独立的部件来实现终端设备100的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现终端设备100的输入和输出功能。
终端设备100还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端设备100移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端设备100姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端设备100还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与终端设备100之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端设备100,或者将音频数据输出至存储器120以便进一步处理。
WiFi属于短距离无线传输技术,终端设备100通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图13示出了WiFi模块170,但是可以理解的是,其并不属于终端设备100的必须构成,完全可以根据需要在不改变方案的本质的范围内而省略。
处理器180是终端设备100的控制中心,利用各种接口和线路连接整个终端设备100的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端设备100的各种功能和处理数据,从而对终端设备100进行整体监控。可选地,处理器180可包括一个或多个处理单元。可选地,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
在本申请实施例中,处理器180可以作为上述处理单元1002的一例,处理器180例如可以用于执行步骤S402至S404。
终端设备100还可以包括摄像头190。可选地,摄像头190在终端设备100的上的位置可以为前置的,也可以为后置的,本申请实施例对此不作限定。如果是实现对于图1至图3场景中的注视点的检测,则摄像头190为前置的。
可选地,摄像头190可以包括单摄像头、双摄像头或三摄像头等,本申请实施例对此不作限定。例如,摄像头190可以包括三摄像头,其中,一个为主摄像头、一个为广角摄像头、一个为长焦摄像头。可选地,当终端设备100包括多个摄像头时,这多个摄像头可以全部前置,或者全部后置,或者一部分前置、另一部分后置,本申请实施例对此不作限定。
在本申请实施例中,摄像头190可以为上述获取单元1001的一个示例,摄像头190可以用于执行本申请实施例的注视点检测方法中获取人脸图像的操作,例如可以用于执行S401。当摄像头190用于执行S401时,相当于利用摄像头190实时拍摄人脸图像,例如拍摄第一人脸图像或第二人脸图像。以图2所示场景为例,摄像头190为前置摄像头,用于在控制界面220和控制界面230中倒计时结束时拍摄人脸图像。以图3所示场景为例,摄像头190为前置摄像头,用于在控制界面320和控制界面330中倒计时结束时拍摄人脸图像。
应理解,图13只是给出了终端设备的一种硬件结构的示例,实际中终端设备的结构包括但不限于图13所示,且可以只包括图13所示的部分结构。
图14是本申请实施例的一种计算机设备的硬件结构示意图。如图14所示,该计算机设备4000包括:至少一个处理器4001(图14中仅示出一个)处理器、存储器4002以及存储在所述存储器4002中并可在所述至少一个处理器4001上运行的计算机程序4003,所述处理器4001执行所述计算机程序4003时实现上述任意一种训练方法中的步骤。例如,图14所示计算机设备4000能够用于执行图5至图8中任意一种训练方法的步骤。
本领域技术人员可以理解,图14仅仅是计算机设备的举例,并不构成对计算机设备限定,实际中计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
处理器4001可以是中央处理单元(central processing unit,CPU),其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(applicationspecific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器4002在一些实施例中可以是计算机设备4000的内部存储单元,例如计算机设备4000的硬盘或内存。存储器4002在另一些实施例中也可以是计算机设备4000的外部存储设备,例如计算机设备4000上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。可选地,存储器4002还可以既包括计算机设备4000的内部存储单元也包括外部存储设备。存储器4002用于存储操作***、应用程序、引导装载程序、数据以及其他程序等,例如所述计算机程序的程序代码等。存储器4002还可以用于暂时地存储已经输出或者将要输出的数据。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种终端设备,该终端设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意注视点检测方法中的步骤。
本申请实施例还提供了一种计算机设备,该计算机设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意训练方法中的步骤。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(read-only memory,ROM)、随机存取存储器(random accessmemory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (19)

1.一种注视点检测方法,其特征在于,包括:
获取标定注视点的第一人脸图像和目标注视点的第二人脸图像;
利用正脸模型对所述第一人脸图像和所述第二人脸图像进行正脸化处理,得到第一预测正脸图像和第二预测正脸图像,所述第一预测正脸图像表示所述第一人脸图像的预测正脸图像,所述第二预测正脸图像表示所述第二人脸图像的预测正脸图像;所述正脸模型的训练数据包括正脸图像样本和与所述正脸图像样本对应的多个侧脸图像样本;所述正脸图像样本和所述多个侧脸图像样本的注视点相同;所述训练数据还包括所述注视点的已知坐标;
利用预测模型对所述第一预测正脸图像和所述第二预测正脸图像进行处理,得到所述目标注视点与所述标定注视点的偏移量;
根据所述标定注视点的坐标和所述偏移量,得到所述目标注视点的坐标。
2.根据权利要求1所述的方法,其特征在于,所述正脸模型包括编码器和解码器;所述编码器用于提取输入到所述正脸模型的人脸图像的特征向量;所述解码器用于将所述特征向量转换为与输入到所述正脸模型的人脸图像对应的正脸图像;所述利用正脸模型对所述第一人脸图像和所述第二人脸图像进行正脸化处理,得到第一预测正脸图像和第二预测正脸图像,包括:
所述编码器对所述第一人脸图像进行特征提取,得到所述第一人脸图像的特征向量;所述解码器对所述第一人脸图像的特征向量进行处理,得到所述第一预测正脸图像;
所述编码器对所述第二人脸图像进行特征提取,得到所述第二人脸图像的特征向量;所述解码器对所述第二人脸图像的特征向量进行处理,得到所述第二预测正脸图像。
3.根据权利要求1所述的方法,其特征在于,所述预测模型包括特征提取网络和全连接层网络,所述特征提取网络用于提取输入到所述预测模型的两个人脸图像的视线向量;所述全连接层网络用于对所述视线向量进行融合,得到所述两个人脸图像对应的注视点的偏移量;所述利用预测模型对所述第一预测正脸图像和所述第二预测正脸图像进行处理,得到所述目标注视点与所述标定注视点的偏移量,包括:
所述特征提取网络对所述第一预测正脸图像和所述第二预测正脸图像进行特征提取,得到所述第一预测正脸图像的视线向量和所述第二预测正脸图像的视线向量;
所述全连接层网络对所述第一预测正脸图像的视线向量和所述第二预测正脸图像的视线向量进行融合处理,得到所述目标注视点与所述标定注视点之间的偏移量。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
根据所述目标注视点的坐标,执行所述目标注视点处的操作,所述操作包括点击、滑动、触控、解锁、翻页、对焦或游戏操作中的至少一项。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述标定注视点为屏幕中心点。
6.一种正脸模型的训练方法,其特征在于,包括:
获取训练数据,所述训练数据包括正脸图像样本和与所述正脸图像样本对应的多个侧脸图像样本;所述正脸图像样本和所述多个侧脸图像样本的注视点相同;所述训练数据还包括所述注视点的已知坐标;
利用所述训练数据对正脸模型进行训练,得到目标正脸模型,所述正脸模型包括编码器和解码器,所述编码器用于提取输入到所述编码器的图像的特征向量,所述解码器用于对所述特征向量进行处理得到预测正脸图像;
所述利用所述训练数据对所述正脸模型进行训练,得到目标正脸模型,包括:
将视线特征向量输入到全连接层,得到预测注视点的坐标;
根据所述预测注视点的坐标与所述注视点的已知坐标,调整所述编码器、所述解码器和所述全连接层的参数,从而得到所述目标正脸模型。
7.根据权利要求6所述的训练方法,其特征在于,所述特征向量包括人脸特征向量和视线特征向量;所述解码器具体用于,对所述人脸特征向量进行处理,得到所述预测正脸图像;
所述利用所述训练数据对所述正脸模型进行训练,得到目标正脸模型,包括:
将所述侧脸图像样本输入到所述编码器,得到所述人脸特征向量和所述视线特征向量;
将所述人脸特征向量输入到所述解码器,得到所述预测正脸图像;
根据所述预测正脸图像和所述正脸图像样本,调整所述编码器和所述解码器的参数,从而得到所述目标正脸模型。
8.根据权利要求7所述的训练方法,其特征在于,所述解码器还用于对所述视线特征向量进行处理,所述将所述人脸特征向量输入到所述解码器,得到所述预测正脸图像,包括:
将所述人脸特征向量和所述视线特征向量输入到所述解码器,得到所述预测正脸图像。
9.一种注视点检测装置,其特征在于,包括:
获取单元,用于获取标定注视点的第一人脸图像和目标注视点的第二人脸图像;
处理单元,用于执行以下操作:
利用正脸模型对所述第一人脸图像和所述第二人脸图像进行正脸化处理,得到第一预测正脸图像和第二预测正脸图像,所述第一预测正脸图像表示所述第一人脸图像的预测正脸图像,所述第二预测正脸图像表示所述第二人脸图像的预测正脸图像;所述正脸模型的训练数据包括正脸图像样本和与所述正脸图像样本对应的多个侧脸图像样本;所述正脸图像样本和所述多个侧脸图像样本的注视点相同;所述训练数据还包括所述注视点的已知坐标;
利用预测模型对所述第一预测正脸图像和所述第二预测正脸图像进行处理,得到所述目标注视点与所述标定注视点的偏移量;
根据所述标定注视点的坐标和所述偏移量,得到所述目标注视点的坐标。
10.根据权利要求9所述的装置,其特征在于,所述正脸模型包括编码器和解码器;所述编码器用于提取输入到所述正脸模型的人脸图像的特征向量;所述解码器用于将所述特征向量转换为与输入到所述正脸模型的人脸图像对应的正脸图像;所述处理单元具体用于:
利用所述编码器对所述第一人脸图像进行特征提取,得到所述第一人脸图像的特征向量;所述解码器对所述第一人脸图像的特征向量进行处理,得到所述第一预测正脸图像;
利用所述编码器对所述第二人脸图像进行特征提取,得到所述第二人脸图像的特征向量;所述解码器对所述第二人脸图像的特征向量进行处理,得到所述第二预测正脸图像。
11.根据权利要求9所述的装置,其特征在于,所述预测模型包括特征提取网络和全连接层网络,所述特征提取网络用于提取输入到所述预测模型的两个人脸图像的视线向量;所述全连接层网络用于对所述视线向量进行融合,得到所述两个人脸图像对应的注视点的偏移量;所述处理单元具体用于:
利用所述特征提取网络对所述第一预测正脸图像和所述第二预测正脸图像进行特征提取,得到所述第一预测正脸图像的视线向量和所述第二预测正脸图像的视线向量;
利用所述全连接层网络对所述第一预测正脸图像的视线向量和所述第二预测正脸图像的视线向量进行融合处理,得到所述目标注视点与所述标定注视点之间的偏移量。
12.根据权利要求9至11中任一项所述的装置,其特征在于,所述处理单元还用于:
根据所述目标注视点的坐标,执行所述目标注视点处的操作,所述操作包括点击、滑动、触控、解锁、翻页、对焦或游戏操作中的至少一项。
13.根据权利要求9至11中任一项所述的装置,其特征在于,所述标定注视点为屏幕中心点。
14.一种正脸模型的训练装置,其特征在于,包括:
获取单元,用于获取训练数据,所述训练数据包括正脸图像样本和与所述正脸图像样本对应的多个侧脸图像样本;所述正脸图像样本和所述多个侧脸图像样本的注视点相同;所述训练数据还包括所述注视点的已知坐标;
训练单元,用于利用所述训练数据对正脸模型进行训练,得到目标正脸模型,所述正脸模型包括编码器和解码器,所述编码器用于提取输入到所述编码器的图像的特征向量,所述解码器用于对所述特征向量进行处理得到预测正脸图像;
所述训练单元具体用于:
将视线特征向量输入到全连接层,得到预测注视点的坐标;
根据所述预测注视点的坐标与所述注视点的已知坐标,调整所述编码器、所述解码器和所述全连接层的参数,从而得到所述目标正脸模型。
15.根据权利要求14所述的训练装置,其特征在于,所述特征向量包括人脸特征向量和视线特征向量;所述解码器具体用于,对所述人脸特征向量进行处理,得到所述预测正脸图像;所述训练单元具体用于:
将所述侧脸图像样本输入到所述编码器,得到所述人脸特征向量和所述视线特征向量;
将所述人脸特征向量输入到所述解码器,得到所述预测正脸图像;
根据所述预测正脸图像和所述正脸图像样本,调整所述编码器和所述解码器的参数,从而得到所述目标正脸模型。
16.根据权利要求15所述的训练装置,其特征在于,所述解码器还用于对所述视线特征向量进行处理,所述训练单元具体用于:将所述人脸特征向量和所述视线特征向量输入到所述解码器,得到所述预测正脸图像。
17.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的方法。
18.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求6至8中任一项所述的方法。
19.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项,或6至8中任一项所述的方法。
CN202210932760.0A 2022-08-04 2022-08-04 注视点检测方法及装置 Active CN116030512B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210932760.0A CN116030512B (zh) 2022-08-04 2022-08-04 注视点检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210932760.0A CN116030512B (zh) 2022-08-04 2022-08-04 注视点检测方法及装置

Publications (2)

Publication Number Publication Date
CN116030512A CN116030512A (zh) 2023-04-28
CN116030512B true CN116030512B (zh) 2023-10-31

Family

ID=86080165

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210932760.0A Active CN116030512B (zh) 2022-08-04 2022-08-04 注视点检测方法及装置

Country Status (1)

Country Link
CN (1) CN116030512B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117711054A (zh) * 2023-05-12 2024-03-15 荣耀终端有限公司 一种数据的检验方法、电子设备及介质
CN117711040A (zh) * 2023-05-24 2024-03-15 荣耀终端有限公司 标定方法和电子设备

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011075082A1 (en) * 2009-12-14 2011-06-23 Agency For Science, Technology And Research Method and system for single view image 3 d face synthesis
CN102662476A (zh) * 2012-04-20 2012-09-12 天津大学 一种视线估计方法
CN105488834A (zh) * 2015-12-01 2016-04-13 网易(杭州)网络有限公司 角色面部朝向的调整方法及装置
JP2016099759A (ja) * 2014-11-20 2016-05-30 国立大学法人静岡大学 顔検出方法、顔検出装置、及び顔検出プログラム
CN109901716A (zh) * 2019-03-04 2019-06-18 厦门美图之家科技有限公司 视线点预测模型建立方法、装置及视线点预测方法
CN110018733A (zh) * 2018-01-10 2019-07-16 北京三星通信技术研究有限公司 确定用户触发意图的方法、设备和存储器设备
CN111428667A (zh) * 2020-03-31 2020-07-17 天津中科智能识别产业技术研究院有限公司 一种基于解耦表达学习生成对抗网络的人脸图像转正方法
WO2020186867A1 (zh) * 2019-03-18 2020-09-24 北京市商汤科技开发有限公司 注视区域检测方法、装置及电子设备
CN111723596A (zh) * 2019-03-18 2020-09-29 北京市商汤科技开发有限公司 注视区域检测及神经网络的训练方法、装置和设备
CN112181128A (zh) * 2019-07-04 2021-01-05 北京七鑫易维信息技术有限公司 具有计算资源自适应的视线估计方法及装置
WO2021024905A1 (ja) * 2019-08-02 2021-02-11 オムロン株式会社 画像処理装置、モニタリング装置、制御システム、画像処理方法、コンピュータプログラム、及び記憶媒体
WO2021082635A1 (zh) * 2019-10-29 2021-05-06 深圳云天励飞技术股份有限公司 一种关注区域检测方法、装置、可读存储介质及终端设备
WO2021218238A1 (zh) * 2020-04-29 2021-11-04 华为技术有限公司 图像处理方法和图像处理装置
CN113743172A (zh) * 2020-05-29 2021-12-03 魔门塔(苏州)科技有限公司 一种人员注视位置检测方法及装置
CN113936324A (zh) * 2021-10-29 2022-01-14 Oppo广东移动通信有限公司 注视检测方法、电子设备的控制方法及相关设备
CN114283265A (zh) * 2021-12-03 2022-04-05 北京航空航天大学 一种基于3d旋转建模的无监督人脸转正方法

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011075082A1 (en) * 2009-12-14 2011-06-23 Agency For Science, Technology And Research Method and system for single view image 3 d face synthesis
CN102662476A (zh) * 2012-04-20 2012-09-12 天津大学 一种视线估计方法
JP2016099759A (ja) * 2014-11-20 2016-05-30 国立大学法人静岡大学 顔検出方法、顔検出装置、及び顔検出プログラム
CN105488834A (zh) * 2015-12-01 2016-04-13 网易(杭州)网络有限公司 角色面部朝向的调整方法及装置
CN110018733A (zh) * 2018-01-10 2019-07-16 北京三星通信技术研究有限公司 确定用户触发意图的方法、设备和存储器设备
CN109901716A (zh) * 2019-03-04 2019-06-18 厦门美图之家科技有限公司 视线点预测模型建立方法、装置及视线点预测方法
CN111723828A (zh) * 2019-03-18 2020-09-29 北京市商汤科技开发有限公司 注视区域检测方法、装置及电子设备
WO2020186867A1 (zh) * 2019-03-18 2020-09-24 北京市商汤科技开发有限公司 注视区域检测方法、装置及电子设备
CN111723596A (zh) * 2019-03-18 2020-09-29 北京市商汤科技开发有限公司 注视区域检测及神经网络的训练方法、装置和设备
CN112181128A (zh) * 2019-07-04 2021-01-05 北京七鑫易维信息技术有限公司 具有计算资源自适应的视线估计方法及装置
WO2021024905A1 (ja) * 2019-08-02 2021-02-11 オムロン株式会社 画像処理装置、モニタリング装置、制御システム、画像処理方法、コンピュータプログラム、及び記憶媒体
WO2021082635A1 (zh) * 2019-10-29 2021-05-06 深圳云天励飞技术股份有限公司 一种关注区域检测方法、装置、可读存储介质及终端设备
CN111428667A (zh) * 2020-03-31 2020-07-17 天津中科智能识别产业技术研究院有限公司 一种基于解耦表达学习生成对抗网络的人脸图像转正方法
WO2021218238A1 (zh) * 2020-04-29 2021-11-04 华为技术有限公司 图像处理方法和图像处理装置
CN113743172A (zh) * 2020-05-29 2021-12-03 魔门塔(苏州)科技有限公司 一种人员注视位置检测方法及装置
CN113936324A (zh) * 2021-10-29 2022-01-14 Oppo广东移动通信有限公司 注视检测方法、电子设备的控制方法及相关设备
CN114283265A (zh) * 2021-12-03 2022-04-05 北京航空航天大学 一种基于3d旋转建模的无监督人脸转正方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Person-independent 3D Gaze Estimation using Face Frontalization;L´ aszl´ o A. Jeni 等;《2016 IEEE Conference on Computer Vision and Pattern Recognition Workshops》;第2016年卷;第792-800页 *
基于编解码网络的多姿态人脸图像正面化方法;徐海月 等;《中国科学》;第49卷(第4期);第450-463页 *

Also Published As

Publication number Publication date
CN116030512A (zh) 2023-04-28

Similar Documents

Publication Publication Date Title
CN110058694B (zh) 视线追踪模型训练的方法、视线追踪的方法及装置
CN116030512B (zh) 注视点检测方法及装置
CN111985265B (zh) 图像处理方法和装置
CN107832836B (zh) 无模型深度增强学习探索方法及装置
CN110263213B (zh) 视频推送方法、装置、计算机设备及存储介质
KR20210111833A (ko) 타겟의 위치들을 취득하기 위한 방법 및 장치와, 컴퓨터 디바이스 및 저장 매체
EP3933552B1 (en) Method and device for determining gaze position of user, storage medium, and electronic apparatus
CN111526476B (zh) 数据传输方法、数据传输装置、存储介质与终端设备
CN111209812A (zh) 目标人脸图片提取方法、装置及终端设备
CN110516113B (zh) 一种视频分类的方法、视频分类模型训练的方法及装置
CN115718913B (zh) 一种用户身份识别方法及电子设备
CN111432245A (zh) 多媒体信息的播放控制方法、装置、设备及存储介质
US11106915B1 (en) Generating in a gaze tracking device augmented reality representations for objects in a user line-of-sight
CN110837858A (zh) 网络模型训练方法、装置、计算机设备及存储介质
WO2018171196A1 (zh) 一种控制方法、终端及***
CN111589138A (zh) 动作预测方法、装置、设备及存储介质
US20230368453A1 (en) Controlling computer-generated facial expressions
CN204166478U (zh) 头戴式智能设备
US20230367002A1 (en) Controlling computer-generated facial expressions
CN111310526B (zh) 目标跟踪模型的参数确定方法、装置及存储介质
CN114648315A (zh) 虚拟面试的方法、装置、设备及存储介质
CN113900519A (zh) 注视点获取方法、装置以及电子设备
CN114814800A (zh) 基于超声回波的对象识别方法、装置及存储介质
CN116158077A (zh) 一种优化运动矢量的方法及其相关设备
CN117130472B (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
GR01 Patent grant
GR01 Patent grant