一种眨眼识别方法及电子设备与流程

文档序号:12825514阅读:369来源:国知局
一种眨眼识别方法及电子设备与流程

本发明涉及机器识别领域,特别涉及一种眨眼识别方法及电子设备。



背景技术:

人眼状态(即是否眨眼)是交通安全和游戏等领域的研究热点,以使计算机通过人眼状态的判定实现疲劳驾驶以及游戏控制等需求。

现有技术所提供的方法达大多是基于眼睛区域纹理、眼睛局部形状、基于脸部全局形状约束以及基于haar特征等的人眼监测器实现人眼状态的判定。

但是现有技术所提供的方法的稳定性较差,且容易受到光照影响,从而降低了人眼状态的准确率。



技术实现要素:

为了提高眨眼识别的准确率,本发明实施例提供了一种眨眼识别方法及电子设备。所述技术方案如下:

第一方面,提供了一种眨眼识别方法,所述方法包括:

通过人脸检测器从当前输入的画面中获取人脸区域;

通过左右眼滤波器对所述人脸区域进行滤波,获取眼球位置参数;

根据所述眼球位置参数,获取眼球对应的特征向量;

将所述特征向量输入眨眼识别器,通过所述眨眼识别器识别当前输入的画面中的人眼是否眨眼。

结合第一方面,在第一种可能的实现方式中,所述通过左右眼滤波器对所述人脸区域进行滤波,获取眼球位置参数之前,所述方法还包括:

对所述人脸区域的尺寸和/或光照进行归一化,得到归一化后的人脸区域;

将所述归一化后的人脸区域转化为频域数据。

结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述通过左右眼滤波器对所述人脸区域进行滤波,获取眼球位置参数包括:

对所述频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为所述眼球位置参数。

结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述根据所述眼球位置参数,获取眼球对应的特征向量包括:

获取眼球所在位置的第一高维特征向量;

根据所述第一高维特征向量与第一预设降维矩阵,获取与所述眼球对应的特征向量。

结合第一方面至第一方面的第三种任意一种可能的实现方式,在第四种可能的实现方式中,所述方法还包括:

获取多个人眼训练样本;

生成与所述多个人眼训练样本对应的多个精确人眼识别器;

根据所述多个精确人眼识别器,生成所述左右眼滤波器。

结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述根据所述多个精确人眼识别器,生成所述左右眼滤波器包括:

根据所述多个精确人眼识别器的平均值,生成所述左右眼滤波器。

结合第一方面至第一方面的第五种任意一种可能的实现方式,在第六种可能的实现方式中,所述方法还包括:

获取多个眨眼训练样本对应的多个用于描述人眼的第二高维特征向量,所述多个眨眼训练样本包括多个睁眼训练样本和多个闭眼训练样本;

根据第二预设降维矩阵与所述多个第二高维特征向量,获取多个用于描述人眼的特征向量;

通过所述多个用于描述人眼的特征向量,对支持向量机进行训练,获取所 述眨眼识别器。

第二方面,提供了一种电子设备,所述设备包括:

人脸检测模块,用于通过人脸检测器从当前输入的画面中获取人脸区域;

眼球检测模块,用于通过左右眼滤波器对所述人脸区域进行滤波,获取眼球位置参数;

处理模块,用于根据所述眼球位置参数,获取眼球对应的特征向量;

眨眼识别模块,用于将所述特征向量输入眨眼识别器,通过所述眨眼识别器识别当前输入的画面中的人眼是否眨眼。

结合第二方面,在第一种可能的实现方式中,所述设备还包括:

归一化模块,用于对所述人脸区域的尺寸和/或光照进行归一化,得到归一化后的人脸区域;

频域转化模块,用于将所述归一化后的人脸区域转化为频域数据。

结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述眼球检测模块具体用于:

对所述频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为所述眼球位置参数。

结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述处理模块具体用于:

获取眼球所在位置的第一高维特征向量;

根据所述第一高维特征向量与第一预设降维矩阵,获取与所述眼球对应的特征向量。

结合第二方面至第二方面的第三种任意一种可能的实现方式,在第四种可能的实现方式中,所述设备还包括:

第一训练样本获取模块,用于获取多个人眼训练样本;

精确人眼识别器生成模块,用于生成与所述多个人眼训练样本对应的多个精确人眼识别器;

左右眼滤波器生成模块,用于根据所述多个精确人眼识别器,生成所述左右眼滤波器。

结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,所述左右眼滤波器生成模块具体用于:

根据所述多个精确人眼识别器的平均值,生成所述左右眼滤波器。

结合第二方面至第二方面的第五种任意一种可能的实现方式,在第六种可能的实现方式中,所述设备还包括:

第二训练样本获取模块,用于获取多个眨眼训练样本对应的多个用于描述人眼的第二高维特征向量,所述多个眨眼训练样本包括多个睁眼训练样本和多个闭眼训练样本;

降维模块,用于根据第二预设降维矩阵与所述多个第二高维特征向量,获取多个用于描述人眼的特征向量;

眨眼训练模块,用于通过所述多个用于描述人眼的特征向量,对支持向量机进行训练,获取所述眨眼识别器。

第三方面,提供了一种电子设备,所述设备包括存储器以及与所述存储器连接的处理器,其中,所述存储器用于存储一组程序代码,所述处理器调用所述存储器所存储的程序代码用于执行以下操作:

通过人脸检测器从当前输入的画面中获取人脸区域;

通过左右眼滤波器对所述人脸区域进行滤波,获取眼球位置参数;

根据所述眼球位置参数,获取眼球对应的特征向量;

将所述特征向量输入眨眼识别器,通过所述眨眼识别器识别当前输入的画面中的人眼是否眨眼。

结合第三方面,在第一种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码还用于执行以下操作:

对所述人脸区域的尺寸和/或光照进行归一化,得到归一化后的人脸区域;

将所述归一化后的人脸区域转化为频域数据。

结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码具体用于执行以下操作:

对所述频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为所述眼球位置参数。

结合第三方面的第二种可能的实现方式,在第三种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码具体用于执行以下操作:

获取眼球所在位置的第一高维特征向量;

根据所述第一高维特征向量与第一预设降维矩阵,获取与所述眼球对应的特征向量。

结合第三方面至第三方面的第三种任意一种可能的实现方式,在第四种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码还用于执行以下操作:

获取多个人眼训练样本;

生成与所述多个人眼训练样本对应的多个精确人眼识别器;

根据所述多个精确人眼识别器,生成所述左右眼滤波器。

结合第三方面的第四种可能的实现方式,在第五种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码具体用于执行以下操作:

根据所述多个精确人眼识别器的平均值,生成所述左右眼滤波器。

结合第三方面至第三方面的第五种任意一种可能的实现方式,在第六种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码还用于执行以下操作:

获取多个眨眼训练样本对应的多个用于描述人眼的第二高维特征向量,所述多个眨眼训练样本包括多个睁眼训练样本和多个闭眼训练样本;

根据第二预设降维矩阵与所述多个第二高维特征向量,获取多个用于描述人眼的特征向量;

通过所述多个用于描述人眼的特征向量,对支持向量机进行训练,获取所 述眨眼识别器。

本发明实施例提供了一种眨眼识别方法及电子设备,包括:通过人脸检测器从当前输入的画面中获取人脸区域;通过左右眼滤波器对人脸区域进行滤波,获取眼球位置参数;根据眼球位置参数,获取眼球对应的特征向量;将特征向量输入眨眼识别器,通过眨眼识别器识别当前输入的画面中的人眼是否眨眼。由于sift特征向量具备较强的鲁棒性,在尺度缩放、亮度变换下能够保持不变形,且在角度变换、放射变换以及噪声方面的稳定性也较强,所以,将sift特征向量作为右眼和/或左眼对应的特征向量,可以提高眨眼识别器的稳定性,从而进一步提高眨眼识别的准确率。

附图说明

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

图1是本发明实施例提供的一种眨眼识别方法流程图;

图2是本发明实施例提供的一种眨眼识别方法流程图;

图3是本发明实施例提供的一种电子设备结构示意图;

图4是本发明实施例提供的一种电子设备结构示意图;

图5为本发明实施例提供的一种左右眼位置示意图。

具体实施方式

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

本发明实施例提供了一种眨眼识别方法,该方法应用于视频中人眼的眨眼识别,其中,本发明实施例所述的视频可以是视频文件,也可以是即时视频,本发明实施例具体的视频不加以限定;本发明实施例所述的方法可以应用于交通事故判定、游戏控制等领域。

实施例一为本发明实施例提供的一种眨眼识别方法,参照图1所示,该方法包括:

101、通过人脸检测器从当前输入的画面中获取人脸区域。

值得注意的是,在步骤101之后,在步骤102之前,所述方法还可包括:

对人脸区域的尺寸和/或光照进行归一化,得到归一化后的人脸区域;

将归一化后的人脸区域转化为频域数据。

102、通过左右眼滤波器对人脸区域进行滤波,获取眼球位置参数。

具体的,对频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为眼球位置参数。

103、根据眼球位置参数,获取眼球对应的特征向量。

获取眼球所在位置的第一高维特征向量;

根据第一高维特征向量与第一预设降维矩阵,获取与眼球对应的特征向量。

104、将特征向量输入眨眼识别器,通过眨眼识别器识别当前输入的画面中的人眼是否眨眼。

值得注意的是,本发明实施例所述的左右眼滤波器与眨眼识别器是预先生成的,其中,生成左右眼滤波器的过程可以为:

获取多个人眼训练样本,其中,该多个人眼训练样本包括多个右眼训练样本和多个左眼训练样本,在实际应用中,可以根据同一个人眼训练样本,分别生成对应的右眼训练样本和左眼训练样本;

生成与多个人眼训练样本对应的多个精确人眼识别器;

根据多个精确人眼识别器,生成左右眼滤波器。

其中,根据多个精确人眼识别器,生成左右眼滤波器的过程可以为:

根据多个精确人眼识别器的平均值,生成左右眼滤波器。

生成眨眼识别器的过程可以为:

获取多个眨眼训练样本对应的多个用于描述人眼的第二高维特征向量,多个眨眼训练样本包括多个睁眼训练样本和多个闭眼训练样本;

根据第二预设降维矩阵与多个第二高维特征向量,获取多个用于描述人眼的特征向量;

通过多个用于描述人眼的特征向量,对支持向量机进行训练,获取眨眼识别器。

需要说明的是,本发明实施例所述的特征向量可以是sift(scale-invariantfeaturetransform,尺度不变特征变换)特征向量。

本发明实施例提供了一种眨眼识别方法,由于sift特征向量具备较强的鲁棒性,在尺度缩放、亮度变换下能够保持不变形,且在角度变换、放射变换以及噪声方面的稳定性也较强,所以,将sift特征向量作为右眼和/或左眼对应的特征向量,可以提高眨眼识别器的稳定性,从而进一步提高眨眼识别的准确率。

实施例二为本发明实施例提供的一种眨眼识别方法,参照图2所示,该方法包括:

201、获取多个人眼训练样本。

具体的,该多个人眼训练样本包括多个右眼训练样本和多个左眼训练样本,在实际应用中,可以根据同一个人眼训练样本,分别生成对应的右眼训练样本和左眼训练样本。

获取多个右眼训练样本和多个左眼训练样本的过程可以为:

从本地的样本库中获取多个人脸图像;或者

从网络侧的数据库中获取多个人脸图像,示例性的,该数据库可以为bio1d或者muct;或者

还可以通过识别从网络侧或者本地的多个图片中识别出多个满足预设条件的图片,并将该多个图片作为人脸图像。

识别该多个人脸图像中的右眼,生成多个右眼训练样本,以及,识别该多个人脸图像中的左眼,生成多个左眼训练样本。

对多个右眼训练样本中的人脸进行定位,根据人脸将右眼训练样本裁剪为矩形,以及对多个左眼训练样本中的人脸进行定位,根据人脸将左眼训练样本裁剪为矩形,所述定位过程可以是通过人脸检测器实现的。

还可以将多个右眼训练样本和多个左眼训练样本的尺寸缩放至预设尺寸,优选的,该预设尺寸可以为128*128;

通过对多个右眼训练样本和多个左眼训练样本的尺寸进行归一化处理,可以避免由于尺寸差异所造成的训练结果差异,进而提高左右眼滤波器识别人眼的准确率,从而进一步提高眨眼识别的准确率。

可选的,为了获取更多的右眼训练样本和左眼训练样本,还可以对多个右眼训练样本和多个左眼训练样本执行以下操作:

对该多个右眼训练样本和多个左眼训练样本分别进行左右旋转±π/20、上下左右平移各4个像素以及将图像缩放1.0±0.1倍中的至少一个,以获取更多的多个右眼训练样本和多个左眼训练样本。通过根据一个样本生成多个样本,从而除了获取更多的右眼训练样本和左眼训练样本之外,还可以通过比较该一个样本所产生的多个样本之间的训练结果,检验该左右眼滤波器的准确性。

可选的,对多个右眼训练样本和多个左眼训练样本进行log变换。通过对多个右眼训练样本和多个左眼训练样本进行log变换,可以降低阴影和光照的影响,提高左右眼滤波器识别人眼的准确率,从而进一步提高眨眼识别的准确率。

此外,还可对多个右眼训练样本和多个左眼训练样本进行归一化,例如归一化至[0,1]。

根据右眼的状态,从多个右眼训练样本中获取右眼的状态为睁眼的右眼睁 眼训练样本和右眼状态为闭眼的右眼闭眼训练样本,所述右眼的状态包括睁眼和闭眼;

根据左眼的状态,从多个左眼训练样本中获取左眼的状态为睁眼的左眼睁眼训练样本和左眼的状态为闭眼的左眼闭眼训练样本,所述左眼的状态包括睁眼和闭眼。

需要说明的是,在步骤201之后,执行步骤202和步骤204。

202、生成与多个人眼训练样本对应的多个精确人眼识别器。

具体的,分别获取与多个右眼训练样本和多个左眼训练样本对应的二维高斯分布图像g,该过程可以是通过第一预设公式实现的,该第一预设公式可以为:

其中xcyc表示左眼或右眼的坐标位置,δ表示控制峰值的范围。

其中,δ的取值直接影响到整个滤波器的检测精确度和抗噪性能,所以通过以下第二预设公式确定δ的取值:

其中,下标left表示左眼,下标right表示右眼,test表示通过滤波器定位出来的眼球坐标点,true表示真实地人工标注的眼球坐标点,error表示测量准则。

对δ分别取正整数,并根据第二预设公式进行验证,在实际应用中,δ可以取[2,4]之间的正整数。

对右眼和/或左眼的二维高斯分布图像g进行快速傅里叶变换,生成与多个右眼训练样本和多个左眼训练样本分别对应的f。

利用空间域与频域之间的关系,生成与多个右眼训练样本和多个左眼训练样本分别对应的多个精确人眼识别器,该过程可以是通过第三预设公式实现的, 该第三预设公式可以为:

其中,h*(w,v)即为与多个右眼训练样本和多个左眼训练样本对应的多个精确人眼识别器。其中精确人眼识别器包括精确右眼识别器和/或精确左眼识别器。

203、根据多个精确人眼识别器,生成左右眼滤波器。

具体的,通过傅里叶变换的线性操作特性,将精确右眼识别器和精确左眼识别器的平均值,分别生成右眼滤波器和左眼滤波器,该过程可以是通过第四预设公式实现的,该第四预设公式可以为:

hava(x,y)=hava*(w,v)

其中,hava(x,y)=hava*(w,v)是进行反傅里叶变换的过程,hava(x,y)即为右眼或左眼滤波器。将右眼滤波器和左眼滤波器统称为左右眼滤波器。

通过将精确右眼识别器和精确左眼识别器的平均值,分别生成右眼滤波器和左眼滤波器,避免了训练样本之间的差异对左右眼滤波器准确性的影响,从而提高了左右眼滤波器识别人眼的准确率。

要说明的是,上述步骤202-203中对左眼和右眼并行操作获取左右眼滤波器仅是示例,也可以先对左眼进行上述相关操作获取左眼滤波器之后,再对右眼进行上述相关操作获取右眼滤波器,从而获取左右眼滤波器,或者也可以先对右眼进行上述相关操作获取右眼滤波器之后,再对左眼进行上述相关操作获取左眼滤波器,从而获取左右眼滤波器,本发明实施例对此不加以限定。

需要说明的是,在步骤203之后,执行步骤207。

204、获取多个眨眼训练样本对应的多个用于描述人眼的第二高维特征向量,多个眨眼训练样本包括多个睁眼训练样本和多个闭眼训练样本。

具体的,该多个睁眼训练样本包括多个右眼睁眼训练样本和多个左眼睁眼 训练样本,该多个闭眼训练样本包括多个右眼闭眼训练样本和多个左眼闭眼训练样本。

将该多个右眼睁眼训练样本、多个右眼闭眼训练样本、多个左眼睁眼训练样本和多个左眼闭眼训练样本分别与hava*(w,v)相乘,获取对应的频域数据;

获取多个睁眼训练样本的左右眼兴趣区域,该左右眼兴趣区域可以包括尺寸为128*128像素的人脸样本中起始坐标为(23,32),向下向右分别32个像素构成的正方形左眼区域和人脸样本中起始坐标为(71,32),向下向右分别为32个像素构成的正方形右眼区域,参照图5所示,其中,在图5中,图像的左上角为坐标系的原点;

确定该左右眼兴趣区域内最大像素灰度值所对应的坐标,即为左右眼坐标。

根据该左右眼坐标,分别获取多个右眼睁眼训练样本、多个右眼闭眼训练样本、多个左眼睁眼训练样本和多个左眼闭眼训练样本的第二高维特征向量,该第二高维特征向量可以为描述左眼或者右眼的128维sift特征向量。

由于sift特征向量具备较强的鲁棒性,在尺度缩放、亮度变换下能够保持不变形,且在角度变换、放射变换以及噪声方面的稳定性也较强,所以,将sift特征向量作为描述左眼或者右眼的第二高维特征向量,可以提高眨眼识别器的稳定性,从而进一步提高眨眼识别的准确率。

205、根据第二预设降维矩阵与多个第二高维特征向量,获取多个用于描述人眼的特征向量。

具体的,通过pca降维的方式实现根据第二预设降维矩阵与多个第二高维特征向量,获取多个用于描述人眼的特征向量的过程,具体为:

获取pca降维中的第二预设降维矩阵;

将该第二预设降维矩阵与多个第二高维特征向量相乘,生成多个用于描述人眼的特征向量,在实际应用中,该多个用于描述人眼的特征向量可以为86维sift特征向量。

通过对第二高维特征向量进行降维处理,可以消除数据间的冗余信息,减 少数据处理过程中的设备存储资源以及处理资源,从而提高了眨眼识别的效率。

需要说明的是,本发明实施例所述的第二预设降维矩阵与第一预设降维矩阵可以是相同的降维矩阵,也可以是不同的降维矩阵,本发明实施例不加以限定。

206、通过多个用于描述人眼的特征向量,对支持向量机进行训练,获取眨眼识别器。

具体的,该眨眼识别器包括右眼眨眼识别器和左眼眨眼识别器;

将多个右眼睁眼训练样本和多个右眼闭眼训练样本分别对应的用于描述人眼的特征向量设置为向量机的训练集,并标注右眼睁眼训练样本为1,右眼闭眼训练样本为0,用于生成对应的右眼眨眼识别器;

将多个左眼睁眼训练样本和多个左眼闭眼训练样本分别对应的用于描述人眼的特征向量设置为向量机的训练集,并标注左眼睁眼训练样本为1,左眼闭眼训练样本为0,用于对应的左眼眨眼识别器;

选取rbf(radialbasisfunction,径向基函数)核函数,该rbf核函数可以为:

k(x-c)=exp(-g||x-c||2)

其中,c为惩罚系数,g为函数的宽度参数,k(x-c)为训练结果,x为输入值,该输入值即多个用于描述人眼的特征向量,通过交叉验证的方式,确定rbf核函数中的最佳参数c和g;

根据rbf核函数,对整个训练集进行训练。

当完成训练之后,根据该rbf核函数,分别生成对应的右眼眨眼识别器和左眼眨眼识别器。

需要说明的是,在步骤205之后,执行步骤207。

值得注意的是,步骤201至步骤203是实现生成左右眼滤波器的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。

步骤201以及步骤204至步骤206是实现生成眨眼识别器的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。

在实际应用中,不必在每次执行步骤207之前,都执行步骤201至步骤203所述的过程或者步骤204至步骤206所述的过程,步骤207以及后续步骤所涉及的左右眼滤波器和眨眼识别器可以是之前生成的,且在实际应用中,为了避免数据的重复获取,以及节省设备的数据存储空间和提高设备的数据处理效率,生成左右眼滤波器过程中所采用的人眼训练样本和生成眨眼判别器过程中的眨眼训练样本可以为同一个样本。

207、通过人脸检测器从当前输入的画面中获取人脸区域。

具体的,获取当前输入的画面的n个关键点;

根据该n个关键点,获取人脸区域。

208、对人脸区域的尺寸和/或光照进行归一化,得到归一化后的人脸区域。

具体的,对人脸区域的尺寸进行归一化的过程可以为:

将人脸区域的尺寸缩放至预设尺寸,优选的,该预设尺寸可以为128*128;

对人脸区域的光照进行归一化的过程可以为:

对人脸区域的光照进行log变换。

通过对人脸区域的尺寸进行归一化处理,可以避免由于尺寸差异对识别结果所造成的影响,进而提高眨眼识别的准确率。

需要说明的是,步骤208是可选步骤,在实际应用中,在步骤207之后,可以直接执行步骤209,无需执行步骤208。

209、将人脸区域转化为频域数据。

具体的,获取人脸区域的二维高斯分布图像g,若在步骤209之前,执行步骤208,则获取归一化的人脸区域的二维高斯分布图像g;

对二维高斯分布图像g进行快速傅里叶变换,生成与人脸区域对应的f,若在步骤209之前,执行步骤208,则获取与归一化的人脸区域对应的f。

根据二维高斯分布图像g与f,生成与人脸区域对应的h,该过程与第三预设公式所述的过程相同,若在步骤209之前,执行步骤208,则获取与归一化的人脸区域对应的h。

将h与人脸区域相乘,获取频域数据,若在步骤209之前,执行步骤208,则将h与归一化的人脸区域相乘,获取频域数据。

210、通过左右眼滤波器对人脸区域进行滤波,获取眼球位置参数。

具体的,对频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为眼球位置参数,该过程可以为:

将频域数据输入左右眼滤波器,对频域数据中所包括的像素点的灰度值进行滤波,输出滤波结果,该滤波结果包括左右眼兴趣区域以及该左右眼兴趣区域内所有像素点的灰度值,获取多个睁眼训练样本的左右眼兴趣区域,该左右眼兴趣区域可以包括尺寸为128*128像素的人脸样本中起始坐标为(23,32),向下向右分别32个像素构成的正方形左眼区域和人脸样本中起始坐标为(71,32),向下向右分别为32个像素构成的正方形右眼区域;

确定滤波输出结果所包括的灰度值最大值的像素点所在的位置参数为眼球位置参数,该眼球位置参数可以为右眼和/或左眼的眼球位置参数。

在实际应用中,可以先对左眼进行滤波,输出左眼的眼球位置参数,再对右眼进行滤波,输出右眼的眼球位置参数,还可以先对右眼进行滤波,输出右眼的眼球位置参数,再对左眼进行滤波,输出左眼的眼球位置参数,还可以同时对左眼和右眼进行滤波,同时输出左眼的眼球位置参数和右眼的眼球位置参数,本发明实施例对具体的滤波顺序不加以限定。

可选的,在对频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为眼球位置参数之后,还可以进行积分投影计算,进一步确定眼球位置参数。

通过在确定滤波输出结果中最大值所在的位置参数为眼球位置参数之后,进一步进行积分投影计算,验证所得到的眼球位置参数的准确性,从而保证了 对眼球位置参数的准确性,从而进一步提高了眨眼识别的准确性。

211、获取眼球所在位置的第一高维特征向量。

具体的,根据该眼球位置参数,获取第一高维特征向量,该第一高维特征向量可以为描述右眼和/或左眼的128维sift特征向量。

由于sift特征向量具备较强的鲁棒性,在尺度缩放、亮度变换下能够保持不变形,且在角度变换、放射变换以及噪声方面的稳定性也较强,所以,将sift特征向量作为描述右眼和/或左眼的第一高维特征向量,可以提高眨眼识别器的稳定性,从而进一步提高眨眼识别的准确率。

212、根据第一高维特征向量与第一预设降维矩阵,获取与眼球对应的特征向量。

具体的,获取pca降维中的第一预设降维矩阵;

将该第一预设降维矩阵与第一高维特征向量相乘,生成与眼球对应的特征向量,在实际应用中,该与眼球对应的特征向量可以为86维sift特征向量。

通过对第一维特征向量进行降维处理,可以消除数据间的冗余信息,减少数据处理过程中的设备存储资源以及处理资源,从而提高了眨眼识别的效率。

值得注意的是,步骤211至步骤212是实现根据眼球位置参数,获取眼球对应的特征向量的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。

213、将特征向量输入眨眼识别器,通过眨眼识别器识别当前输入的画面中的人眼是否眨眼。

具体的,将与眼球对应的特征向量输入眨眼识别器,输出识别结果;

根据识别结果,确认当前输入的画面中的人眼是否眨眼,其中,当前画面中的人眼是否眨眼包括当前画面中人眼的右眼是否眨眼和左眼是否眨眼;

示例性的,在实际应用中,可以预先设置右眼眨眼识别器的识别结果分别为1right和0right,其中,1right表示右眼眨眼,0right表示右眼未眨眼,当前输入的画面所对应的将特征向量输入眨眼识别器后,若识别结果为1right,则表示当前输 入的画面中的人物右眼眨眼,若识别结果为0right,则表示当前输入的画面中的人物右眼未眨眼;

同理,可以预先设置左眼眨眼识别器的识别结果分别为1left和0left,其中,1left表示左眼眨眼,0left表示左眼未眨眼,当前输入的画面所对应的将特征向量输入眨眼识别器后,若识别结果为1left,则表示当前输入的画面中的人物左眼眨眼,若识别结果为0left,则表示当前输入的画面中的人物左眼未眨眼;

除此之外,该识别结果还可以为其他形式,例如标识符或者文本,本发明实施例对具体的识别结果不加以限定。

本发明实施例提供了一种眨眼识别方法,由于sift特征向量具备较强的鲁棒性,在尺度缩放、亮度变换下能够保持不变形,且在角度变换、放射变换以及噪声方面的稳定性也较强,所以,将sift特征向量作为右眼和/或左眼对应的特征向量,可以提高眨眼识别器的稳定性,从而进一步提高眨眼识别的准确率。另外,通过对多个人眼训练样本的尺寸进行归一化处理,可以避免由于尺寸差异所造成的训练结果差异,进而提高左右眼滤波器识别人眼的准确率,从而进一步提高眨眼识别的准确率。另外,通过对多个人眼训练样本进行log变换,可以降低阴影和光照的影响,提高左右眼滤波器识别人眼的准确率,从而进一步提高眨眼识别的准确率。另外,通过将多个精确人眼识别器的平均值,生成左右眼滤波器,避免了训练样本之间的差异对左右眼滤波器准确性的影响,从而提高了左右眼滤波器识别人眼的准确率。另外,通过对第二高维特征向量进行降维处理,可以消除数据间的冗余信息,减少数据处理过程中的设备存储资源以及处理资源,从而提高了眨眼识别的效率。

实施例三为本发明实施提供的一种电子设备3,参照图3所示,装置包括:

人脸检测模块301,用于通过人脸检测器从当前输入的画面中获取人脸区域;

眼球检测模块302,用于通过左右眼滤波器对人脸区域进行滤波,获取眼球位置参数;

处理模块303,用于根据眼球位置参数,获取眼球对应的特征向量;

眨眼识别模块304,用于将特征向量输入眨眼识别器,通过眨眼识别器识别当前输入的画面中的人眼是否眨眼。

可选的,装置还包括:

归一化模块305,用于对人脸区域的尺寸和/或光照进行归一化,得到归一化后的人脸区域;

频域转化模块306,用于将归一化后的人脸区域转化为频域数据。

可选的,眼球检测模块302具体用于:

对频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为眼球位置参数。

可选的,处理模块303具体用于:

获取眼球所在位置的第一高维特征向量;

根据第一高维特征向量与第一预设降维矩阵,获取与眼球对应的特征向量。

可选的,装置还包括:

第一训练样本获取模块307,用于获取多个人眼训练样本,其中,该多个人眼训练样本包括多个右眼训练样本和多个左眼训练样本,在实际应用中,可以根据同一个人眼训练样本,分别生成对应的右眼训练样本和左眼训练样本;

精确人眼识别器生成模块,用于生成与多个人眼训练样本对应的多个精确人眼识别器;

左右眼滤波器生成模块308,用于根据多个精确人眼识别器,生成左右眼滤波器。

可选的,左右眼滤波器生成模块308具体用于:

根据多个精确人眼识别器的平均值,生成左右眼滤波器。

可选的,装置还包括:

第二训练样本获取模块309,用于获取多个眨眼训练样本对应的多个用于描述人眼的第二高维特征向量,多个眨眼训练样本包括多个睁眼训练样本和多个 闭眼训练样本;

降维模块310,用于根据第二预设降维矩阵与多个第二高维特征向量,获取多个用于描述人眼的特征向量;

眨眼训练模块311,用于通过多个用于描述人眼的特征向量,对支持向量机进行训练,获取眨眼识别器。

需要说明的是,本发明实施例所述的特征向量可以是sift特征向量。

本发明实施例提供了一种电子设备,由于sift特征向量具备较强的鲁棒性,在尺度缩放、亮度变换下能够保持不变形,且在角度变换、放射变换以及噪声方面的稳定性也较强,所以,将sift特征向量作为右眼和/或左眼对应的特征向量,可以提高眨眼识别器的稳定性,从而进一步提高眨眼识别的准确率。

实施例四为本发明实施例提供的一种电子设备4,参照图4所示,该电子设备包括存储器41以及与存储器连接的处理器42,其中,存储器41用于存储一组程序代码,处理器42调用存储器41所存储的程序代码用于执行以下操作:

通过人脸检测器从当前输入的画面中获取人脸区域;

通过左右眼滤波器对人脸区域进行滤波,获取眼球位置参数;

根据眼球位置参数,获取眼球对应的特征向量;

将特征向量输入眨眼识别器,通过眨眼识别器识别当前输入的画面中的人眼是否眨眼。

可选的,处理器42调用存储器41所存储的程序代码还用于执行以下操作:

对人脸区域的尺寸和/或光照进行归一化,得到归一化后的人脸区域;

将归一化后的人脸区域转化为频域数据。

可选的,处理器42调用存储器41所存储的程序代码具体用于执行以下操作:

对频域数据进行滤波,确定滤波输出结果中最大值所在的位置参数为眼球位置参数。

可选的,处理器42调用存储器41所存储的程序代码具体用于执行以下操 作:

获取眼球所在位置的第一高维特征向量;

根据第一高维特征向量与第一预设降维矩阵,获取与眼球对应的特征向量。

可选的,处理器42调用存储器41所存储的程序代码还用于执行以下操作:

获取多个人眼训练样本,其中,该多个人眼训练样本包括多个右眼训练样本和多个左眼训练样本,在实际应用中,可以根据同一个人眼训练样本,分别生成对应的右眼训练样本和左眼训练样本;

生成与多个人眼训练样本对应的多个精确人眼识别器;

根据多个精确人眼识别器,生成左右眼滤波器。

可选的,处理器42调用存储器41所存储的程序代码具体用于执行以下操作:

根据多个精确人眼识别器的平均值,生成左右眼滤波器。

可选的,处理器42调用存储器41所存储的程序代码还用于执行以下操作:

获取多个眨眼训练样本对应的多个用于描述人眼的第二高维特征向量,多个眨眼训练样本包括多个睁眼训练样本和多个闭眼训练样本;

根据第二预设降维矩阵与多个第二高维特征向量,获取多个用于描述人眼的特征向量;

通过多个用于描述人眼的特征向量,对支持向量机进行训练,获取眨眼识别器。

需要说明的是,本发明实施例所述的特征向量可以是sift特征向量。

本发明实施例提供了一种电子设备,由于sift特征向量具备较强的鲁棒性,在尺度缩放、亮度变换下能够保持不变形,且在角度变换、放射变换以及噪声方面的稳定性也较强,所以,将sift特征向量作为右眼和/或左眼对应的特征向量,可以提高眨眼识别器的稳定性,从而进一步提高眨眼识别的准确率。

上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。

值得注意的是,本发明实施例所述“第一”和“第二”仅仅是为了区分二者的不同,此处并非特指。

需要说明的是:上述实施例提供的电子设备在执行眨眼识别方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的眨眼识别方法和电子设备实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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