首页> 中国专利> 一种利用眼睛视线来实现密码输入的方法及其硬件装置

一种利用眼睛视线来实现密码输入的方法及其硬件装置

摘要

本发明涉及一种利用眼睛视线来实现密码输入的方法及其硬件装置,该硬件装置包括摄像单元、显示器单元以及处理单元,该方法包括以下步骤:由摄像单元拍摄脸部图像,然后形成积分数值图像,使用Adaboost遍历该积分数值图像并进行联级检测以确定包含有使用者眼睛的目标区域,确定该目标区域中左右眼的瞳孔中心以及内眼角点的位置,并根据几何关系确定视线焦点在该显示器单元上的具体位置,以完成输入密码。本发明的方法相对于现有技术更安全、更快捷方便、输入准确度更高,而且其所需的硬件配置更简单,节约了成本。

著录项

  • 公开/公告号CN104156643A

    专利类型发明专利

  • 公开/公告日2014-11-19

    原文格式PDF

  • 申请/专利权人 中山大学;

    申请/专利号CN201410361283.2

  • 发明设计人 庞志勇;陈弟虎;张媛;

    申请日2014-07-25

  • 分类号G06F21/31;

  • 代理机构广州新诺专利商标事务所有限公司;

  • 代理人张玲春

  • 地址 510275 广东省广州市海珠区新港西路135号

  • 入库时间 2023-12-17 03:14:26

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-02-22

    授权

    授权

  • 2014-12-17

    实质审查的生效 IPC(主分类):G06F21/31 申请日:20140725

    实质审查的生效

  • 2014-11-19

    公开

    公开

说明书

技术领域

本发明涉及模式识别技术以及图像处理技术,特别地涉及一种计算眼睛视线焦点 来实现密码输入的方法及其硬件装置。

背景技术

随着科技的发展,盗窃密码的技术也在不断地进步,对传统物理键盘的密码输入 方式造成严重的安全威胁。但目前传统物理键盘的密码输入方式依然占据着主流位置,例如 随处可见的ATM机仍然采用九宫格的物理键盘进行密码的输入,安全性较低。于是,亟需一 种保密性高又能大规模推广的新型密码输入方式。

眼睛是人类心灵的窗口,通过眼睛来传递信息符合自然的交互方式。近年来,计 算设备的性能大幅提高,再加上模式识别算法的精确度有显著的进展,为眼控密码输入的新 型密码输入方式提供了技术实现的基础。

中国专利CN 103077338 A公开了一种视线追踪密码输入方法和装置,包括下列 步骤:一摄影单元对一区域连续撷取影像,该摄影单元所撷取的影像传送至一运算单元,其 中当一人员接近该摄影单元且该人员的眼睛进入该区域时,该摄影单元连续撷取该人员的该 眼睛的影像,该运算单元判断该人员的眼睛注视输入区中的某一位置,将该位置所显示的字 符作为密码输入,该运算单元将该至少两个输入的字符与一默认的密码做比对,若输入的字 符与默认的密码相符,则人员通过认证。然而,该发明仅仅公开了由摄像单元拍摄人员眼睛 的影像,以判断该人员所注视的输入区的字符,并未具体公开该装置如何确定人员眼睛所注 视的输入区的方法,尽管该发明可以通过运算单元将至少两个输入字符与默认的密码做比对, 并由人员通过认证,从而确保密码输入的正确性,但是由于上述确认密码步骤的存在,使得 密码输入过程复杂化并且增加了密码输入的耗时。

中国专利CN 102129554 B公开了一种基于视线跟踪的密码输入控制方法,该密 码输入控制方法包括具体包括以下步骤:(1)人脸图像预处理及人眼特征参数提取:根据人脸 的结构特性进行人脸检测并在符合人脸结构特性的人脸区域内进行人眼特征参数的提取;(2) 估计当前注视点位置:采用基于相似三角形的双光源视线跟踪实现从人眼特征参数到当前注 视点位置的估计;(3)根据注视点位置进行密码输入操作控制:根据注视点的位置,利用时间 门限及声音反馈来控制密码输入的操作。然而,这种方法还需要在屏幕的两个底角以及例如 左上角的三个不同位置设置红外光源,以确定人员的眼睛瞳孔所注视的当前视点位置,这不 仅增加了密码输入的硬件设备,而且将红外光源设置于特定位置时,需要保证红外光源的位 置正确,有利于人员眼睛瞳孔的当前视点位置的计算,这样会使得硬件配置要求复杂化。

发明内容

本发明的目的,就是克服现有技术的不足,提供一种更安全、更快捷方便、输入 准确度更高的利用眼睛视线来实现密码输入的方法。

本发明的目的还在于提供一种对硬件配置要求更少、结构更简单的密码输入硬件 装置。

为了达到上述目的,采用如下技术方案:

(1)设置显示器单元以及摄像单元,该摄像单元位于该显示器单元以外的任意 位置,并朝向使用者的脸部,该显示器单元显示虚拟键盘,该使用者注视该虚拟键盘上的特 定字符;

(2)该摄像单元拍摄使用者的脸部图像,并对该脸部图像进行颜色空间转换处 理,以将该脸部图像从彩色转换为灰度图像;

(3)计算该灰度图像的各点像素积分数值,以形成积分数值图像;

(4)训练若干个不同的Adaboost分类器,其中该若干个不同的分类器为弱分类 器,该弱分类器根据使用者预设的不同的级别,集合并形成各级强分类器,然后使用Adaboost 遍历该积分数值图像并进行级联检测,以计算每个具有haar特征的该弱分类器的特征值,判 断该积分数值图像是否通过该各级强分类器,从而检测相对应的该图像是否包含使用者的眼 睛;

(5)定义包含使用者的眼睛区域为目标区域,确定该目标区域中左右眼的瞳孔 中心以及内眼角点的位置;

(6)根据该两个瞳孔中点以及该两个内眼角点建立视线模型,根据该视线模型 以及几何关系,确定视线焦点在该显示器单元上的具体位置;

(7)该视线焦点在该虚拟键盘的该具体位置上停留特定时间,确定该具体位置 所显示的字符为使用者需要输入的密码值。

根据一个实施例,步骤(2)中的将该图像从彩色转换为灰度图像,所采用的计 算公式为:

Y=0.257 R+0.564 G+0.098 B

其中,Y为灰值度,R为红色分量,G为绿色分量,B为蓝色分量。

根据一个实施例,步骤(3)中的计算该灰度图像的各点像素积分数值,当各点 像素积分数值的haar特征为非倾斜矩形,像素点(x,y)位于非零行列时,所采用的计算公 式为:

ii(x,y)=ii(x,y-1)+ii(x-1,y)-ii(x-1,y-1)+p(x-1,y-1)

其中,(x,y)表示该像素点的坐标,ii(x,y)表示该像素点(x,y)的积分值,p(x,y)表示该 像素点(x,y)的灰度值。

根据一个实施例,步骤(3)中的计算该灰度图像的各点像素积分数值,当各点 像素积分数值的haar特征为倾斜矩阵,像素点(x,y)位于非零行列时,所采用的计算公式 为:

ii(x,y)=ii(x-1,y-1)+ii(x+1,y-1)-ii(x,y-2)+p(x-1,y-1)+p(x-1,y-2)

其中,(x,y)表示该像素点的坐标,ii(x,y)表示该像素点(x,y)的积分值,p(x,y)表示该 像素点(x,y)的灰度值。

根据一个实施例,步骤(4)中Adaboost中的haar特征包括线性特征的haar矩 形、边缘特征的haar矩形、中心特征的haar矩形和对角线特征的haar矩形,该haar矩形 的尺寸大小根据使用者预设的检测精度和运算量可调,该haar矩形的特征值采用积分图的方 式来计算。

根据一个实施例,步骤(4)中的该各级强分类器的数量以及每个该强分类器所 包含的弱分类器的数量根据使用者预设的检测精度和运算量可调。

根据一个实施例,步骤(6)中的该视线模型根据几何关系,将该两个瞳孔中点 与该两个内眼角点之间的向量投影在该显示器单元平面上,以确定该视线焦点在该显示器单 元上的具体位置。

根据一个实施例,保持该图像的尺寸不变,以设定比例放大遍历该积分数值图像 的检测窗口,以检测不同使用者的眼睛,选取尺寸最大的使用者的眼睛区域作为目标区域。

本发明的目的还可以通过一种利用眼睛视线来实现密码输入的硬件装置来实现, 其包括:摄像单元;显示器单元;以及处理单元,其中,该摄像单元位于显示器单元以外的 任意位置,朝向并持续拍摄使用者的脸部,该显示器单元显示虚拟键盘,该处理单元用于处 理该摄像单元所拍摄的使用者的脸部图像,以确定使用者的视线焦点在该显示器单元上的具 体位置。

根据一个实施例,该处理单元可以为个人计算机、嵌入式系统或现场可编程门阵 列系统FPGA。

与现有技术相比,本发明的有益效果在于:

通过本发明的上述方法以及硬件装置,可以获得使用者眼睛的图像,并且通过处 理单元对图像的处理和计算,建立视线模型,从而估计得出使用者的视线焦点在显示器单元 上的具体位置,并将对应位置上的字符作为输入密码。这种方法以及硬件装置相对于现有技 术而言,不需要设置红外光源以对准使用者的瞳孔,并且摄像单元只需要设置在正面朝向使 用者脸部的位置,对图像的处理、视线模型的建立以及密码的输入更多地依靠处理单元的内 置程序来完成。因此,本发明所需的硬件数量更少、结构更简单,并且无需额外配置光源, 硬件如摄像单元的安装位置的精确度要求更低,便于使用者安装;其次,本发明通过建立视 线模型以估计使用者视线焦点所注视的具体位置,其校准步骤以及确认输入的密码步骤更为 灵活,节省了使用者输入密码的耗时;另外,本发明可以适应不同使用者的眼睛尺寸以估计 其视线焦点所注视的具体位置,适用于任何利用眼睛视线来实现密码输入的场合。

附图说明

图1是根据本发明实施例的利用眼睛视线来实现密码输入的方法流程图。

图2是根据本发明实施例的改进Susan算子的检测模板图。

图3是根据本发明实施例的建立视线模型示意图。

具体实施方式

下面将结合附图以及具体实施方法来详细说明本发明,在本发明的示意性实施及 说明用来解释本发明,但并不作为对本发明的限定。

图1是根据本发明实施例的利用眼睛视线来实现密码输入的方法流程图。在步骤 1中,摄像单元设置在显示器单元的正上方,并且正面朝向使用者的脸部,显示器单元,例 如屏幕可以显示虚拟键盘,该虚拟键盘的键可以是数字、字母和/或特殊符号。当使用者注视 虚拟键盘的某个键达到一特定时间,处理单元,例如个人计算机嵌入式系统或FPGA系统可确 定该键所显示的字符为对应的输入密码。

摄像单元拍摄使用者的脸部图像,然后将图像传送至处理单元进行颜色空间转换 处理,以将该图像从彩色转换为灰度图像,在此转换过程中采用以下公式:

Y=0.257 R+0.564 G+0.098 B

其中,Y是灰度值,R是红色分量,G是绿色分量,B是蓝色分量。

计算步骤1所得出的灰度图像的各点像素积分数值,以形成积分数值图像。

在本实施例中,设置灰度图像的坐标原点为(0,0),各点像素的坐标为(x,y), 当各点像素积分数值的haar特征为非倾斜矩形,其积分数值根据以下计算方法进行计算:

如果像素点(x,y)位于该灰度图像的第0行的第0列,该像素点的积分数值为:

ii(x,y)=p(x-1,y-1)

如果像素点(x,y)位于该灰度图像的第0行的非零列,该像素点的积分数值为:

ii(x,y)=ii(x-1,y)+p(x-1,y-1)

如果像素点(x,y)位于该灰度图像的非零行的第0列,该像素点的积分数值为:

ii(x,y)=ii(x,y-1)+p(x-1,y-1)

如果像素点(x,y)位于该灰度图像的非零行列,该像素点的积分数值为:

ii(x,y)=ii(x,y-1)+ii(x-1,y)-ii(x-1,y-1)+p(x-1,y-1)

其中,ii(x,y)表示该像素点(x,y)的积分值,p(x,y)表示该像素点(x,y)的 灰度值。

而当各点像素积分数值的haar特征为倾斜矩形,其积分数值根据以下计算方法 进行计算:

如果像素点(x,y)位于该灰度图像的第0行,该像素点的积分数值为:

ii(x,y)=0

如果像素点(x,y)位于该灰度图像的第1行的第0列,该像素点的积分数值为:

ii(x,y)=0

如果像素点(x,y)位于该灰度图像的第1行的非零列,该像素点的积分数值为:

ii(x,y)=p(x-1,y-1)

如果像素点(x,y)位于该灰度图像的第0、1行以外的行时,则根据以下情况 进行计算:

如果像素点(x,y)位于该灰度图像的第0列,该像素点的积分数值为:

ii(x,y)=ii(x+1,y-1)

其中,ii(x,y)表示该像素点(x,y)的积分值,p(x,y)表示该像素点(x,y)的 灰度值。

在步骤2中,训练若干个不同的Adaboost分类器,这些若干个不同的Adaboost 分类器构成弱分类器。各个该弱分类器均具有haar特征,根据使用者的需要,可以设定 Adaboost的遍历检测精度和运算量以控制haar特征(haar矩形)的尺寸,由此控制各级强 分类器的数量以及每个强分类器所包含的弱分类器的数量,其中,haar矩形的特征值采用积 分数值图像的方式来计算。

上述haar特征包括线性特征的haar矩形、边缘特征的haar矩形、中心特征的 haar矩形和对角线特征的haar矩形。

在步骤3中,使用Adaboost遍历该积分数值图像并进行联级检测,其包括以下 步骤:首先,各级强分类器所包含的各个弱分类器均需要对该积分数值图像进行检测。在处 理单元中通过一子窗口打开该积分数值图像,以一强分类器中的一弱分类器遍历该子窗口的 图像。通过该弱分类器的haar矩形的顶点坐标,可以在该积分数值图像上所引导相应位置的 像素点,从而得到该像素点的积分数值,用于计算该弱分类器的haar矩形的特征值θ。

为补偿光照的影响,各个弱分类器所设定的阈值都需要添加光照补偿。光照补偿 可以采用以下公式:

th_c=th×S×σ

S=[(WIDTH-2)×scale]×[(HEIGHT-2)×scale]

σ=a12+a22+a32+...+an2n-(a1+a2+a3+...+ann)2

其中,原有阈值为th,补偿后阈值为th_c,子窗口面积为S,子窗口内灰度图的 灰度标准差为σ,WIDTH是子窗口的宽度,HEIGHT是子窗口的高度,scale是子窗口的缩 放系数,优选为1.2。

然后,比较该弱分类器的haar矩阵的特征值θ与补偿后的阈值th_c,如果θ 小于th_c,那么该弱分类器的投票值为左值(left value),反之为右值(right value), 其中,left value以及right value分别为Adaboost分类器的分类器文件中各个弱分类器 的两个可选的投票值。

在一强分类器的各个弱分类器完成对该积分数值图像的检测,并根据检测结果进 行投票之后,将该各个弱分类器的投票值全部相加,所得到的投票值之和与该强分类器的阈 值进行比较。如果投票值之和大于该强分类器的阈值,可以认为该子窗口的图像通过该强分 类器的级别,反之认为不通过。如果该子窗口的图像可以通过各级强分类器,可以认为该子 窗口的图像包含眼睛图像区域,反之认为不包含眼睛图像区域。

一般情况下,摄像单元所拍摄的图像可能包括至少一个人员的脸部,即包括至少 一对眼睛,而且,不同使用者的眼睛尺寸各不相同。在步骤4中,可以采用以下方法检测不 同尺寸的使用者眼睛:保持原图像的尺寸不变,以1.2倍的比例去放大检测子窗口,从而检 测出该图像中不同尺寸的使用者眼睛;如果Adaboost联级检测的结果为,原图像包括若干个 使用者眼睛的区域,则将其中尺寸最大的使用者眼睛区域定义为目标区域。

在步骤5中,确定瞳孔中心在该目标区域中的位置。确定瞳孔中心位置的方法, 包括以下步骤:首先,对该目标区域的图像进行处理,例如椭圆掩膜积分滤波,以减小图像 的噪声。其中,椭圆掩膜积分滤波为,使用椭圆掩膜遍历该目标区域的图像,然后计算该椭 圆掩膜所覆盖的区域内的像素点的灰度之和,并将该灰度之和给该椭圆掩膜所覆盖的区域的 中心点像素赋值。

例如,椭圆掩膜可以是以下的矩形形式:

其中,该椭圆掩膜用于11×19的目标区域,该矩形中的所有元素1构成近似椭 圆的形状。

由于实际上眼睛的瞳孔部分呈现黑色,即瞳孔是眼睛区域中亮度最小的部分,瞳 孔以外的区域亮度相对更高,可以通过亮度分割法得到瞳孔部分,过程如下:对上述椭圆掩 膜积分滤波所得出的图像进行归一化处理,所采用的计算公式为:

I(x,y)=I(x,y)-MINMAX-MIN

其中,I′(x,y)表示归一化后的像素灰度值,I(x,y)表示原图像的像素灰度值,MIN 表示原图像的像素灰度最小值,MAX表示原图像的像素灰度最大值。

然后,对归一化的图像进行二值化处理,使用一预设的阈值,优选为0.05,分割 该图像。将归一化后的像素灰度值I′(x,y)与预设的阈值进行比较,如果I′(x,y)小于预设的阈 值,则将该像素灰度值设置为最小值,例如0,如果I′(x,y)大于预设的阈值,则将该像素灰 度值设置为最大值,例如255,由此分割出瞳孔区域。

然后,确定瞳孔区域的中心位置,所采用的计算公式为:

M01=S01M00

M10=S10M00

其中,M00为质量,M01为质心的垂直坐标,S01为垂直坐标之和,M10为质心的 水平坐标,S10为水平坐标之和。遍历上述二值化图像,其中,如果像素灰度值为255,M00的 值加1,S01和S10分别加上该点的垂直坐标值和水平坐标值。

在步骤6中,确定内眼角点在该目标区域中的位置。确定内眼角点位置的方法, 包括以下步骤:在本实施例中,对Susan算子进行改进,并对该目标区域进行检测,可得到 如图2所示的检测模板。在本文中,以确定左内眼角点的位置为示范性实施例,以便清楚地 说明。使用图2中左边的检测模板遍历该目标区域的眼睛图像的左半部分,分别计算该检测 模板中阴影区域以及空白区域所覆盖的像素点的灰度平均值。如果这两个区域的灰度平均值 之差大于一预设的阈值,优选为20,可以判定该检测模板中的中心像素点为内眼角点。类似 的检测步骤可用于确定右内眼角点的位置。

可以使用若干个类似于图2所示的检测模板,对该目标区域进行检测,由此计算 出若干个不同的内眼角点。众所周知,例如,左眼的内眼角点位于左眼睑边缘的右下顶点, 右眼的内眼角点位于右眼睑边缘的左下顶点。因此,确定若干个不同的内眼角点中的左/右下 顶点为右/左内眼角点。

在步骤7中,根据该两个瞳孔中点以及该两个内眼角点建立视线模型,然后根据 该视线模型以及几何关系,确定视线焦点在屏幕上的具体位置。如图3所示,该两个内眼角 点的连线中点定义为基准点,第一点10,该两个瞳孔中心的连线中点定义为视线动点,即第 二点11。在输入密码之前,可以校准屏幕,使用者通过注视屏幕的顶点,例如左上角和右下 角顶点,以检测第二点11相对于第一点10的偏离量。通过这些偏移量,可以估计得出第二 点11的可能活动区域。将从第一点10指向第二点11的向量定义为视线矢量13,由于该可 能活动区域与屏幕之间存在线性对应关系12,通过比较视线矢量13与该偏移量,其中该偏 移量为使用者注视屏幕的顶点时的视线矢量,可以计算得出视线焦点注视屏幕的具体位置。

在步骤8中,该视线焦点在该虚拟键盘的该具体位置上停留特定时间,然后确定 该具体位置所显示的字符为输入密码值。特定时间可以由处理单元预先设定,并且当使用者 的视线焦点停留在该具体位置上达到该特定时间时,处理单元可以发送一指令,使得屏幕显 示成功输入单个密码的信号,如“密码输入成功”窗口。

该硬件装置每执行一次步骤3至步骤8的流程,也就是说,使用者完成单个密码 字符的输入。在步骤9中,输入单个密码字符之后,处理单元判定密码输入是否完成。当密 码并未完整输入时,该硬件装置重复执行步骤3至步骤8的流程,以输入下一个密码字符; 当密码完整输入时,结束该流程。

以上对本发明实施例所提供的技术方案进行了详细介绍,本文中应用了具体个例 对本发明实施例的原理以及实施方式进行了阐述,以上实施例的说明只适用于帮助理解本发 明实施例的原理;同时,对于本领域的一般技术人员,依据本发明实施例,在具体实施方式 以及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号