转载请注明作者和出处:https://blog.csdn.net/qq_28810395
Python版本: Python3.x
运行平台: Windows 10
IDE: Pycharm profession 2019

一、任务需求:

  1. 看懂程序,理解眼电数据处理;
  2. 把程序完善,现在eog.py是一个校准的文件
  3. 在此基础上,写一个检测是否有眨眼的程序

二、数据集解析:

  根据程序观察对数据集数据进行了解,使用EDFbrowser软件对5个数据集进行数据观看并分析

  *EOG是采集的眼电信号 event是时钟打标(同步信号)
此图为病人的眼电信号数据图,眨眼动作眼电信号会进行一个赋值跳变,打标点基本把每个眨眼动作分离。

三、程序理解:

  进入程序进行程序理解,代码算法实现逻辑为,首先将眼电数据进行读入,利用打标点判断进行分离,每次选取125个数据点。然后进入数据处理部分,将波峰位置、波峰值、波谷值和持续时间返回并绘制曲线。最后将所得数据进行处理(均值、标准差)建立模型。

四、EOG眼电数据(峰值、峰值位置、持续时间)检测函数

  1. 对传入的125个数据点进行低通滤波
  2. 在20-98之间进行峰值位置、峰值和持续时间检测计算
  3. 根据持续时间进行选择,持续时间过大,说明不是眨眼动作,峰值位置无效(赋值124 和1)
  4. 最后将相关数据赋值返回

五、眨眼检测与绘图函数

  眨眼检测采用了K-近邻算法(五特征值),训练数据集采用了这5套数据集进行汇总,是否眨眼根据人眼识别进行标记。训练数据集如下:

六、50个样本数据:

*第一特征值:波峰位值、  第二特征值:波峰值、 第三特征值:波谷位值
*第四特征值:波谷值、 第五特征值:持续时间
*标签:眨眼(1)未眨眼(0)
  1. 由于数据集是文本,所以添加文本处理函数:

      根据其三特征值的K-近邻中占比相差不大,所以未采用归一化算法进行数据处理。
  2. 眨眼检测——K-近邻算法实现
    kNN算法是著名的模式识别统计学方法,是最好的文本分类算法之一,在机器学习分类算法中占有相当大的地位,是最简单的机器学习算法之一。算法实现为:
    K-近邻算法对未知类别属性的数据集中每个数据点处理流程如下
    ① 计算已知类别数据集中的每个数据点与当前数据点之间的距离;
    采用欧氏距离公式(两特征值):

    ② 按照距离递增次序排序;
    ③ 选取与当前数据点距离最小的K个数据点;
    ④ 确定前K个数据点所在类别的出线频率;
    ⑤ 发挥前K个数据点最高的类别当作当前点的预测分类;

    K-近邻进行分类完成后进行绘图显示:

    绘图结果显示:(3.13)





EOG眼电信号(眨眼检测)相关推荐

  1. MATLAB实现PCA去除眼电信号

    MATLAB实现PCA去除眼电信号 一.去除伪迹的讨论 查阅文献[1]可知,所获取的低频脑电信号中,主要受心电(ECG)和眼电(EOG)的干扰较大. 但一般实验会忽略掉心电伪迹(为了简化,俺也是),若 ...

  2. 基于眼电信号的眼部动作的分析与识别

  3. 黑科技之机器人外骨骼

    图片源于网络 [文章导语] 内容主题取自<黑科技>,书由硅谷15位技术咖编写.本文主要概述已有落地产品的人体增强领域,旨在抛开繁杂云雾,让读者真切的了解当前科技的真正技术实力. 本文涵盖机 ...

  4. 压力眼这一Part,久等啦!

    随着小K的系列科普文章推出,想必大家对100G / 400G相关测试要求已经非常熟悉,无论是TDECQ, FEC还是接收端误码测试,可参考阅读: <传说中的TDECQ,到底是个( ° △ °|| ...

  5. 上海交大SEED-IV数据集眼动信号介绍

    上海交大SEED-IV数据集介绍 眼电信号数据集介绍 共15名受试者,每名受试在不同时间段实验三次,每次实验记录下的眼动信号包括blink.envent.fixation.PD.pupil.sccad ...

  6. 【自动驾驶】基于面部Fatigue检测的技术报告

    [自动驾驶]基于面部Fatigue检测的技术报告 文章目录 [自动驾驶]基于面部Fatigue检测的技术报告 关于疲劳驾驶检测研究主要有哪几个方向 基于面部的疲劳检测研究的发展现状 共搜集43篇论文 ...

  7. BCI competition IV 2b简介

    BCI competition IV Data Set 2b BCI competition IV 公共数据集 Data sets 2b,是基于视觉诱发的左右手运动想象的脑电数据集.该数据集采集了9名 ...

  8. BCI比赛数据集简介-BCI competition IV 2b

    目录 BCI competition IV Data Set 2b 数据集介绍 数据采集 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群:941473018 BCI compe ...

  9. letswave7中文教程2:脑电数据预处理-通道位置分配

    目录 第1步:通道位置分配 第2步:删除不良通道 第3步:滤波处理 第4步:坏电极插值 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群:941473018 原始的脑电图信号是有 ...

  10. 计算机信息科学蔺泽浩,上海交通大学计算机科学与工程系(CSE)

    脑机交互的多模态疲劳驾驶检测系统 本系统通过获取驾驶员的脑电信号(EEG).眼电信号(EOG).握力信号和Kinect图像,从生理信号和行为特征中提取与疲劳相关的特征,利用机器学习方法建立疲劳检测模型 ...

最新文章

  1. DeepMind新语言模型SUNDAE:教自动编码器学会「自我纠正」,WMT14英德互译任务获SOTA...
  2. 启动和停止Oracle服务bat脚本
  3. python的可变参数 *args 和关键字参数**kw
  4. 全国一等奖,F题:智能送药小车。
  5. oracle 11g重新安装配置,Oracle 11g数据库安装和卸载教程
  6. 4.Linux的目录结构
  7. 二叉树的建立与三种遍历
  8. C#LeetCode刷题-蓄水池抽样
  9. Spark 和 MR 的区别: 多进程与多线程模型
  10. win7的一些小知识
  11. Java常量、变量(标识符规则)、数据类型(转换和运算符)、数据优先级
  12. Vulkan入门(9)-渲染和显示.md
  13. BFS和DFS搜索汇总(未完待续)
  14. FFmpeg学习(2)——视频文件大小压缩
  15. 完整的次世代3D游戏建模制作流程,学习教程分享
  16. greatest least 函数
  17. Android 插件仓库
  18. 计算机音乐数字乐谱未闻花名,未闻花名简谱(歌词)-演唱-小叶歌曲谱
  19. 入门之:如何在腾讯云服务器上部署自己的静态前端项目(服务器系统:centos7)
  20. vs启动错误:Exception Processing Message 0xc0000005 Parameters...

热门文章

  1. 【火炉炼AI】机器学习042-NLP文本的主题建模
  2. 如何配置Ubuntu 16.04 GRUB 2引导加载程序
  3. 通信业正面临一场巨变,要么滚蛋要么改变
  4. Qt中的对话框(模态,非模态,关于,问题,文件)
  5. AngularJs学习的前景及优势
  6. Python如何输出格式清晰的dict
  7. HTML DOM教程 23-HTML DOM Frame 对象
  8. 【Vegas原创】红烧肉的做法
  9. [Swift]LeetCode188. 买卖股票的最佳时机 IV | Best Time to Buy and Sell Stock IV
  10. ArrayList的去重问题