前三篇博客学习了

  1. windows10+Python3.7安装dlib库进行面部标志识别
  2. python dlib实现面部标志识别
  3. 使用python,dlib,OpenCV提取眼睛,鼻子,嘴唇及下颌

这篇博客将进行进阶版的学习——眨眼检测。眨眼检测在现实中有非常重要的应用,可以用于睡意检测。 比如:每年有9万人因为疲劳驾驶死亡,睡意检测可以起到很好的提醒作用,挽救人的生命。让N多个家庭失去亲人,免于破碎。

传统的眨眼检测是:

  1. 首先眼睛定位;
  2. 阈值化找到白色的眼睛区域;
  3. 确定眼睛的“白色”区域是否消失了一段时间(表示眨眼)。

本文使用的眨眼检测是:

构建一个称为眼睛纵横比(EAR “eye aspect ratio”)的指标,EAR的原理是眼睛的纵横比,在睁着眼时是一个基本恒定的值,而在眨眼的瞬间,EAR会瞬间达到0,然后在回到恒定值。

这种眨眼检测方法快速,高效且易于实现。

1. EAR为什么可以成为判断眨眼的标准

如下图,通过应用人脸检测,面部标志检测可以得出眼睛的关键点:如下图所示6个点构成;


使用EAR进行判断的原理:睁开眼睛时眼睛的纵横比大约是恒定的,但眨眼时会迅速降至零。

2. 眨眼检测及原则

(1)面部检测
(2)面部标志检测
(3)根据索引找到左眼、右眼的位置,计算纵横比ear,求平均值
(4)判断是否眨眼:(有超过3帧的连续帧——ear低于阈值,则认为是进行了一次眨眼);

3. 优化

可采用第N维,第N-6,第N+6维均计算EAR指标,求平均值。

参考:

  • https://www.pyimagesearch.com/2017/04/24/eye-blink-detection-opencv-python-dlib/

使用OpenCV,Python和dlib进行眨眼检测及计数相关推荐

  1. 使用opencv python进行手检测和手指计数

    By seeing above image now you are very excited for implement it (like me). So not wasting too much t ...

  2. python使用opencv_教你快速使用OpenCV/Python/dlib進行眨眼檢測識別!

    摘要: 影象識別的新思路:眼睛縱橫比,看看大牛如果用這種思路玩轉識別眨眼動作! 今天我們來使用面部標誌和OpenCV 檢測和計算視訊流中的眨眼次數.為了構建我們的眨眼檢測器,我們將計算一個稱為眼睛縱橫 ...

  3. python人脸识别毕业设计-Python基于Dlib的人脸识别系统的实现

    之前已经介绍过人脸识别的基础概念,以及基于opencv的实现方式,今天,我们使用dlib来提取128维的人脸嵌入,并使用k临近值方法来实现人脸识别. 人脸识别系统的实现流程与之前是一样的,只是这里我们 ...

  4. python pip安装第三方库老是报错_#python pip 安装dlib一直失败?#python安装dlib错误...

    #python pip 安装dlib一直失败?#python安装dlib错误 python dlib 教程2020-10-11 07:52:36人已围观 ubuntu里面怎么安装dlib 下面是在ub ...

  5. 美颜(磨皮,大眼)opencv python实现

    本文是利用opencv python 的美颜(磨皮,大眼)实现. 1 磨皮 1.1 导向滤波 磨皮使用的是导向滤波进行磨皮.关于导向滤波的介绍,可以看我的另一篇文章导向滤波与opencv python ...

  6. opencv python安装 centos_centos下安装opencv

    根据项目需要,安装opencv并提供给开发使用,并且使用opencv提供python3的API接口.虽然不知道是个啥,还是简单了解下. opencv是什么? OpenCV的全称是Open Source ...

  7. 基于Python,dlib实现人脸关键点检测

    @代码实现及安装过程 基于Python,dlib实现人脸关键点检测 dilb 在做人脸检测人脸识别方面用到比较多的.face_recognition就是基于dlib实现的. 这篇文章将使用Python ...

  8. OpenCV+python:Canny边缘检测算法

    1,边缘处理 图像边缘信息主要集中在高频段,通常说图像锐化或检测边缘,实质就是高频滤波.我们知道微分运算是求信号的变化率,具有加强高频分量的作用. 在空域运算中来说,对图像的锐化就是计算微分.由于数字 ...

  9. OpenCV Python在计算机视觉中的应用

    OpenCV Python教程 在这篇文章中,我们将使用Python中的OpenCv来涵盖计算机视觉的各个方面.OpenCV长期以来一直是软件开发的重要组成部分. 什么是计算机视觉? 我们考虑一个场景 ...

最新文章

  1. Py之pyglet:Python之pyglet库的简介、安装、使用详细攻略
  2. poj - 2356 Find a multiple
  3. springboot启动报错:Unregistering JMX-exposed beans on shutdown
  4. 分布式认证需求-统一认证授权
  5. VC++调用UpdateLayeredWindow实现半透明窗体【转】
  6. WP7开发小技巧之快捷键
  7. 面试官系统精讲Java源码及大厂真题 - 01 开篇词:为什么学习本专栏
  8. java 面试题分析
  9. if函数python_关于函数:如何在python中为一个if语句提供多个条件
  10. 机器学习算法总结之Boosting:Boosting Tree、GBDT
  11. 苹果发生大规模宕机,网友调侃“突然白苹果了一会。”
  12. 【HDU 1024】【线性DP】Max Sum Plus Plus
  13. Java电子书下载地址
  14. videoJs常用方法、事件、VUE中使用的注意事项
  15. 网狐6603全部架设过程棋牌源码下载搭建教程
  16. 【工控老马】力控7.0与S7-200SMART的驱动连接
  17. 线性代数笔记19——格拉姆-施密特正交化
  18. debian linux 桌面,Debian/Ubuntu使用tasksel安装桌面环境
  19. windows10 热点一直显示正在断开中
  20. Hadoop+hive+flask+echarts大数据可视化项目之hive环境搭建与系统数据的分析思路

热门文章

  1. 自动驾驶系统关系与自动泊车原理
  2. 2021年大数据Spark(三十六):SparkStreaming实战案例一 WordCount
  3. CentOS7安装Composer
  4. OpenResty搭建高性能服务端
  5. Ubuntu 系统打不开图片提示Fatal error reading PNG image File: Not a PNG file
  6. Android TextView 数字后面追加2个0 或者保留小数点后面2位
  7. Java 成员变量与局部变量
  8. Unable to inject views for BcFragment{8d4c0 #1 id=0x7f0d00a1}
  9. 微信小程序 在使用wx.request时显示加载中
  10. 机器学习入门(01)— 感知机概念、实现、局限性以及多层感知机