欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python學(xué)習(xí)筆記之視頻人臉檢測識別實例教程

 更新時間:2019年03月06日 09:38:10   作者:小柒  
這篇文章主要給大家介紹了關(guān)于Python學(xué)習(xí)筆記之視頻人臉檢測識別的相關(guān)資料,文中通過示例代碼以及圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

前言

上一篇博文與大家分享了簡單的圖片人臉識別技術(shù),其實在實際應(yīng)用中,很多是通過視頻流的方式進(jìn)行識別,比如人臉識別通道門禁考勤系統(tǒng)、人臉動態(tài)跟蹤識別系統(tǒng)等等。

下面話不多說了,來一起看看詳細(xì)的介紹吧

案例

這里我們還是使用 opencv 中自帶了 haar人臉特征分類器,通過讀取一段視頻來識別其中的人臉。

代碼實現(xiàn):

# -*- coding: utf-8 -*-
__author__ = "小柒"
__blog__ = "https://blog.52itstyle.vip/"
import cv2
import os


# 保存好的視頻檢測人臉并截圖
def CatchPICFromVideo(window_name, camera_idx, catch_pic_num, path_name):
 cv2.namedWindow(window_name)

 # 視頻來源
 cap = cv2.VideoCapture(camera_idx)

 # 告訴OpenCV使用人臉識別分類器
 classfier = cv2.CascadeClassifier(os.getcwd()+"\\haarcascade\\haarcascade_frontalface_alt.xml")

 # 識別出人臉后要畫的邊框的顏色,RGB格式, color是一個不可增刪的數(shù)組
 color = (0, 255, 0)

 num = 0
 while cap.isOpened():
 ok, frame = cap.read() # 讀取一幀數(shù)據(jù)
 if not ok:
  break

 grey = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # 將當(dāng)前楨圖像轉(zhuǎn)換成灰度圖像

 # 人臉檢測,1.2和2分別為圖片縮放比例和需要檢測的有效點數(shù)
 faceRects = classfier.detectMultiScale(grey, scaleFactor=1.2, minNeighbors=3, minSize=(32, 32))
 if len(faceRects) > 0: # 大于0則檢測到人臉
  for faceRect in faceRects: # 單獨框出每一張人臉
  x, y, w, h = faceRect

  # 將當(dāng)前幀保存為圖片
  img_name = "%s/%d.jpg" % (path_name, num)
  # print(img_name)
  image = frame[y - 10: y + h + 10, x - 10: x + w + 10]
  cv2.imwrite(img_name, image, [int(cv2.IMWRITE_PNG_COMPRESSION), 9])

  num += 1
  if num > (catch_pic_num): # 如果超過指定最大保存數(shù)量退出循環(huán)
   break

  # 畫出矩形框
  cv2.rectangle(frame, (x - 10, y - 10), (x + w + 10, y + h + 10), color, 2)

  # 顯示當(dāng)前捕捉到了多少人臉圖片了,這樣站在那里被拍攝時心里有個數(shù),不用兩眼一抹黑傻等著
  font = cv2.FONT_HERSHEY_SIMPLEX
  cv2.putText(frame, 'num:%d/100' % (num), (x + 30, y + 30), font, 1, (255, 0, 255), 4)

  # 超過指定最大保存數(shù)量結(jié)束程序
 if num > (catch_pic_num): break

 # 顯示圖像
 cv2.imshow(window_name, frame)
 c = cv2.waitKey(10)
 if c & 0xFF == ord('q'):
  break

  # 釋放攝像頭并銷毀所有窗口
 cap.release()
 cv2.destroyAllWindows()


if __name__ == '__main__':
 # 連續(xù)截100張圖像
 CatchPICFromVideo("get face", os.getcwd()+"\\video\\kelake.mp4", 100, "E:\\VideoCapture")

動圖有點花,講究著看吧:

如果是捕捉攝像頭,只需要改變以下代碼即可:

# 如果獲取攝像頭,參數(shù)修改為 0 即可
cap = cv2.VideoCapture(0)

源碼

https://gitee.com/52itstyle/Python/tree/master/Day09本地下載

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • Python編程使用*解包和itertools.product()求笛卡爾積的方法

    Python編程使用*解包和itertools.product()求笛卡爾積的方法

    這篇文章主要介紹了Python編程使用*解包和itertools.product()求笛卡爾積的方法,涉及Python列表轉(zhuǎn)換及itertools.product()求笛卡爾積相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12
  • jupyter 使用Pillow包顯示圖像時inline顯示方式

    jupyter 使用Pillow包顯示圖像時inline顯示方式

    這篇文章主要介紹了jupyter 使用Pillow包顯示圖像時inline顯示方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 通過代碼實例了解Python異常本質(zhì)

    通過代碼實例了解Python異常本質(zhì)

    這篇文章主要介紹了通過代碼實例了解Python1異常本質(zhì),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • Python設(shè)計模式之狀態(tài)模式原理與用法詳解

    Python設(shè)計模式之狀態(tài)模式原理與用法詳解

    這篇文章主要介紹了Python設(shè)計模式之狀態(tài)模式原理與用法,簡單描述了狀態(tài)模式的概念、原理并結(jié)合實例形式分析了Python實現(xiàn)與使用狀態(tài)模式的相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • Python繪制正二十面體圖形示例

    Python繪制正二十面體圖形示例

    正二十面體由20個小的正三角形面組成,每個頂點周圍有?5?個頂點,下面這篇文章主要給大家介紹了關(guān)于Python繪制正二十面體圖形的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • 解決python2.7 查詢mysql時出現(xiàn)中文亂碼

    解決python2.7 查詢mysql時出現(xiàn)中文亂碼

    這篇文章主要介紹了python操作mysql中文顯示亂碼的解決方法,是Python數(shù)據(jù)庫程序設(shè)計中經(jīng)常會遇到的問題,非常具有實用價值,需要的朋友可以參考下
    2016-10-10
  • Pytorch實現(xiàn)的手寫數(shù)字mnist識別功能完整示例

    Pytorch實現(xiàn)的手寫數(shù)字mnist識別功能完整示例

    這篇文章主要介紹了Pytorch實現(xiàn)的手寫數(shù)字mnist識別功能,結(jié)合完整實例形式分析了Pytorch模塊手寫字識別具體步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2019-12-12
  • Python列表list的詳細(xì)用法介紹

    Python列表list的詳細(xì)用法介紹

    這篇文章主要介紹了Python列表list的詳細(xì)用法介紹,列表(list)作為Python中基本的數(shù)據(jù)結(jié)構(gòu),是存儲數(shù)據(jù)的容器,相當(dāng)于其它語言中所說的數(shù)組
    2022-07-07
  • python神經(jīng)網(wǎng)絡(luò)MobileNetV3?large模型的復(fù)現(xiàn)詳解

    python神經(jīng)網(wǎng)絡(luò)MobileNetV3?large模型的復(fù)現(xiàn)詳解

    這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)MobileNetV3?large模型的復(fù)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Python 權(quán)限控制模塊 Casbin

    Python 權(quán)限控制模塊 Casbin

    這篇文章主要介紹了Python 權(quán)限控制模塊 Casbin,Casbin是一個強(qiáng)大的、高效的開源訪問控制框架,其權(quán)限管理機(jī)制支持多種訪問控制模型,更多相關(guān)內(nèi)容感興趣的朋友可以參考下面文章內(nèi)容
    2022-06-06

最新評論