首页> 中国专利> 一种融合视线检测的注意力检测方法

一种融合视线检测的注意力检测方法

摘要

本发明公开了一种融合视线检测的注意力检测方法,该方法包括了人脸检测、人眼闭合检测、人眼视线检测、头部偏转检测几个方面,经摄像头抓取图片,分析每帧中学生的眼睛闭合特征、头部偏转特征和视线特征,来判别学生注意力是否专注。本发明通过融入视线检测方法,解决了学生处于头部正视、眼睛睁开而视线在电脑屏幕以外区域的难题;通过本发明可以检测在线学习中学生注意力专注情况,故本发明方法具有科学实用、准确度高、稳定性好、可靠性强的优点。

著录项

  • 公开/公告号CN108108684A

    专利类型发明专利

  • 公开/公告日2018-06-01

    原文格式PDF

  • 申请/专利号CN201711347295.X

  • 发明设计人 周后盘;阮益权;熊碧辉;

    申请日2017-12-15

  • 分类号G06K9/00(20060101);G06T7/73(20170101);

  • 代理机构33224 杭州天勤知识产权代理有限公司;

  • 代理人王琛

  • 地址 310012 浙江省杭州市江干区下沙高教园区2号大街

  • 入库时间 2023-06-19 05:29:54

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-12-30

    专利权的转移 IPC(主分类):G06K 9/00 专利号:ZL201711347295X 登记生效日:20221216 变更事项:专利权人 变更前权利人:杭州电子科技大学 变更后权利人:杭州常青藤智慧科技有限公司 变更事项:地址 变更前权利人:310012 浙江省杭州市江干区下沙高教园区2号大街 变更后权利人:310061 浙江省杭州市西湖区文三路90号71幢14层东1403-1404室 变更事项:专利权人 变更前权利人:浙江省杭电智慧城市研究中心 变更后权利人:

    专利申请权、专利权的转移

  • 2020-07-17

    授权

    授权

  • 2018-06-26

    实质审查的生效 IPC(主分类):G06K9/00 申请日:20171215

    实质审查的生效

  • 2018-06-01

    公开

    公开

说明书

技术领域

本发明属于在线教学状态检测技术领域,具体涉及一种融合视线检测的注意力检测方法。

背景技术

在线教育随着网络的发展越来越普及,在该模式下确定学生的学习状态具有重大的意义。注意力检测是在线教育中判断学生学习状态的重要组成部分,是利用人脸及五官的特征变化,或者是利用脑波检测或心电频率等来判断注意力是否集中。基于计算机视觉的注意力检测方法相对于其他非计算机视觉的注意力检测方法,具有非接触式、实时性强、可靠性高、适应性强、成本低等特点。

基于计算机视觉的注意力检测方法,主要是通过计算机视觉对人脸特征的获取,然后对数据进行分析处理,其主要的检测手段是通过摄像头抓取图像,在必要时先对图像进行一系列的预处理,之后通过人脸的特征分析,如人脸定位、人脸偏转角度、人眼特征分析、嘴唇特征分析等来确定当前图像中人物的注意力集中程度,在必要时给出一定的提醒来督促其学习,以此来提高在线学习的学习效率。

近年来,注意力检测方法层出不穷,但是这些方法的主要应用领域是驾驶员疲劳检测,应用于在线学习中少之又少。传统的利用计算机视觉来检测学生在线学习中注意力状态的方法与驾驶员疲劳检测类似,即利用眼睛特征和头部特征来判别学生的注意力。但是,当学生处于头部正视、眼睛睁开且视线分散于电脑屏幕以外的区域时,这些传统的方法就会出现误检,从而导致检测准确率低的结果,说服力不够。

发明内容

鉴于上述,本发明提供了一种融合视线检测的注意力检测方法,通过融入视线检测技术,可以检测在线学习中学生注意力专注情况,能够解决学生处于头部正视、眼睛睁开而视线在电脑屏幕以外区域的难题,且具有科学实用、准确度高、稳定性好、可靠性强的优点。

一种融合视线检测的注意力检测方法,包括如下步骤:

(1)利用低分辨率摄像头(像素30万左右)采集电脑前的视频图像,运用人脸分类器对视频图像进行人脸检测,以判断图像中是否存在人脸:若是,则执行步骤(2);若否,则继续检测下一帧图像;

(2)通过检测人眼轮廓的宽高比来确定人眼的开闭状态;

(3)采用SDM(Supervised Descent Method)算法检测出图像中的人脸特征点,再提取其中的人眼特征点信息用以确定人眼轮廓位置,然后利用图像的梯度信息确定虹膜中心位置,进而以人眼轮廓的宽和高以及虹膜中心位置组成特征向量,使用SVM(支持向量机)分类器来判断人眼视线是否偏离电脑屏幕区域;

(4)采用OpenCV平台上实现的3D姿态估计算法POSIT(Pose from Orthographyand Scaling with Iterations)计算出用户的头部偏转角度(该算法能根据2D图像中的若干特征点位置,估计物体在3D上的角度),进而根据该偏转角度判断人的头部是否存在偏转情况;

(5)每隔一定时间统计该时间段内对应存在眼睛闭合、视线偏离以及头部偏转情况的图像帧数,若存在眼睛闭合、视线偏离或头部偏转的图像帧数占该时间段内总图像帧数的比值大于设定阈值,即判定电脑前的用户注意力分心。

进一步地,所述步骤(1)中的人脸分类器采用Adaboost算法在OpenCV平台上训练得到,该算法直接对采集到的图像灰度化,使用Harr-Like特征表示人脸,使用积分图加快计算,再级联多个弱分类器来构造成一个强分类器以提高检测准确率。

进一步地,所述步骤(2)的具体实现方法为:首先根据人脸五官分布直接截取图像中的人眼部位ROI(感兴趣区域)进行检测,使该ROI经过直方均衡化和二值化处理操作;然后使用OpenCV库中的轮廓检测函数findContour检测提取出ROI中的人眼轮廓;最后利用最小二乘椭圆拟合算法拟合出人眼轮廓对应的椭圆以获取实际人眼轮廓的宽高比,进而根据宽高比来确定人眼的开闭状态。

进一步地,所述最小二乘椭圆拟合算法拟合得到多个椭圆后,通过以下三条过滤规则确定出唯一的对应人眼轮廓的椭圆(以下判断标准均通过设定相应的阈值来实现):

①剔除长轴大小接近ROI宽度或短轴大小接近ROI高度的椭圆;

②剔除面积较小或过大的椭圆;

③剔除中心点过于靠近ROI边界的椭圆。

进一步地,当椭圆区域面积与人眼轮廓区域面积的比值超过限定范围,则根据人眼轮廓区域面积和椭圆宽度值来计算实际人眼轮廓的高度值。

进一步地,所述步骤(3)的具体实现方法为:首先采用SDM算法检测出图像中的人脸特征点,再提取其中的人眼特征点信息用以确定人眼轮廓位置,进而利用图像的梯度信息确定虹膜中心位置;然后构造特征向量Z=[FeatureX,FeatureY,FeatureXY],FeatureX=xc/xw,FeatureY=yc/yw,FeatureXY=xw/yw,xw和yw分别为人眼轮廓的宽和高,xc为虹膜中心与人眼轮廓左边界的水平距离,yc为虹膜中心与人眼轮廓上边界的垂直距离;进而通过收集大量视线位于电脑屏幕区域的特征向量Z作为正样本,大量视线偏离电脑屏幕区域的特征向量Z作为负样本,利用这些样本通过支持向量机进行学习训练,以得到用于判别人眼视线是否偏离电脑屏幕区域的SVM分类器;最后利用该SVM分类器判断当前帧图像中的人眼视线是否偏离电脑屏幕区域。

基于上述技术方案,本发明具有以下有益技术效果:

(1)本发明借鉴了驾驶员疲劳检测领域所使用的方法,将其应用到在线学习注意力检测中,相对于传统的注意力检测方法,本发明又融合了视线检测的指标,考虑了学生正视电脑屏幕,眼睛睁开而视线在屏幕外的情况,在精确度上有了很大的提升,说服力也更强。

(2)本发明采用Adaboost算法检测人脸,使用Harr-Like特征表示人脸,并使用积分图加快计算,并级联多个弱分类器来构造一个强分类器来检测人脸,减少了检测的时间,充分考虑了实时性和准确性。

(3)本发明人眼开闭状态检测中使用最小二乘椭圆拟合算法拟合人眼轮廓,并用自定义的3条过滤规则对拟合椭圆进行处理,排除了非眼睛区域的干扰,提高了检测的准确性,并完全满足实时性的需求。

(4)本发明充分考虑光照等影响,设计了合理的视线检测方法,并在视线检测中使用SDM检测算法来确定人眼的特征点和轮廓,该算法速度快且稳定,并在复杂的环境中也能有很好的检测效果,能够适应在线学习的场景。

因此,本发明注意力检测方法具有实时性强、准确率高、可靠性强、稳定性好、受外界因素影响小的优点。

附图说明

图1为本发明注意力检测方法的总体流程示意图。

图2为本发明方法中眼睛开闭状态判别的流程示意图。

图3为眼球模拟示意图。

图4为虹膜中心与眼睛轮廓的相对位置示意图。

图5(a)为人脸特征点初始值的分布示意图。

图5(b)为人脸特征点最优解的分布示意图。

具体实施方式

为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。

本发明融合视线检测的注意力检测方法,其检测场景为学生坐在电脑屏幕前,可以通过鼠标选择从普通摄像头或者视频获取图像,能够检测出当前人数、当前帧数、人脸坐标、头部偏转角度、眼睛闭合比例以及视线方向。

如图1所示,本发明注意力检测方法的具体实施流程为:首先通过摄像头抓取图像;然后进行人脸检测,当连续超过一定时间阈值检测不到人脸时判定为学习者已离开坐席,反之进入后续的头部偏离检测,头部偏离不大(正视状态)时检测眼睛闭合特征和视线特征;最后每隔一段时间,计算该时段内眼睛闭合帧数、头部偏离帧数、视线偏离帧数占该时段内总帧数的比值,并综合分析三个特征的比值结果来判定学生是否分心。

因此,本发明主要包括人脸检测、眼睛闭合检测、视线偏离检测、头部偏转检测四部分,并对眼睛闭合、视线偏离以及头部偏转3个指标综合进行注意力分心判断。

(1)人脸检测:人脸检测采用Adaboost算法实现,并直接对采集到的图像灰度化;该算法使用Harr-Like特征表示人脸,并使用积分图加快计算,再级联多个弱分类器来构造成一个强分类器从而提高检测准确率。本实施方式中人脸检测分类器在OpenCV平台上使用该算法训练得到。

(2)眼睛闭合检测:眼睛闭合检测通常可行的方法是检测眼睛区域二值化后的积分投影图来计算虹膜大小;但是在实际检测中,在眼睛闭合时眼角点会造成很大的干扰,导致垂直投影所得到的眼高有误。为此,本发明考虑利用眼睛轮廓来计算眼睛宽高比,再进行眼睛闭合判断,具体实施过程如图2所示。

为了减小搜索范围加快计算速度,检测到人脸后根据人脸五官分布直接截取眼部图片进行检测,预处理包括直方均衡化和二值化处理,轮廓检测使用OpenCV的轮廓检测函数findContour,椭圆拟合处理主要是通过拟合得到的椭圆获取眼睛轮廓宽高比值,由最小二乘法拟合算法实现。

本发明考虑到直接用最小二乘椭圆拟合算法拟合眼睛轮廓,会拟合出多个椭圆结果,且眼睛闭合时拟合得到的椭圆轮廓与实际不符。为此,本发明设定了3条具体的过滤规则来处理拟合椭圆,以此来获取唯一的眼睛轮廓拟合椭圆以及眼睛轮廓的宽高值,具体规则如下:

①剔除长轴或短轴大小分别接近ROI宽度或高度的椭圆;

②剔除较小以及过大的椭圆;

③剔除中心点过于靠近边界区域的椭圆;

计算最终结果的椭圆区域面积与实际的眼睛轮廓区域面积的比值,当比值过大时(合理比值范围[0.8,1.8]),由轮廓区域面积和拟合椭圆得到的宽度值计算实际的高度值。

对于实际眼睛的宽高比r<0.24,则判定为眼睛闭合,眼睛闭合帧数统计值加1;否则为睁开状态。

(3)视线偏离检测:目前视线检测的方法主要分类两类:第一类为光学检测法,该类方法主要有角膜-瞳孔反射法、红外光电反射法和红外电视法,这类方法检测视线的准确率相对较高,市面也有基于该类方法的产品,但是对设备要求较高,需要使用高分辨率摄像头或者红外光源等,不适合于低分辨率摄像头下的视线检测;第二类为基于图像的方法,主要通过分析人眼轮廓与虹膜中心的位置关系来检测分析视线。本发明采用第二类方法来检测分析学习者的视线,使用SDM算法获取眼睛轮廓信息,该算法对光照影响不敏感;虹膜中心利用图像梯度信息来定位,受光照、肤色的影响小。

SDM方法是人脸对齐(在已检测到的人脸基础上,定位人脸上的眼睛、鼻子、嘴巴和脸轮廓等标志性特征)中属于基于回归的方法,而基于回归的方法原理是对于给定的人脸图形,给出初始形状(五官特征以及脸轮廓组成),通过多次迭代使得初始形状逼近甚至等于真实形状的位置。SDM相对于传统的PAMS方法的区别在于使用了无参数的形状模型和SIFT特征,对于光照变化不敏感,速度快且稳定,鲁棒性较高,是目前人脸对齐中最流行的算法之一,其原理如下:

如图5(a)和图5(b)所示,图5(b)中的点为手工标记的人脸特征点,也是人脸特征点检测中的最优解x*,图5(a)中的点是初始化时的特征点x0

SDM的最终目的就是通过多次迭代将x0逼近最优解x*,最终获得我们想要的结果,计算如下:

对于如图5(a)所示的含有m个像素的图片,d(x)∈Rp×1代表图片中的p个特征点,本实施方式使用的特征点有68个,h是用于提取特征点的128维SIFT特征的非线性函数,表示为h(d(x))∈R128p×1。提取函数坐标人脸特征点检测的目标函数如下,通过多次回归计算最终将x0逼近最优解x*,既取得使f(x0+Δx)最小的Δx。

上式中φ*=h(d(x*))代表在x*处提取SIFT特征,Δx和φ*在训练回归器时是已知的,x0代表所有已知标定样本的真实形状的平均形状,计算公式如下:

假设SIFT特征提取函数h是二次可导的(只有二次可导才能计算Hessian矩阵),在x0处对f(x)进行二阶泰勒展开,得到:

进一步简化后得到:

▽f(x)=Jf(x0)+H(x0)Δx=0

其中:Jf(x0)和H(x0)是在x0处的Jacobian矩阵和Hessian矩阵,对x求导并令导数等于零可得到:

由此可得到:

x=x0-H-1(x0)Jf(x0)

那么第一次迭代的步长用牛顿步求解为:

Δx1=-H-1(x0)Jf(x0)

如果h二次可导,那么通过牛顿步即可计算Δx1~Δxk,从而可以一直计算x,最终将得到最优解。但是由于每次都要计算Jacobian矩阵和Hessian矩阵,计算量过大且不确定h是否二次可导,因此根据矩阵的链式求导法则有进而变为:

得到:

Δx1=R0φ0+b0

从而第一次增量Δx1变成特征φ0的一次函数,只要知道R0和b0即可计算Δx1,此时将不再需要计算Jacobian矩阵和Hessian矩阵,只需使用最小二乘法即可,既最小化目标函数为:

后续可依法得到Rk和bk,从而计算对应的Δxk,Δxk代表每一次x的变化方向和尺度,由此在测试样本进行回归时可直接进行回归;本发明在戴眼镜情况下以及头部偏转过大的情况下检测效果依然良好。

虹膜中心检测方法的原理为圆形物体的中心点可通过分析图像上的梯度向量获取中心点,眼球模拟图形如图3所示。图3中,c代表可能的瞳孔位置,黑色圆以外区域为巩膜区域(眼睛白色区域),该模型表示要求的圆心点与图像梯度方向的关系,其中di为归一化的位移矢量,gi为梯度向量,当c为真正的圆心时di和gi有相同的位移矢量,反之两者将存在一个夹角。

此外由于在强光条件下,瞳孔会产生亮瞳反应,即在虹膜中心形成一个亮白点,这就会使得计算出来的结果可能是一个最黑点或者最白点,因此还需要导入先验知识:瞳孔通常比皮肤和巩膜的颜色要深,给每一个可能的中心点c赋予一个权值wc,其中颜色深的权值高于较亮区域的权值,最终可通过以下公式来求取实际的圆心。

提取出来的人眼轮廓宽高以及虹膜中心相对于人眼轮廓的位置关系如图4所示,通过下列各式计算出三个参数FeatureX、FeatureY、FeatureXY,构成特征向量Z=[FeatureX,FeatureY,FeatureXY]。

视线检测由SVM训练的分类器进行判别,SVM中传入的特征向量为Z,将所有样本分为两类:视线在电脑屏幕区域内的特征向量Z为正样本,标记为A;视线在电脑屏幕区域外的特征向量Z为负样本,标记为B。注意力检测程序中对每一帧图像进行视线偏离检测,当检测到视线偏离时,将视线偏离帧数统计值加1。

(4)头部偏转检测:头部偏转检测使用OpenCV中实现的3D姿态估计算法POSIT(比例正交投影迭代变化算法)来计算学习者的头部偏转角度,它能根据2D图像中的若干特征点位置,估计物体在3D上的角度。正面人脸的三维数据来源于科英布拉大学的系统与机器人研究所,用人脸三维点与人脸二维图像中的点相匹配可估计出头部姿态;人脸二维数据取自于OpenCV所带的人脸模型,特征点检测使用上述SDM算法,根据计算出的头部左右偏转角度,当角度超过35度时判定为头部偏离;注意力检测中对每一帧图像进行头部偏转检测,当检测到头部偏离时,头部偏离帧数统计值加1。

最后注意力状态判别则是设定检测时段(本实施方式设定为3秒),每个时段分别统计计算该时段内闭眼帧数、头部偏离帧数和视线偏离帧数分别占该时段内总帧数的比值,综合分析三个特征的比值结果,比值超过一定阈值(根据实验设定为70%)时判别对应的特征检测结果为注意力分散,最终的注意力判别是否集中为只要有一个特征结果为注意力分散既判别学习者在该检测时段注意力分散。该统计原理主要依据驾驶员疲劳检测中常用的PERCLOS检测算法,其定义为单位时间(一般取1分钟或者30秒)内眼睛闭合一定比例(70%或80%)所占的时间,具体公式如下:

上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号