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

一种基于单目标的视线交互方法及装置

文献发布时间:2023-06-19 16:04:54



技术领域

本发明属于机器视觉和人机交互领域,涉及几何方法的注视点估计,特别涉及一种基于单目标的视线交互方法及装置。

背景技术

视线跟踪是一项科学应用技术,用户无需触摸屏幕即可对屏幕内容进行操作。从原理上看,视线跟踪主要是研究眼球运动信息的获取、建模和模拟,用途颇广。

视线跟踪技术已成为心理学、神经营销学、神经认知、用户体验、基础研究及市场研究等多个领域视觉行为和人类行为的技术手段之一。该技术还可以用于医学分析和筛查。从眼动的历史发展进程来看,早期的眼动追踪系统是侵入性的且不能移动,受限非常严重,仅在有限的实验中使用,并且在现在社会受到伦理方面的考验。随着眼动追踪系统的发展,现代的眼动追踪系统利用红外光进行捕捉眼球运动,该系统是非侵入的且更加方便易用。

当人的眼睛看向不同方向时,眼部会有细微的变化,这些变化会产生可以提取的特征,计算机可以通过图像捕捉或扫描提取这些特征,从而实时追踪眼睛的变化,预测用户的状态和需求,并进行响应,达到用眼睛控制设备的目的。通过视线跟踪技术使用者可以更高效的与电子设备进行交互,并且操作者体验感更加准确与自然。

比如当下流行的短视频软件,需要自己去手动切换,但对于一些残疾人可能不太方便,另外,当人的眼睛看向不同方向时,眼部会有细微的变化;因此,基于上述因素考虑,如何通过眼部的变化实现对播放视频的相关操作,成为当下亟待解决的问题。

发明内容

本发明的主要目的在于提供一种基于单目标的视线交互方法及装置,可解决一些人无法对屏幕内播放视频进行手动操作的问题,可用来确定观看者的视线是否在电脑屏幕内进而对屏幕内播放的视频进行操作,在没有人为操纵的情况下,可判断观看者的行为进而对视频的播放进行操作。

为实现上述目的,本发明采取的技术方案为:

第一方面,本发明实施例提供一种基于单目标的视线交互方法,包括:通过屏幕上的摄像头采集观看者的图像;

采用预设模型对所述图像进行人脸识别,得到人脸区域并确定眼部区域图像;

在所述眼部区域图像中提取瞳孔中心参数;

根据所述瞳孔中心参数,获得视线方向;

根据所述视线方向,控制所述屏幕内播放的视频执行相应的操作。

进一步地,采用预设模型对所述图像进行人脸识别,得到人脸区域并确定眼部区域图像;包括:

通过调用dlib库进行训练获得HOG特征结合SVM分类器,对单帧图像进行人脸识别扫描,获得68个标记点位置;

根据所述68个标记点位置中的关键点位置确定左右眼区域图像。

进一步地,根据所述68个标记点位置中的关键点位置确定左右眼区域图像,包括:

对输入的第一帧图像进行通道分离和灰度转换;

根据获取的68个标记点位置,确定出人脸ROI;

从所述人脸ROI区域中,根据36-41关键点确定右眼区域,根据42-47 确定左眼区域。

进一步地,在所述眼部区域图像中提取瞳孔中心参数,包括:

从所述右眼区域、左眼区域中定位瞳孔,结合瞳孔的圆几何性和灰度分布特性,利用梯度一致方法确定瞳孔中心参数。

进一步地,根据所述视线方向,控制所述屏幕内播放的视频执行相应的操作,包括:

将所述观看者在屏幕前的运动分解为水平运动和垂直运动;

根据所述水平运动,确定观看者视线映射到屏幕上的注意点;

当所述注意点在屏幕内时,控制所述屏幕继续播放当前视频。

进一步地,根据所述视线方向,控制所述屏幕内播放的视频执行相应的操作,还包括:

当所述注意点不在屏幕内时,控制所述屏幕切换播放下一视频。

进一步地,根据所述水平运动,确定观看者视线映射到屏幕上的注意点,包括:

构建以屏幕上的摄像头为原点的坐标系,确定观看者的位置坐标F及其到屏幕所在平面的垂线垂点坐标G(x,y,z),并根据屏幕尺寸确定观看者位置坐标到屏幕右侧交点A

根据观看者的位置坐标F、垂点坐标G、A

(1)若观看者视线角度大于0时,则观看者在摄像头左侧,视线向右观看,分为两种情况:

1.1)当|x|<|x

1.2)当|x|>|x

(2)若观看者视线角度小于0时,则观看者在摄像头右侧,视线向左观看,分为两种情况:

2.1)当|x|<|x

2.2)当|x|>|x

第二方面,本发明实施例还提供一种基于单目标的视线交互装置,包括:

采集模块,用于通过屏幕上的摄像头采集观看者的图像;

识别模块,采用预设模型对所述图像进行人脸识别,得到人脸区域并确定眼部区域图像;

提取模块,在所述眼部区域图像中提取瞳孔中心参数;

视线获得模块,根据所述瞳孔中心参数,获得视线方向;

控制模块,用于根据所述视线方向,控制所述屏幕内播放的视频执行相应的操作。

与现有技术相比,本发明具有如下有益效果:

一种基于单目标的视线交互方法,包括:通过屏幕上的摄像头采集观看者的图像;采用预设模型对所述图像进行人脸识别,得到人脸区域并确定眼部区域图像;在所述眼部区域图像中提取瞳孔中心参数;根据所述瞳孔中心参数,获得视线方向;根据所述视线方向,控制所述屏幕内播放的视频执行相应的操作。该方法可用来确定观看者的视线是否在电脑屏幕内进而对屏幕内播放的视频进行操作,在没有人为操纵的情况下,可判断观看者的行为进而对视频的播放进行操作,交互更加简单方便。

附图说明

图1为本发明实施例提供的基于单目标的视线交互方法的流程图;

图2为本发明实施例提供的基于单目标的视线交互方法的原理图;

图3为本发明实施例提供的检测人脸的68个关键点的示意图;

图4a为本发明实施例提供的观察者位置F的与屏幕所在平面的垂线垂足 G在屏幕范围内、且位于摄像头左侧的平面分析图;

图4b为本发明实施例提供的观察者位置F的与屏幕所在平面的垂线垂足 G不在屏幕范围内、且位于屏幕左侧的平面分析图;

图4c为图4a的三维分析图;

图4d为本发明实施例提供的观察者位置F的与屏幕所在平面的垂线垂足G在屏幕范围内、且位于摄像头右侧的平面分析图;

图4e为本发明实施例提供的观察者位置F的与屏幕所在平面的垂线垂足 G不在屏幕范围内、且位于屏幕右侧的平面分析图;

图5为本发明实施例提供的人脸特征点检测示意图;

图6为本发明实施例提供的瞳孔中心提取效果图;

图7为本发明实施例提供的最终展示效果图;

图8为本发明实施例提供的基于单目标的视线交互装置的框图。

具体实施方式

为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。

在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”“前端”、“后端”、“两端”、“一端”、“另一端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

权衡适用人群和算法的鲁棒性提出了一种基于单目标的视线交互方法及装置,其中,该方法可以通过获取观看者眼睛的状态决定是不是要进行视频切换操作。本方法还可以用于视频推广方面,用以判断用户是不是喜欢此类视频,然后对用户进行个性化推广等。

参照图1所示,本发明实施例提供的基于单目标的视线交互方法,包括:

S10、通过屏幕上的摄像头采集观看者的图像;

S20、采用预设模型对所述图像进行人脸识别,得到人脸区域并确定眼部区域图像;

S30、在所述眼部区域图像中提取瞳孔中心参数;

S40、根据所述瞳孔中心参数,获得视线方向;

S50、根据所述视线方向,控制所述屏幕内播放的视频执行相应的操作。

该方法通过识别人脸,定位瞳孔,而后判断观看者注意力是否在屏幕内从而对屏幕内播放的视频进行操作。具体地,通过使用电脑自带摄像头采集到观看者的图像,利用检测模型检测人脸并确定眼部区域,在眼区域中提取眼球中心、虹膜中心等眼参数信息进行视线估计,进而得出视线方向,通过计算判断视线是否在屏幕内,期间设置一个阈值,超出阈值视为注意力没有在屏幕内,然后对视频进行相应的操作。

下面分别对上述各个步骤进行详细的说明:

本发明将计算机网络摄像头获取的视频,通过判断屏幕前的观看者注意力是否在屏幕内,对屏幕内播放的视频进行操作,其原理图如图2所示。

(1)在步骤S10中,比如,在屏幕顶部中间位置设置摄像头,通过该屏幕上的摄像头采集观看者的图像,可方便使用者交互使用,也简化后续步骤的计算过程。

(2)在步骤S20中,通过调用dlib库的人脸模型定位人脸并检测人脸的68个关键点,如图3所示。dlib库作为Python库提供的第三方库,不但是一个很好的机器学习库,还能够实现在常见复杂的软件中解决实际问题,例如人工智能、人脸识别等高性能计算环境。本实验调用dlib库提供的人脸 68个特征点模型进行人脸图像的对比和特征点提取。其模型是采用HOG特征结合SVM分类器,用来进行对单帧图像里人脸的识别扫描,进而获取68 个标记点位置和建立相应的坐标系。

根据定位的68个关键点,由36~41关键点确定右眼区域,由42~45关键点确定左眼区域。

①对输入图像预处理:将摄像头获取的第一帧图像进行通道分离和灰度转换。

②确定人脸ROI:根据获取的人脸特征点的坐标就可以确定出人脸ROI。

③提取人眼ROI:从人脸区域中选取眼部区域(根据获取的人眼关键点确定左右眼ROI)。

(3)在步骤S30中,从眼部区域中定位瞳孔,结合瞳孔的圆几何性和灰度分布特性,使用利用梯度一致方法确定瞳孔中心。

人眼的眼球由白色巩膜以及深色的虹膜两部分组成,所以在虹膜与巩膜的交界处会存在很高的对比度,产生较高的梯度值,方向为虹膜中心点与边缘点连线向外的方向。在每副图像当中,可以计算出像素点的梯度包括幅值与方向,眼部图像越是靠近眼球中心的位置点,灰度值就会越低,就会有更多的梯度方向的连线交于该点。中心位置就是在找梯度方向上的直线相交最多的那个点。虹膜中心点的提取工作在注视点估计算法当中有着十分重要地位,目前已经有一些算法可以用来提取人眼虹膜中心点的位置坐标,但这些算法往往存在一定的不足,例如对低像素的图片处理效果不好,对光照变化敏感,鲁棒性不高,计算速度慢,普适性差等问题。鉴于目前算法中存在的问题,本发明实施例中采用了基于梯度分析与椭圆拟合法相结合的方式来计算虹膜中心点的位置坐标。该方法可以在低质量图像情况下运行,既保证了计算的速度同时又提高了算法的鲁棒性,能够满足不同的头部运动与光线明暗的变化情况。

(4)在步骤S40中,根据瞳孔中心参数,获得视线方向;

(5)在步骤S50中,其包括:

S501、将所述观看者在屏幕前的运动分解为水平运动和垂直运动;

S502、根据所述水平运动,确定观看者视线映射到屏幕上的注意点;

S503、当所述注意点在屏幕内时,控制所述屏幕继续播放当前视频;

S504、当所述注意点不在屏幕内时,控制所述屏幕切换播放下一视频。

首先,将观看者移动位置分析,观看者在屏幕前的运动可以分解为水平运动和垂直运动,垂直运动可以通过位置测出对结果没有太大的影响,水平运动会对视线范围判断有影响,下面图4a、4b、4c、4d、4e分析了水平移动的情况。其中,图4a表示观察者位置F的与屏幕1所在平面的垂线垂足G在屏幕范围内,图4b表示观察者位置F的与屏幕1所在平面的垂线垂足G在屏幕范围外;图4c同样也表示观察者位置F的与屏幕1所在平面的垂线垂足G 在屏幕范围内。

其中,上述步骤S502中:

观看者与屏幕位置的大致确定,观看者视线映射到屏幕上的点即为观看者的注意点,需要分析这个点是否在屏幕内,A

构建以屏幕上的摄像头为原点O的坐标系,确定观看者的位置坐标F及其到屏幕所在平面的垂线垂点坐标G(x,y,z),并根据屏幕尺寸确定观看者位置坐标到屏幕右侧交点A

A

A

根据观看者的位置坐标F、垂点坐标G、A

α确定:

由上面获取到左右眼关键点坐标,为了准确取左右眼中点作为计算坐标设观看者位置为F=(x,y,z),图4c中V⊥屏幕。

其中,向量

β确定:

其中,向量

此时,根据视线方向可确定出视线角度,根据其大于或小于0,分为两种情况:

(1)若观看者视线角度大于0时,则观看者在摄像头左侧,视线向右观看,也分为两种情况:

1.1)如图4a所示,当|x|<|x

1.2)如图4b所示,当|x|>|x

(2)若观看者视线角度小于0时,则观看者在摄像头右侧,视线向左观看,分为两种情况:

2.1)如图4d所示,当|x|<|x

2.2)如图4e所示,当|x|>|x

将摄像头获取到的图像进行处理,确定注意力区域,将注意力区域与屏幕区域进行对比,实现最终的结果显示,达到实时检测观看者注意力的效果。比如当注意点在屏幕内时,控制屏幕继续播放当前视频;当注意点不在屏幕内时,控制屏幕切换播放下一视频。

在具体实施时,以个人采集的图像为例,通过训练人脸识别模型提取人脸区域,展示算法人脸关键特征点的显示结果,如图5所示。通过对人脸图像训练得到人脸识别模型,可以精准地定位人脸的位置并提取脸部关键点,根据关键点可以精确的检测到人眼区域,通过处理可以定位出瞳孔区域,如图6所示。通过网络摄像头获取到的图像进行分析后得出观看人的视线,与应在屏幕内的视线范围镜像比较,用来确定观看者的注意力是否在屏幕内从而对播放视频进行操作,最终的展示效果如图7所示。

基于同一发明构思,本发明实施例还提供了一种基于单目标的视线交互装置,由于该装置所解决问题的原理与前述基于一种基于单目标的视线交互方法相似,因此该装置的实施可以参见前述方法的实施,重复之处不再赘述。

本发明实施例还提供了一种基于单目标的视线交互装置,参照图8所示,包括:

采集模块,用于通过屏幕上的摄像头采集观看者的图像;

识别模块,采用预设模型对所述图像进行人脸识别,得到人脸区域并确定眼部区域图像;

提取模块,在所述眼部区域图像中提取瞳孔中心参数;

视线获得模块,根据所述瞳孔中心参数,获得视线方向;

控制模块,用于根据所述视线方向,控制所述屏幕内播放的视频执行相应的操作。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

技术分类

06120114694139