一种眼控鼠标实现方法及识别眼动轨迹实现键盘输入方法技术

技术编号:25395291 阅读:43 留言:0更新日期:2020-08-25 23:00
本发明专利技术公开了一种眼控鼠标实现方法及识别眼动轨迹实现键盘输入方法,首先从网络摄像头读取一帧分辨率为640*480图像,经过人眼定位跟踪,人眼预处理等操作后,将预处理后的人眼图像输入卷积神经网络中以粗略预测人眼在电脑屏幕上的注视点然后利用该预测结果,使用三种鼠标移动方式,可以将鼠标光标精准移动到目标物体上并用类似眨眼的方式触发点击操作;提出了一种识别眼动轨迹实现键盘打字的方法,设计了打字的流程,设计了91种键盘键位对应的视线轨迹,可基本实现键盘上所有按键的输入。本发明专利技术可利用视线追踪不精确的定位结果,完成计算机上精确的交互,还可代替硬件键盘和鼠标;交互所需的额外采集设备为一个单目网络摄像头,成本低易获得。

【技术实现步骤摘要】
一种眼控鼠标实现方法及识别眼动轨迹实现键盘输入方法
本专利技术涉及属于视觉跟踪
,具体涉及一种眼控鼠标实现方法及识别眼动轨迹实现键盘输入方法。
技术介绍
现有的已经市场化的眼动仪技术成熟、精度高。完全可以满足所有的眼动研究以及眼动交互任务。但是眼动仪的价格通常在千元级别,设备比较昂贵。科研人员研制的低成本硬件能解决特定人群的部分需求,但封闭的研发过程使得他们的技术不易普及。一款简单、便捷且大多数人都容易获得的眼动交互技术有待开发。相较于昂贵的眼动仪,价格低廉的网络摄像头更易获得,大多数笔记本电脑就自带前置网络摄像头,可以提供现成的设备环境。本专利技术的目的是利用最简单的网络摄像头作为眼动数据的采集设备。使用卷积神经网络粗略估计人眼视线方向,并提出一种可以高精度移动鼠标光标的方法,和一种采用视线轨迹的键盘输入方法,完成计算机上大部分常规输入功能。使普通人在使用计算机时能够解放双手,肢体障碍人士无需四肢就可以操控计算机。
技术实现思路
为解决上述问题,本专利技术提出了一种眼控鼠标实现方法及识别眼动轨迹实现键盘输入方法。本专利技术的技术方案如下:本专利技术粗略定位注视点所使用到的卷积神经网络是一个比较普通的网络结构,只做了参数和结构上的优化,使之其误差尽可能的减少。不过由于这种神经网络预测人眼视线的方法是基于一个低分辨率平面图像的,与眼动仪这种能够获取瞳孔立体信息的设备相比误差较大,抖动范围也很大。难以稳定预测注视点完成操作鼠标和输入字符这种高精度的操作。所以基本没有研究人员利用这种方法来分析人眼焦点或是做交互应用的研究。因此本专利技术的创新点就是提出了使用低分辨率图像的卷积神经网络视线追踪方式在计算机上的交互办法:1、利用视线追踪不精准的预测结果,提出了三种鼠标移动方式,可以精准移动到目标物体上。2、提出了一种识别眼动轨迹实现键盘打字的方法,设计了打字的流程,设计了91种键盘键位对应的视线轨迹,可基本实现键盘上所有按键的输入。本专利技术的技术方案如下:一、一种眼控鼠标实现方法,包括以下步骤;(1)从网络摄像头读取一帧分辨率为640*480图像,包含使用者的正脸。经过人眼定位跟踪,人眼预处理等操作后,得到最终作为识别和分析的人眼图像;(2)将预处理后的人眼图像作为输入,首先经过两个卷积层进行卷积操作。卷积层用到20个卷积核,尺寸为(5,5),步长为(1,1),激活函数为Relu。在卷积提取特征完毕以后,经过池化层,池化层的尺寸为(2,2),步长为(2,2),随后将两张图片的特征进行融合,经过全链接层,激活函数tanh,得到两个输出参数,即预测的注视点在屏幕上的坐标x,y归一值。此外,也可采用其他主流的基于外观的注视估计办法来对视线的方向进行预测,预测所需的数据需要预处理后的人眼图像,也可能需要人脸姿态,角度等参数。但预测得出的结果都为预测的注视点在屏幕上的坐标x,y归一值。(3)第(2)步视线追踪预测结果在屏幕上会存在平均2cm的误差,直接设置鼠标光标在该位置上抖动范围会很大,无法选择点击较小的目标,需采用交互用的鼠标光标移动的方法,有效控制光标移动的路线,并最终将它移动至使用者想要点击的目标位置处,使用其他方法触发鼠标点击;上述用到的鼠标光标移动的方法有三种,分别是:凝视移动方法、相对中心移动方法和遥控移动方法;凝视移动方法的功能是设置鼠标光标的初始位置,使鼠标光标基本移动到目标物体的附近:以目标物体为圆心,半径为2cm;相对中心移动算法和遥控移动方法都是用来微调鼠标的位置,使鼠标光标可以精确地调整至目标物体上,从而进行点击操作;鼠标移动方法的选择根据视线追踪误差大小的情况和使用者的习惯来进行设置:1)如在视线追踪误差较大的情况下,需要先使用凝视移动来将鼠标调整到目标物体附近的位置;如果鼠标此时已经落在目标物体上,则直接眨眼触发鼠标点击;如果是落在目标物体附近,则使用相对中心移动或遥控移动,来细微调整鼠标的位置到目标物体上;2)相对于相对中心移动和遥控移动,凝视移动是一种比较粗略的移动方法,所以不会在使用相对中心移动或遥控移动之后,再使用凝视移动的方法。用帧数来记录时间,随帧数的增加,鼠标位置计算选择的移动方法可按如下变化:第0~5帧:直接设置鼠标位置在视线追踪的预测点上。第6~105帧:使用凝视移动方法。第106~115帧:鼠标位置暂时确定,无法移动鼠标。第116帧以后:根据使用者习惯,可用相对中心移动方法或是遥控移动方法调整鼠标位置;此外,如识别到使用者单眼眨眼时不移动光标;如识别到使用者双眼眨眼0.5秒以上时重置帧计数为0,重新开始一个鼠标光标的位置调整。1)凝视移动方法具体操作为:鼠标不直接移动至视线预测点,而往视线预测点的方向进行修正,假设鼠标位置与预测点位置的距离为L1,则将鼠标往预测点方向移动D1的距离。D1的计算公式如式(5.1)。D1=L1×W1(5.1)其中W1为修正的权重,W1越小鼠标移动得越慢,抖动越小,越稳定。随着帧数的增加,将决定鼠标移动距离和稳定性的W1逐渐减小,移动的距离D1随之减小,鼠标会慢慢稳定下来。当W1减小至零时,移动距离D1也变为零,鼠标不再移动。假设W1初始值为Wa,规定从0开始经过Fb个帧数后鼠标将不再移动,W1的数值随帧数F(0<F<Fb)线性变化的函数式如(5.1)所示。参考可取Wa=0.1,Fb=100。2)相对中心移动方法是在鼠标当前的位置已经距离目标物体不远时,使用该方法微调鼠标的位置。鼠标的移动方式为向预测点相对屏幕中心的方向移动,计算屏幕中心坐标与预测的注视点之间的距离L2,预测点相对屏幕中心在什么方向,鼠标就往其平行的方向移动D2的距离。D2的计算公式如式(5.3):D2=L2×W2(5.3)同样有一个控制移动距离的权重W2。权重W2不随时间变化,而是依据具体情况设置具体数值,可取W2=0.005左右。3)遥控移动方法的功能是在鼠标当前的位置已经距离目标物体不远时微调鼠标的位置;类似遥控器的左右上下四个方向键,鼠标只能在上下左右四个方向移动。将屏幕分成上下左右四个区域,当预测点出现在哪个区域,鼠标就往对应的方向进行移动,预测点出现在上方的区域,预测点与屏幕中心的y轴距离为L3,于是将鼠标向上移动D3个像素距离。控制移动距离的权重W3;权重W3也不随时间变化,而是依据具体情况设置具体数值,可取W3=0.005左右。D3=L3×W3(5.3)二、一种识别眼动轨迹实现键盘输入方法(1)眼动轨迹输入编码的原理:眼动轨迹用视线追踪控制的鼠标移动轨迹来表示,将一块屏幕分成四大区域;每个区域用一个顶点来表示,有四个顶点V1~V4,对应四个码元的输入,根据区域的联通情况有六条无向边e1~e6,是视线可移动的轨迹;为避免误输入,可以把有效输入码元的区域缩小,本文档来自技高网...

【技术保护点】
1.一种眼控鼠标实现方法,其特征在于:所述眼控鼠标的方法包括以下步骤;/n(1)从网络摄像头读取一帧分辨率为640*480图像,包含使用者的正脸;经过人眼定位跟踪,人眼预处理等操作后,得到最终作为识别和分析的人眼图像;/n(2)将预处理后的人眼图像作为输入,首先经过两个卷积层进行卷积操作。卷积层用到20个卷积核,尺寸为(5,5),步长为(1,1),激活函数为Relu;在卷积提取特征完毕以后,经过池化层,池化层的尺寸为(2,2),步长为(2,2),随后将两张图片的特征进行融合,经过全链接层,激活函数tanh,得到两个输出参数,即预测的注视点在屏幕上的坐标x,y归一值;此外,也可采用其他主流的基于外观的注视估计办法来对视线的方向进行预测,预测所需的数据需要预处理后的人眼图像,也可能需要人脸姿态,角度等参数;但预测得出的结果都为预测的注视点在屏幕上的坐标x,y归一值;/n(3)第(2)步视线追踪预测结果在屏幕上会存在平均2cm的误差,直接设置鼠标光标在该位置上抖动范围会很大,无法选择点击较小的目标,需采用交互用的鼠标光标移动的方法,有效控制光标移动的路线,并最终将它移动至使用者想要点击的目标位置处,使用其他方法触发鼠标点击;/n上述用到的鼠标光标移动的方法有三种,分别是:凝视移动方法、相对中心移动方法和遥控移动方法;/n凝视移动方法的功能是设置鼠标光标的初始位置,使鼠标光标基本移动到目标物体的附近:以目标物体为圆心,半径为2cm;/n相对中心移动算法和遥控移动方法都是用来微调鼠标的位置,使鼠标光标可以精确地调整至目标物体上,从而进行点击操作;/n鼠标移动方法的选择根据视线追踪误差大小的情况和使用者的习惯下来进行设置:/n1)如在视线追踪误差较大的情况下,需要先使用凝视移动来将鼠标调整到目标物体附近的位置;如果鼠标此时已经落在目标物体上,则直接眨眼触发鼠标点击;如果是落在目标物体附近,则使用相对中心移动或遥控移动,来细微调整鼠标的位置到目标物体上;/n2)相对于相对中心移动和遥控移动,凝视移动是一种比较粗略的移动方法,所以不会在使用相对中心移动或遥控移动之后,再使用凝视移动的方法;/n用帧数来记录时间,随帧数的增加,鼠标位置计算选择的移动方法可按如下变化:/n第0~5帧:直接设置鼠标位置在视线追踪的预测点上;/n第6~105帧:使用凝视移动方法;/n第106~115帧:鼠标位置暂时确定,无法移动鼠标;/n第116帧以后:根据使用者习惯,可用相对中心移动方法或是遥控移动方法调整鼠标位置;/n此外,如识别到使用者单眼眨眼时不移动光标;如识别到使用者双眼眨眼0.5秒以上时重置帧计数为0,重新开始一个鼠标光标的位置调整。/n...

【技术特征摘要】
1.一种眼控鼠标实现方法,其特征在于:所述眼控鼠标的方法包括以下步骤;
(1)从网络摄像头读取一帧分辨率为640*480图像,包含使用者的正脸;经过人眼定位跟踪,人眼预处理等操作后,得到最终作为识别和分析的人眼图像;
(2)将预处理后的人眼图像作为输入,首先经过两个卷积层进行卷积操作。卷积层用到20个卷积核,尺寸为(5,5),步长为(1,1),激活函数为Relu;在卷积提取特征完毕以后,经过池化层,池化层的尺寸为(2,2),步长为(2,2),随后将两张图片的特征进行融合,经过全链接层,激活函数tanh,得到两个输出参数,即预测的注视点在屏幕上的坐标x,y归一值;此外,也可采用其他主流的基于外观的注视估计办法来对视线的方向进行预测,预测所需的数据需要预处理后的人眼图像,也可能需要人脸姿态,角度等参数;但预测得出的结果都为预测的注视点在屏幕上的坐标x,y归一值;
(3)第(2)步视线追踪预测结果在屏幕上会存在平均2cm的误差,直接设置鼠标光标在该位置上抖动范围会很大,无法选择点击较小的目标,需采用交互用的鼠标光标移动的方法,有效控制光标移动的路线,并最终将它移动至使用者想要点击的目标位置处,使用其他方法触发鼠标点击;
上述用到的鼠标光标移动的方法有三种,分别是:凝视移动方法、相对中心移动方法和遥控移动方法;
凝视移动方法的功能是设置鼠标光标的初始位置,使鼠标光标基本移动到目标物体的附近:以目标物体为圆心,半径为2cm;
相对中心移动算法和遥控移动方法都是用来微调鼠标的位置,使鼠标光标可以精确地调整至目标物体上,从而进行点击操作;
鼠标移动方法的选择根据视线追踪误差大小的情况和使用者的习惯下来进行设置:
1)如在视线追踪误差较大的情况下,需要先使用凝视移动来将鼠标调整到目标物体附近的位置;如果鼠标此时已经落在目标物体上,则直接眨眼触发鼠标点击;如果是落在目标物体附近,则使用相对中心移动或遥控移动,来细微调整鼠标的位置到目标物体上;
2)相对于相对中心移动和遥控移动,凝视移动是一种比较粗略的移动方法,所以不会在使用相对中心移动或遥控移动之后,再使用凝视移动的方法;
用帧数来记录时间,随帧数的增加,鼠标位置计算选择的移动方法可按如下变化:
第0~5帧:直接设置鼠标位置在视线追踪的预测点上;
第6~105帧:使用凝视移动方法;
第106~115帧:鼠标位置暂时确定,无法移动鼠标;
第116帧以后:根据使用者习惯,可用相对中心移动方法或是遥控移动方法调整鼠标位置;
此外,如识别到使用者单眼眨眼时不移动光标;如识别到使用者双眼眨眼0.5秒以上时重置帧计数为0,重新开始一个鼠标光标的位置调整。


2.根据权利要求1所述的一种眼控鼠标实现方法,其特征在于,所述凝视移动方法具体操作为:
鼠标不直接移动至视线预测点,而往视线预测点的方向进行修正,假设鼠标位置与预测点位置的距离为L1,则将鼠标往预测点方向移动D1的距离;D1的计算公式如式(5.1)。
D1=L1×W1(5.1)
其中W1为修正的权重,W1越小鼠标移动得越慢,抖动越小,越稳定;
随着帧数的增加,将决定鼠标移动距离和稳定性的W1逐渐减小,移动的距离D1随之减小,鼠标会慢慢稳定下来。当W1减小至零时,移动距离D1也变为零,鼠标不再移动;
假设W1初始值...

【专利技术属性】
技术研发人员:贺辉
申请(专利权)人:北京师范大学珠海分校
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1