一种利用眼睛视线来实现密码输入的方法及其硬件装置制造方法
【专利摘要】本发明涉及一种利用眼睛视线来实现密码输入的方法及其硬件装置,该硬件装置包括摄像单元、显示器单元以及处理单元,该方法包括以下步骤:由摄像单元拍摄脸部图像,然后形成积分数值图像,使用Adaboost遍历该积分数值图像并进行联级检测以确定包含有使用者眼睛的目标区域,确定该目标区域中左右眼的瞳孔中心以及内眼角点的位置,并根据几何关系确定视线焦点在该显示器单元上的具体位置,以完成输入密码。本发明的方法相对于现有技术更安全、更快捷方便、输入准确度更高,而且其所需的硬件配置更简单,节约了成本。
【专利说明】-种利用眼睛视线来实现密码输入的方法及其硬件装置
【技术领域】
[0001] 本发明涉及模式识别技术以及图像处理技术,特别地涉及一种计算眼睛视线焦点 来实现密码输入的方法及其硬件装置。
【背景技术】
[0002] 随着科技的发展,盗窃密码的技术也在不断地进步,对传统物理键盘的密码输入 方式造成严重的安全威胁。但目前传统物理键盘的密码输入方式依然占据着主流位置,例 如随处可见的ATM机仍然采用九宫格的物理键盘进行密码的输入,安全性较低。于是,亟需 一种保密性高又能大规模推广的新型密码输入方式。
[0003] 眼睛是人类心灵的窗口,通过眼睛来传递信息符合自然的交互方式。近年来,计算 设备的性能大幅提高,再加上模式识别算法的精确度有显著的进展,为眼控密码输入的新 型密码输入方式提供了技术实现的基础。
[0004] 中国专利CN 103077338 A公开了一种视线追踪密码输入方法和装置,包括下列步 骤:一摄影单元对一区域连续撷取影像,该摄影单元所撷取的影像传送至一运算单元,其中 当一人员接近该摄影单元且该人员的眼睛进入该区域时,该摄影单元连续撷取该人员的该 眼睛的影像,该运算单元判断该人员的眼睛注视输入区中的某一位置,将该位置所显示的 字符作为密码输入,该运算单元将该至少两个输入的字符与一默认的密码做比对,若输入 的字符与默认的密码相符,则人员通过认证。然而,该发明仅仅公开了由摄像单元拍摄人员 眼睛的影像,以判断该人员所注视的输入区的字符,并未具体公开该装置如何确定人员眼 睛所注视的输入区的方法,尽管该发明可以通过运算单元将至少两个输入字符与默认的密 码做比对,并由人员通过认证,从而确保密码输入的正确性,但是由于上述确认密码步骤的 存在,使得密码输入过程复杂化并且增加了密码输入的耗时。
[0005] 中国专利CN 102129554 B公开了一种基于视线跟踪的密码输入控制方法,该密码 输入控制方法包括具体包括以下步骤:(1)人脸图像预处理及人眼特征参数提取:根据人 脸的结构特性进行人脸检测并在符合人脸结构特性的人脸区域内进行人眼特征参数的提 取;(2)估计当前注视点位置:采用基于相似三角形的双光源视线跟踪实现从人眼特征参 数到当前注视点位置的估计;(3)根据注视点位置进行密码输入操作控制:根据注视点的 位置,利用时间门限及声音反馈来控制密码输入的操作。然而,这种方法还需要在屏幕的两 个底角以及例如左上角的三个不同位置设置红外光源,以确定人员的眼睛瞳孔所注视的当 前视点位置,这不仅增加了密码输入的硬件设备,而且将红外光源设置于特定位置时,需要 保证红外光源的位置正确,有利于人员眼睛瞳孔的当前视点位置的计算,这样会使得硬件 配置要求复杂化。
【发明内容】
[0006] 本发明的目的,就是克服现有技术的不足,提供一种更安全、更快捷方便、输入准 确度更高的利用眼睛视线来实现密码输入的方法。
[0007] 本发明的目的还在于提供一种对硬件配置要求更少、结构更简单的密码输入硬件 装直。
[0008] 为了达到上述目的,采用如下技术方案:
[0009] (1)设置显示器单元以及摄像单元,该摄像单元位于该显示器单元以外的任意位 置,并朝向使用者的脸部,该显示器单元显示虚拟键盘,该使用者注视该虚拟键盘上的特定 字符;
[0010] (2)该摄像单元拍摄使用者的脸部图像,并对该脸部图像进行颜色空间转换处理, 以将该脸部图像从彩色转换为灰度图像;
[0011] (3)计算该灰度图像的各点像素积分数值,以形成积分数值图像;
[0012] (4)训练若干个不同的Adaboost分类器,其中该若干个不同的分类器为弱分 类器,该弱分类器根据使用者预设的不同的级别,集合并形成各级强分类器,然后使用 Adaboost遍历该积分数值图像并进行级联检测,以计算每个具有haar特征的该弱分类器 的特征值,判断该积分数值图像是否通过该各级强分类器,从而检测相对应的该图像是否 包含使用者的眼睛;
[0013] (5)定义包含使用者的眼睛区域为目标区域,确定该目标区域中左右眼的瞳孔中 心以及内眼角点的位置;
[0014] (6)根据该两个瞳孔中点以及该两个内眼角点建立视线模型,根据该视线模型以 及几何关系,确定视线焦点在该显示器单元上的具体位置;
[0015] (7)该视线焦点在该虚拟键盘的该具体位置上停留特定时间,确定该具体位置所 显示的字符为使用者需要输入的密码值。
[0016] 根据一个实施例,步骤(2)中的将该图像从彩色转换为灰度图像,所采用的计算 公式为: Y = 0. 257 R+0. 564 G+0. 098 B 其中,Y为灰值度,R为红色分量,G为绿色分量,B为蓝色分量。
[0017] 根据一个实施例,步骤(3)中的计算该灰度图像的各点像素积分数值,当各点像 素积分数值的haar特征为非倾斜矩形,像素点(X,y)位于非零行列时,所采用的计算公式 为: ii (x, y) = ii (χ, y_l)+ii (x-1, y)_ii (x-1, y-l)+p(x_l, y_l) 其中,(x,y)表示该像素点的坐标,ii (x, y)表示该像素点(x,y)的积分值,P(x, y)表 示该像素点(χ,y)的灰度值。
[0018] 根据一个实施例,步骤(3)中的计算该灰度图像的各点像素积分数值,当各点像 素积分数值的haar特征为倾斜矩阵,像素点(X,y)位于非零行列时,所采用的计算公式 为: ii (x, y) = ii (x-1, y_l)+ii (x+1, y_l)_ii (χ, y_2)+p(x_l, y-l)+p(x-l, y-2) 其中,(x,y)表示该像素点的坐标,ii (x, y)表示该像素点(x,y)的积分值,P(x, y)表 示该像素点(χ,y)的灰度值。
[0019] 根据一个实施例,步骤(4)中Adaboost中的haar特征包括线性特征的haar矩形、 边缘特征的haar矩形、中心特征的haar矩形和对角线特征的haar矩形,该haar矩形的尺 寸大小根据使用者预设的检测精度和运算量可调,该haar矩形的特征值采用积分图的方 式来计算。
[0020] 根据一个实施例,步骤(4)中的该各级强分类器的数量以及每个该强分类器所包 含的弱分类器的数量根据使用者预设的检测精度和运算量可调。
[0021] 根据一个实施例,步骤(6)中的该视线模型根据几何关系,将该两个瞳孔中点与 该两个内眼角点之间的向量投影在该显示器单元平面上,以确定该视线焦点在该显示器单 元上的具体位置。
[0022] 根据一个实施例,保持该图像的尺寸不变,以设定比例放大遍历该积分数值图像 的检测窗口,以检测不同使用者的眼睛,选取尺寸最大的使用者的眼睛区域作为目标区域。
[0023] 本发明的目的还可以通过一种利用眼睛视线来实现密码输入的硬件装置来实现, 其包括:摄像单元;显示器单元;以及处理单元,其中,该摄像单元位于显示器单元以外的 任意位置,朝向并持续拍摄使用者的脸部,该显示器单元显示虚拟键盘,该处理单元用于处 理该摄像单元所拍摄的使用者的脸部图像,以确定使用者的视线焦点在该显示器单元上的 具体位置。
[0024] 根据一个实施例,该处理单元可以为个人计算机、嵌入式系统或现场可编程门阵 列系统FPGA。
[0025] 与现有技术相比,本发明的有益效果在于:
[0026] 通过本发明的上述方法以及硬件装置,可以获得使用者眼睛的图像,并且通过处 理单元对图像的处理和计算,建立视线模型,从而估计得出使用者的视线焦点在显示器单 元上的具体位置,并将对应位置上的字符作为输入密码。这种方法以及硬件装置相对于现 有技术而言,不需要设置红外光源以对准使用者的瞳孔,并且摄像单元只需要设置在正面 朝向使用者脸部的位置,对图像的处理、视线模型的建立以及密码的输入更多地依靠处理 单元的内置程序来完成。因此,本发明所需的硬件数量更少、结构更简单,并且无需额外配 置光源,硬件如摄像单元的安装位置的精确度要求更低,便于使用者安装;其次,本发明通 过建立视线模型以估计使用者视线焦点所注视的具体位置,其校准步骤以及确认输入的密 码步骤更为灵活,节省了使用者输入密码的耗时;另外,本发明可以适应不同使用者的眼睛 尺寸以估计其视线焦点所注视的具体位置,适用于任何利用眼睛视线来实现密码输入的场 合。
【专利附图】
【附图说明】
[0027] 图1是根据本发明实施例的利用眼睛视线来实现密码输入的方法流程图。
[0028] 图2是根据本发明实施例的改进Susan算子的检测模板图。
[0029] 图3是根据本发明实施例的建立视线模型示意图。
【具体实施方式】
[0030] 下面将结合附图以及具体实施方法来详细说明本发明,在本发明的示意性实施及 说明用来解释本发明,但并不作为对本发明的限定。
[0031] 图1是根据本发明实施例的利用眼睛视线来实现密码输入的方法流程图。在步骤 1中,摄像单元设置在显示器单元的正上方,并且正面朝向使用者的脸部,显示器单元,例如 屏幕可以显示虚拟键盘,该虚拟键盘的键可以是数字、字母和/或特殊符号。当使用者注视 虚拟键盘的某个键达到一特定时间,处理单元,例如个人计算机嵌入式系统或FPGA系统可 确定该键所显示的字符为对应的输入密码。
[0032] 摄像单元拍摄使用者的脸部图像,然后将图像传送至处理单元进行颜色空间转换 处理,以将该图像从彩色转换为灰度图像,在此转换过程中采用以下公式: Y = 0. 257 R+0. 564 G+0. 098 B
[0033] 其中,Y是灰度值,R是红色分量,G是绿色分量,B是蓝色分量。
[0034] 计算步骤1所得出的灰度图像的各点像素积分数值,以形成积分数值图像。
[0035] 在本实施例中,设置灰度图像的坐标原点为(0,0),各点像素的坐标为(X, y),当 各点像素积分数值的haar特征为非倾斜矩形,其积分数值根据以下计算方法进行计算:
[0036] 如果像素点(X,y)位于该灰度图像的第0行的第0列,该像素点的积分数值为: ii (x, y) = p(x-l, y-1)
[0037] 如果像素点(χ,y)位于该灰度图像的第0行的非零列,该像素点的积分数值为: ii (x, y) = ii (x-1, y)+p(x-l, y-1)
[0038] 如果像素点(x,y)位于该灰度图像的非零行的第0列,该像素点的积分数值为: ii (x, y) = ii (χ, y-l)+p(x_l, y-1)
[0039] 如果像素点(x,y)位于该灰度图像的非零行列,该像素点的积分数值为: ii (x, y) = ii (χ, y_l)+ii (x-1, y)_ii (x-1, y-l)+p(x_l, y-1)
[0040] 其中,ii (x, y)表示该像素点(x, y)的积分值,p(x, y)表示该像素点(x, y)的灰 度值。
[0041] 而当各点像素积分数值的haar特征为倾斜矩形,其积分数值根据以下计算方法 进行计算:
[0042] 如果像素点(X,y)位于该灰度图像的第0行,该像素点的积分数值为: ii (x, y) = 0
[0043] 如果像素点(x,y)位于该灰度图像的第1行的第0列,该像素点的积分数值为: ii (x, y) = 0
[0044] 如果像素点(x,y)位于该灰度图像的第1行的非零列,该像素点的积分数值为: ii (x, y) = p (x-1, y-1)
[0045] 如果像素点(x,y)位于该灰度图像的第0、1行以外的行时,则根据以下情况进行 计算:
[0046] 如果像素点(X,y)位于该灰度图像的第0列,该像素点的积分数值为: ii (x, y) = ii (x+1, y-1)
[0047] 其中,ii (x, y)表示该像素点(x, y)的积分值,p(x, y)表示该像素点(x, y)的灰 度值。
[0048] 在步骤2中,训练若干个不同的Adaboost分类器,这些若干个不同的Adaboost 分类器构成弱分类器。各个该弱分类器均具有haar特征,根据使用者的需要,可以设定 Adaboost的遍历检测精度和运算量以控制haar特征(haar矩形)的尺寸,由此控制各级强 分类器的数量以及每个强分类器所包含的弱分类器的数量,其中,haar矩形的特征值采用 积分数值图像的方式来计算。
[0049] 上述haar特征包括线性特征的haar矩形、边缘特征的haar矩形、中心特征的 haar矩形和对角线特征的haar矩形。
[0050] 在步骤3中,使用Adaboost遍历该积分数值图像并进行联级检测,其包括以下步 骤:首先,各级强分类器所包含的各个弱分类器均需要对该积分数值图像进行检测。在处理 单元中通过一子窗口打开该积分数值图像,以一强分类器中的一弱分类器遍历该子窗口的 图像。通过该弱分类器的haar矩形的顶点坐标,可以在该积分数值图像上所引导相应位置 的像素点,从而得到该像素点的积分数值,用于计算该弱分类器的haar矩形的特征值Θ。
[0051] 为补偿光照的影响,各个弱分类器所设定的阈值都需要添加光照补偿。光照补偿 可以采用以下公式: th_c = th X S X σ S = [(WIDTH-2) X scale]X [(HEIGHT-2) X scale]
【权利要求】
1. 一种利用眼睛视线来实现密码输入的方法,所述方法包括以下步骤: (1) 设置显示器单元以及摄像单元,所述摄像单元位于所述显示器单元以外的任意位 置,并朝向使用者的脸部,所述显示器单元显示虚拟键盘,所述使用者注视所述虚拟键盘上 的特定字符; (2) 所述摄像单元拍摄使用者的脸部图像,并对所述脸部图像进行颜色空间转换处理, 以将所述脸部图像从彩色转换为灰度图像; (3) 计算所述灰度图像的各点像素积分数值,以形成积分数值图像; (4) 训练若干个不同的Adaboost分类器,其中所述若干个不同的分类器为弱分类 器,所述弱分类器根据使用者预设的不同的级别,集合并形成各级强分类器,然后使用 Adaboost遍历所述积分数值图像并进行级联检测,以计算每个具有haar特征的所述弱分 类器的特征值,判断所述积分数值图像是否通过所述各级强分类器,从而检测相对应的所 述脸部图像是否包含使用者的眼睛; (5) 定义包含使用者眼睛的区域为目标区域,确定所述目标区域中左右眼的瞳孔中心 以及内眼角点的位置; (6) 根据所述两个瞳孔中点以及所述两个内眼角点建立视线模型,根据所述视线模型 以及几何关系,确定视线焦点在所述显示器单元上的具体位置; (7) 所述视线焦点在所述虚拟键盘的所述具体位置上停留特定时间,确定所述具体位 置所显示的字符为使用者需要输入的密码值。
2. 根据权利要求1所述的方法,其特征在于,所述步骤(2)中的将所述图像从彩色转换 为灰度图像,所采用的计算公式为: Y = 0. 257 R+0. 564 G+0. 098 B 其中,Y是灰度值,R是红色分量,G是绿色分量,B是蓝色分量。
3. 根据权利要求1所述的方法,其特征在于,所述步骤(3)中的计算所述灰度图像的各 点像素积分数值,当各点像素积分数值的haar特征为非倾斜矩形,像素点(X,y)位于非零 行列时,所采用的计算公式为: ii (x, y) = ii (χ, y_l)+ii (x-1, y)_ii (x-1, y-l)+p(x_l, y_l) 其中,(x,y)表示所述像素点的坐标,ii(x,y)表示所述像素点(x,y)的积分值,P(x,y) 表示所述像素点(χ,y)的灰度值。
4. 根据权利要求1所述的方法,其特征在于,所述步骤(3)中的计算所述灰度图像的各 点像素积分数值,当各点像素积分数值的haar特征为倾斜矩阵,像素点(X,y)位于非零行 列时,所采用的计算公式为: ii (x, y) = ii (x-1, y_l)+ii (x+1, y_l)_ii (χ, y_2)+p(x_l, y-l)+p(x-l, y-2) 其中,(x,y)表示所述像素点的坐标,ii(x,y)表示所述像素点(x,y)的积分值,P(x,y) 表示所述像素点(χ,y)的灰度值。
5. 根据权利要求1所述的方法,其特征在于,所述步骤(4)中Adaboost中的haar特征 包括线性特征的haar矩形、边缘特征的haar矩形、中心特征的haar矩形和对角线特征的 haar矩形,所述haar矩形的尺寸大小根据使用者预设的检测精度和运算量可调,所述haar 矩形的特征值采用积分图的方式来计算。
6. 根据权利要求1所述的方法,其特征在于,所述步骤(4)中的所述各级强分类器的数 量以及每个所述强分类器所包含的弱分类器的数量根据使用者预设的检测精度和运算量 可调。
7. 根据权利要求1所述的方法,其特征在于,所述步骤¢)中的所述视线模型根据几 何关系,将所述两个瞳孔中点与所述两个内眼角点之间的向量投影在所述显示器单元平面 上,以确定所述视线焦点在所述显示器单元上的具体位置。
8. 根据权利要求1所述的方法,进一步包括以下步骤:保持所述图像的尺寸不变,以设 定比例放大遍历所述积分数值图像的检测窗口,以检测不同使用者的眼睛,选取尺寸最大 的使用者的眼睛区域作为目标区域。
9. 一种利用眼睛视线来实现密码输入的硬件装置,所述硬件装置包括: _摄像单兀; -显示器单元;以及 -处理单元, 其特征在于,所述摄像单元位于显示器单元以外的任意位置,朝向并持续拍摄使用者 的脸部,所述显示器单元显示虚拟键盘,所述处理单元用于处理所述摄像单元所拍摄的使 用者的脸部图像,以确定使用者的视线焦点在所述显示器单元上的具体位置。
10. 根据权利要求9所述的硬件装置,其特征在于,所述处理单元可以为个人计算机、 嵌入式系统或现场可编程门阵列系统FPGA。
【文档编号】G06F21/31GK104156643SQ201410361283
【公开日】2014年11月19日 申请日期:2014年7月25日 优先权日:2014年7月25日
【发明者】庞志勇, 陈弟虎, 张媛 申请人:中山大学