用Dlib和OpenCV還能做什麼?這個開源項目實現了駕駛員疲勞檢測

Dlib 和 OpenCV 這兩個庫已經在深度學習和人臉識別領域逐漸有了自己的一席之地,基於它們的各種開源項目的越來越多,今天 Gitee 上這個開源項目也是基於 Dlib 和 OpenCV 的,具體是做什麼的?一起看看下文吧。

項目名稱:fatigue_detecting

項目作者:cungudafa

開源許可協議:MIT

 

項目地址:https://gitee.com/cungudafa/fatigue_detecting

 

軟件架構

經查閱相關文獻,疲勞在人體面部表情中表現出大致三個類型:打哈欠(嘴巴張大且相對較長時間保持這一狀態)、眨眼(或眼睛微閉,此時眨眼次數增多,且眨眼速度變慢)、點頭(瞌睡點頭)。本實驗從人臉朝向、位置、瞳孔朝向、眼睛開合度、眨眼頻率、瞳孔收縮率等數據入手,並通過這些數據,實時地計算出駕駛員的注意力集中程度,分析駕駛員是否疲勞駕駛和及時作出安全提示。

環境:Win10、Python3.7、anaconda3、JupyterNotebook 技術:

  • Opencv:圖像處理
  • Dlib:一個很經典的用於圖像處理的開源庫,shape_predictor_68_face_landmarks.dat是一個用於人臉68個關鍵點檢測的dat模型庫,使用這個模型庫可以很方便地進行人臉檢測,並進行簡單的應用。
  • Numpy:基於Python的n維數值計算擴展。
  • Imutils :一系列使得opencv 便利的功能,包括圖像旋轉、縮放、平移,骨架化、邊緣檢測、顯示
  • matplotlib 圖像(imutils.opencv2matplotlib(image)。
  • wx:python界面工具

 

標準參數說明

疲勞認定標準:

  • 眨眼:連續3幀內,眼睛長寬比爲 0.2
  • 打哈欠:連續3幀內,嘴部長寬比爲 0.5
  • 瞌睡點頭:連續3幀內,pitch(x)旋轉角爲 0.3

(真實運用中需要根據不同人的眼睛大小進行檢測,人的眼睛大小,俯仰頭習慣都不一樣,這只是一個參考值)

 

使用說明

初始化界面

本地視頻檢測

攝像頭視頻流檢測

 

如果你喜歡這個項目,記得點擊鏈接到項目主頁給它一個 Star哦:https://gitee.com/cungudafa/fatigue_detecting

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章