眼电信号采集方法及基于眼电信号控制的蓝牙鼠标系统与流程

文档序号:12461815阅读:714来源:国知局
眼电信号采集方法及基于眼电信号控制的蓝牙鼠标系统与流程

本发明属于生物信息技术领域,特别涉及眼电信号的识别和控制技术。



背景技术:

患者的肢体运动功能障碍严重影响其与外界的沟通能力,传统的人机交互设备,如键盘、鼠标等无法满足患者的需求。针对上述特殊的人群的需求,开发一些新型的不依赖于肢体的人机交互设备是一个可行的解决方案,而利用人体自身的生物电信号来实现人机交互是一种重要的技术手段。

例如公开号为CN102662473的中国发明专利申请,于2012年9月12日公开了“基于眼部动作识别来实现人机信息交互的装置及方法”,该装置包括摄像头、传感器和处理器所构成的硬件设备。通过定时采集图像数据,提取瞳孔中心位置模块,再对位置进行分析以及动作处理来实现人机交互。但该装置也存在一些问题,比如系统结构复杂,处理过程繁琐,造成操作不变,成本也高。

例如公开号为CN102129307B的中国发明专利申请,于2014年5月21日公开了“一种基于眼电信号的计算机输入控制方法”,该方案的基本原理是通过眨眼信号进行行和列的循环选择,与计算机进行通信。但该发明仅局限于打字,且要与特定的设备相连接,体积庞大操作不便,应用范围狭窄,采用轮循高亮的方式进行打字,经过多次眨眼输出后才能发出一次完整的控制命令,控制功能单一,打字速度慢。



技术实现要素:

本发明为解决上述技术问题,提出了一种眼电信号处理方法及基于眼电信号控制的蓝牙鼠标系统,以五种典型的眼电信号(向上看、向下看、向左看、向右看以及眨眼)为基础,通过相关的电路和算法,将眼部电信号转换为控制命令,实现对鼠标的控制。

本发明采用的技术方案是:眼电信号处理方法,包括:

M1、对眼电信号进行起始点检测,获取有用信号;

M2、提取有用信号特征,主要包括:

A1、有眼电信号所在的通道;

A2、有用信号在基线的上面或下面;

A3、有用信号的差分取绝对值信号中波峰的个数;

A4、有用信号的差分取绝对值信号中第一个和第二个波峰之间的距离;

M3、通过过零点分析,识别出向左看或向右看或向下看的眼部动作;根据有用信号的差分取绝对值信号中波峰的个数和有用信号的差分取绝对值信号中第一个和第二个波峰之间的距离,识别出向上看或连续两次眨眼的眼部动作。

进一步地,所述步骤M1具体为:对原始输入的眼电数据进行一阶差分预算并取绝对值,当该绝对值大于或等于设定的阈值时,则表示找到眼部动作对应的眼电信号开始位置。

进一步地,步骤S3所述的过零点分析包括:设定上限阈值CP和下限阈值CN。

进一步地,所述步骤S3具体包括以下分步骤:

M31、计算第一通道的能量总和为EV,计算第二通道的能量总和为EH,对EV与EH取绝对值,分别表示为:absEV、absEH;

M32、当第一通道与第二通道都有有用信号时,执行步骤M35;否则执行步骤M33;

M33、当第二通道有有用信号与第二通道的波峰个数N2大于或等于2同时成立时,执行步骤M35;否则执行步骤M34;

M34、当第一通道有有用信号与第一通道的波峰个数N1大于或等于2同时成立时,执行步骤M38,否则识别为无信号;

M35、若absEH≧absEV,执行步骤M36;否则执行步骤M38;

M36、若EH<CN,识别为向左看,否则执行步骤M37;

M37、若EH>CP,识别为向右看,否则识别为无信号;

M38、若N1≧4,识别为连续两次眨眼,否则执行步骤M39;

M39、若EV<CN,识别为向下看,否则执行步骤M310;

M310、若EV>CP,识别为向上看,否则识别为无信号。

进一步地,所述步骤M3根据动态阈值判断得到波峰的个数;具体包括以下分步骤:

B1、初始化第一位置behind=当前位置usefulp、第二位置mid=(起始点位置usefuls+1)%100、第三位置head=(起始点位置usefuls+2)%100,并初始化波峰peak的值为设定的门限值gate,最大值max为设定的门限值gate,当前通道的数据个数i为0;

B2、当i<50时,执行i++,转至步骤B3,否则i大于或等于50执行步骤B8;

B3、当behind对应的数据buff[behind]小于mid对应的数据buff[mid],与head对应的数据buff[head]大于mid对应的数据buff[mid],同时成立时执行步骤B4;否则执行步骤B7;

B4、判断mid对应的数据buff[mid]大于波峰peak的值,是否成立,若成立则继续判断mid对应的数据buff[mid]大于最大值,是否成立,若成立则执行步骤B5;否则执行步骤B6;

B5、执行下一次迭代的最大值max=buff[mid];下一次迭代的波峰的值peak=本次迭代的最大值max/5*2;

B6、执行波峰个数自加1,即peak_num++;

B7、更新behind、mid、head,具体为:

下一次迭代的第一位置behind=本次迭代的第二位置mid;

下一次迭代的第二位置mid=本次迭代的第三位置head;

下一次迭代的第三位置head=(本次迭代的第三位置head+1)%100;

B8、返回波峰个数。

基于眼电信号控制的蓝牙鼠标系统,包括:眼电信号采集模块、主控模块、电源模块、蓝牙模块以及右腿驱动;所述眼电信号采集模块与主控模块相连,用于根据眼电信号特点采集并放大眼电信号、低噪声;所述电源模块与主控模块相连,用于为眼电信号采集模块、主控模块、蓝牙模块供电;所述蓝牙模块与主控模块相连,用于与外部蓝牙设备连接,通过蓝牙协议控制蓝牙鼠标进行相应的操作;所述右腿驱动与眼电信号采集模块相连,右腿驱动用于抑制共模噪声。

所述眼电信号采集模块包括:氯化银采集电极、前置放大电路、积分器、二阶巴特沃斯低通滤波器、模数转换器;所述氯化银采集电极与前置放大电路相连,用于采集眼电信号;所述前置放大电路用于对眼电信号进行放大处理;所述前置放大电路与积分器相连,所述积分器用于对来自前置放大电路的眼电信号中的直流成分进行校正;所述积分器与二阶巴特沃斯低通滤波器相连,所述二阶巴特沃斯低通滤波器用于滤除来自积分器的眼电信号中的高频噪声;所述模数转换器与二阶巴特沃斯低通滤波器相连,所述模数转换器用于将来自二阶巴特沃斯低通滤波器的眼电信号转换成数字信号;

所述主控模块为数字信号处理器,用于对眼电信号采集模块输出的眼电信号进行眼部动作的分类和识别并转化为控制命令。

本发明的有益效果:本发明通过眼电信号处理方法,识别出向左看、向右看、向下看、向上看和连续两次眨眼等眼部动作后,定义不同的眼部动作对应不同的鼠标操作,通过基于眼电信号控制的蓝牙鼠标系统,实现使用者仅通过眼部动作(向上看、向下看、向左看、向右看以及眨眼)就能控制鼠标实现不同的操作,从而能够帮助双臂缺失的患者,像正常人一样使用电子设备进行上网等操作;本发明电路结构简单,体积小,方便携带,抗干扰能力强,能够广泛用于移动医疗、家庭病人监护等领域。

附图说明

图1为本发明提供的基于眼电信号控制的蓝牙鼠标系统示意图。

图2为本发明提供的鼠标控制的实现过程示意图。

图3为本发明提供的氯化银采集电极安放位置示意图。

图4为本发明实施例提供的起始点检测流程图。

图5为本发明实施例提供的向左看、向右看、向下看的眼部动作识别流程图。

图6为本发明实施例提供的向上看和连续两次眨眼的眼部动作识别流程图。

具体实施方式

为便于本领域技术人员理解本发明的技术内容,下面结合附图对本发明内容进一步阐释。

本发明将以五种典型的眼电信号(向上看、向下看、向左看、向右看以及眨眼)为基础,通过相关的电路和算法,将眼部电信号转换为控制命令,实现对鼠标的控制。该发明不仅实现结构简单,而且可穿戴,低成本,响应速度快,具有很高的市场应用价值。

本发明包括眼电数据采集分析部分和基于眼电数据的蓝牙鼠标控制部分。

所述的数据采集分析部分通过定时器进入中断采集眼电数据,设定定时器定时时间决定采样率如设定定时器时间为10ms采样率为100HZ;通过对眼电数据进行门限检测找到起始点;对眼电数据进行加窗寻找不同眼部动作对应的特征,提取的特征主要包括:1、有眼电信号所在的通道(在起始点检测时已经提取了);2、有用信号在基线的上面还是下面;3、有用信号的差分取绝对值信号中波峰的个数;4、有用信号的差分取绝对值信号中第一个和第二个波峰之间的距离;使用过零点分析和动态阈值识别不同眼部动作对应的特征。所述的蓝牙鼠标控制部分使用状态机控制鼠标的具体操作,便于使用者更加便携使用本发明,避免长时间眼部动作而造成眼部疲劳。

在设计信号采集电路时,使用两路独立参考的眼电信号采集通道,电极安放位置如图3所示,其中位置为E1和E2处的电极采集的是垂直方向的眼电信号(向上看、向下看、眨眼),位置为E3和E4处的电极采集的是水平方向的眼电信号(向左看、向右看),位置E5的电极是输出右腿驱动电路采集的共模噪声反馈到人体,用来抑制共模噪声。

采集到眼电数据后,将原始眼电数据存入buff[p]中,对原始眼电信号进行一阶差分运算并取其绝对值将数据存入diffbuff[p]中;buff[p]在本申请中为一个长度为100的数组,p表示位置,buff[p]表示位置p处的数据;diffbuff[p]在本申请中为一个长度为100的数组用于存原始眼电信号经一阶差分运算并取其绝对值后的数据,p表示位置,buff[p]表示位置p处存的数据。具体的眼电信号处理包括以下步骤:

M1、对眼电信号进行起始点检测,获取有用信号;

起始点检测

首先对眼电信号进行起始点检测,找出眼部动作对应的眼电信号开始位置。对眼电数据进行一阶差分运算并取绝对值后就可以不需要考虑眼电信号基线的漂移,可以使用门限检测法对阈值进行判断,找到起始点,这里的阈值是预先设定的某个值,当眼电数据进行一阶差分运算并取绝对值大于或等于阈值时,则表示找到了起始点,本申请中阈值取值为4000。为提高起始点检测效率,定义一个包含5个数据的窗,当数据满5个之后再进行阈值比较。

如图4所示,判断采集到的眼电信号,若找到了起始点(okfind=1)并且采集满N个数据(本申请中N设置为采集满100个数据,表示为datafull=1),则将okfind=0,让LED灯亮;然后判断通道1(find1)的一组数据是否超过阈值,若是,则通道1有有用信号(表示为find1=1),并记录当前位置(usefulp=p),继续判断通道2(find2)的一组数据是否超过阈值;若通道1(find1)的一组数据未超过阈值,则通道1没有有用信号(表示为find1=0),然后判断通道2的一组数据是否超过阈值;当通道2的一组数据超过阈值,则通道2有有用信号(表示为find2=1),并记录当前位置(usefulp=p);当通道2的一组数据未超过阈值,则通道1没有有用信号(表示为find2=0),然后判断当find1与find2中有一个值为1,则进入等待采集满50个数据;若find1与find2值均为0,则重新返回采集眼电信号;当okfind=1并且datafull=1不成立时,继续采集眼电信号。

M2、提取有用信号特征,主要包括:

A1、有眼电信号所在的通道;

A2、有用信号在基线的上面还是下面;

A3、有用信号的差分取绝对值信号中波峰的个数;

A4、有用信号的差分取绝对值信号中第一个和第二个波峰之间的距离;

M3、通过过零点分析,识别出向左看或向右看或向下看的眼部动作;根据有用信号的差分取绝对值信号中波峰的个数和有用信号的差分取绝对值信号中第一个和第二个波峰之间的距离,识别出向上看或连续两次眨眼的眼部动作。通过在一定的距离内,看差分取绝对值信号波峰的个数,如果只有两个是向上看,四个是连续两次眨眼。

步骤M3所述的过零点分析,具体为:

找到起始点后,以50个眼电数据为一组对其进行分析,对眼电信号进行分类处理,识别出不同的眼部动作。先使用过零点分析识别出有用信号在基线的上面还是下面。过零点分析是通过判断原始眼电数据的正负脉冲信号来识别不同的眼部动作,但是由于眼部在动作时会对信号产生一定的干扰,所以并不选择真正的零点为分割点,而是设定了上限阈值CP和下限阈值CN进行识别,以获取更高的准确率。通过过零点分析可以识别出向左看、向右看、向下看等眼部动作,向上看和连续两次眨眼识别具体为:在一定的距离内,看差分取绝对值信号波峰的个数,如果只有两个是向上看,四个是连续两次眨眼。

识别出向左看、向右看、向下看、向上看和连续两次眨眼,如图5所示,分别计算通道1(find1)和通道2(find2)的能量总和,分别表示为:EV、EH;然后对EV、EH取绝对值,表示为absEH、absEV;然后判断find1与find2是否都为1,若是,则判断absEH是否大于或等于absEV,当absEH>absEV,继续判断EH是否小于CN,若是则识别为向左看,若EH大于或等于CN,则判断EH是否大于CP,若是则识别为向右看,否则识别为无信号;当absEH小于absEV,继续判断通道1的波峰个数N1是否大于或等于4,若是则识别为眨两次眼;否则判断EV是否小于CN,若是则识别为向下看,若EV大于或等于CN,则判断EV是否大于CP,若是则识别为向上看,否则识别为无信号;

当find1与find2不都为1,判断是否find2=1并且通道2的波峰个数N2大于或等于2,若是则继续判断absEH是否大于或等于absEV,若是则判断EH是否小于CN,若是则识别为向左看,若EH大于或等于CN,则判断EH是否大于CP,若是则识别为向右看,否则识别为无信号;若absEH小于absEV,则识别为无信号;

若find2=1并且N2大于或等于2不成立,则判断find1与N1大于等于2是否成立,若是则判断N1是否大于或等于4,若是则识别为眨两次眼,否则判断EV是否小于CN,若是则识别为向下看,若EV大于或等于CN,则判断EV是否大于CP,若是则识别为向上看,否则识别为无信号;当find1与N1大于等于2不成立,则识别为无信号。

通过识别有用信号的差分取绝对值信号中波峰的个数和有用信号的差分取绝对值信号中第一个和第二个波峰之间的距离来区分向上看和连续两次眨眼。但是由于抖动等干扰会造成毛刺和小尖峰的影响,本发明使用动态阈值来判断峰值是否为有效值。综上所述,所有的眼部动作都被识别出来了。动态阈值判断具体如图6所示:

初始化三个位置,第一位置behind=当前位置usefulp,第二位置mid=(起始点位置usefuls+1)%100,第三位置head=(usefuls+2)%100,波峰的值peak=设定的门限值gate,初始时三个位置中的最大值max=波峰的值peak;后面每次都会根据三个位置对应的数据的最大值来更新max的值;

然后判断当前通道是否为第一通道,若是则初始化i=0,然后判断i是否小于50,若是则i自加1,继续判断位置behind对应的数据buff[behind]小于位置mid对应的数据buff[mid],并且位置head对应的数据buff[head]大于buff[mid]是否同时成立,若是则继续判断buff[mid]>peak是否成立,若buff[mid]>peak成立,则继续判断buff[mid]>max是否成立,若成立则执行max=buff[mid],peak=max/5*2,并波峰个数peak_num自加1;若buff[mid]>max不成立,则执行波峰个数peak_num自加1;

若buff[mid]>peak不成立,则执行behind=mid,mid=head,head=(head+1)%100,然后继续判断i是否小于50;

当buff[behind]<buff[mid]与buff[hesd]>buff[mid]不同时成立,则执行behind=mid,mid=head,head=(head+1)%100,然后继续判断i是否小于50;若i大于或等于50,则返回波峰个数peak_num;若当前通道不是第一通道,则对第二通道进行如第一通道同样的操作。

识别出眼部动作后,定义不同的眼部动作对应不同的鼠标操作。向上看鼠标向上移动,向下看鼠标向下移动,向左看鼠标向左移动,向右看鼠标向右移动,连续两次眨眼鼠标停止移动或者为确定操作。

基于眼电数据的蓝牙鼠标控制部分电路,如图1所示,包括:能根据眼电信号特点采集并放大眼电信号、低噪声的眼电信号采集模块、能对眼电信号进行分类和识别的主控制模块、电源模块以及蓝牙模块,如图1所示。所述的眼电信号采集模块包括氯化银采集电极、前置放大器、积分器、二阶巴特沃斯低通滤波器以及模数转换器;主控制模块主要是数字信号处理器,电源模块为整个系统供电,蓝牙模块与自带蓝牙的设备连接并通过蓝牙协议控制蓝牙鼠标进行相应的操作。

如图1所示,两通道氯化银采集电极101将获取到的眼电信号输入到信号采集电路100的输入端;信号采集电路100中的前置放大电路102实现对眼电信号放大,在右腿驱动110抑制共模噪声,积分器103实现校正眼电信号中的直流成份,二阶巴特沃斯低通滤波器104滤除眼电信号中的高频噪声。经过滤波放大后的眼电信号经模数转换器105转换为数字信号,并送入数字信号处理器106,从而实现对眼电信号的分类识别并转化为控制命令,接着蓝牙模块107将控制命令送到接收系统108中,通过控制命令实现对鼠标的操控,电源模块109为整个系统供电。本发明使得使用者仅通过眼部动作(向上看、向下看、向左看、向右看以及眨眼)就能控制鼠标实现不同的操作,从而能够帮助双臂缺失的患者,像正常人一样使用电子设备进行上网等操作。本发明电路结构简单,体积小,方便携带,抗干扰能力强,能够广泛用于移动医疗、家庭病人监护等领域。

所述的氯化银电极101使用普通的氯化银电极;所述的前置放大器102为高输入阻抗、高共模抑制比、低噪声高精度仪器运算放大器,要求共模抑制比在100dB以上放大倍数设置为500倍,如AD8221;所述的右腿驱动电路从仪器运算放大器的输入端提取共模噪声,经射随缓冲之后进行反向放大然后输出至人体,从而实现共模噪声的抑制;积分器103和二阶巴特沃斯低通滤波器104采用高精度、低噪声、低温漂的放大器芯片,如AD8639;所述的积分器103采用的截止频率为0.07HZ,所述的二阶巴特沃斯滤波器104采用的截止频率为20HZ并在第二阶时设置放大倍数为2倍;所述的模数转换器105采用双路高速同步16位A/D转换器,如ADS8354;所述的主控模块106为高主频150MHZ的DSP控制器;所述的蓝牙模块107采用的是蓝牙2.0的协议进行通信;所述的电源模块109,本申请中使用3.7V锂电池进行供电,通过电源芯片进行升压和降压为整个系统进行供电,比如能对3.7V进行升压和降压的电源芯片TPS61222能将3.7V降压至3.3V,且TPS61222能将3.7V升压至5V,以及将正电压转化为负电压为放大器芯片供电的电源芯片,如MAX660能将3.3V转为-3.3V,以及为数字信号处理器供电的电源芯片如TMSF320系列DSP处理器专用电源供电芯片TPS70151提供1.8V和3.3V电压。本发明的信号采集电路共模抑制比高于100dB,放大倍数为1000倍,带宽为0.07HZ~20HZ。

鼠标控制的实现过程:

如图2所示,蓝牙鼠标初始状态为S4停止202;当鼠标处于停止状态202,识别到眼部动作为向上时,鼠标进入状态S0一直向上移动201,此时当识别出的眼部动作为向上、向下、向左、向右时鼠标保持向上移动201,只有当识别出的眼部动作为两次眨眼时鼠标进入停止状态202。当蓝牙鼠标处于停止状态202,识别到眼部动作为向下时,鼠标进入状态S1一直向下移动203,此时当识别出的眼部动作为向上、向下、向左、向右时鼠标保持向下移动203,只有当识别出的眼部动作为两次眨眼时鼠标进入停止状态202。当鼠标处于停止状态202,识别到眼部动作为向左时,鼠标进入状态S2一直向左移动204,此时当识别出的眼部动作为向上、向下、向左、向右时鼠标保持向左移动204,只有当识别出的眼部动作为两次眨眼时鼠标进入停止状态202;当鼠标处于停止状态202,识别到眼部动作为向右时,鼠标进入状态S3一直向右移动206,此时当识别出的眼部动作为向上、向下、向左、向右时鼠标保持向右移动206,只有当识别出的眼部动作为两次眨眼时鼠标进入停止状态202;当鼠标处于停止状态202,识别到眼部动作为两次眨眼时,鼠标进入状态S5确定205,即鼠标点击屏幕进行确定选择,此时当识别出的眼部动作为向上时,鼠标进入一直向上状态201,当识别出的眼部动作为向下时,鼠标进入一直向下状态203,当识别出的眼部动作为向左时,鼠标进入一直向左状态204,当识别出的眼部动作为向右时,鼠标进入一直向右状态203,当识别出的眼部动作为两次眨眼时,鼠标状态还为确定205。

本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

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