av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Python環境使用OpenCV檢測人臉實現教程

瀏覽:78日期:2022-07-07 18:29:02

一、文章概述

本文將要講述的是Python環境下如何用OpenCV檢測人臉,本文的主要內容分為:

1、檢測圖片中的人臉

2、實時檢測視頻中出現的人臉

3、用運設備的攝像頭實時檢測人臉

二:準備工作

提前做的準備:

安裝好Python3

下載安裝OpenCV庫,方法是

pip install opencv-python -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com/pypi/simple

下載特征數據HAAR和LBP,這兩種數據都能實現對人臉特征的提取,HAAR大多是小數計算所以運算速度較慢,LBP大多是整數計算運行速度較快。如圖所示,本次實例用紅框中的文本,其他的文本,比如第一個haarcascade_eye.xml是眼睛識別的文本,我們下次再用。

(1)代碼和說明

import cv2 as cvimport numpy as npdef face_detect_demo():#人臉檢測函數 gray = cv.cvtColor(src, cv.COLOR_BGR2GRAY)#把圖片變成灰度圖片,因為人臉的特征需要在灰度圖像中查找 #以下分別是HAAR和LBP特征數據,任意選擇一種即可,注意:路徑中的‘/’和‘’是有要求的 # 通過級聯檢測器 cv.CascadeClassifier,加載特征數據 # face_detector = cv.CascadeClassifier('D:/pyproject/cv_renlianjiance/haarcascades/haarcascade_frontalface_alt_tree.xml') face_detector = cv.CascadeClassifier( 'D:/pyproject/cv_renlianjiance/lbpcascades/lbpcascade_frontalcatface.xml') #在尺度空間對圖片進行人臉檢測,第一個參數是哪個圖片,第二個參數是向上或向下的尺度變化,是原來尺度的1.02倍,第三個參數是在相鄰的幾個人臉檢測矩形框內出現就認定成人臉,這里是在相鄰的5個人臉檢測框內出現,如果圖片比較模糊的話建議降低一點 faces = face_detector.detectMultiScale(gray, 1.02, 5) for x, y, w, h in faces:#繪制結果圖 #rectangle參數說明,要繪制的目標圖像,矩形的第一個頂點,矩形對角線上的另一個頂點,線條的顏色,線條的寬度 cv.rectangle(src, (x, y), (x+w, y+h), (0, 0, 255), 2) cv.imshow('result', src)#輸出結果圖src = cv.imread('D:/pyproject/cv_renlianjiance/cvrenxiangpic/1.jpg')#圖片是JPG和png都可以cv.namedWindow('input image', cv.WINDOW_AUTOSIZE)#創建繪圖窗口cv.namedWindow('result', cv.WINDOW_AUTOSIZE)cv.imshow('input image', src)face_detect_demo()cv.waitKey(0)cv.destroyAllWindows()#作用是能正常關閉繪圖窗口

(2)結果展示

Python環境使用OpenCV檢測人臉實現教程

2、視頻中的人臉檢測

(1)代碼和說明

import cv2 as cvimport numpy as npdef face_detect_demo(image): gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) # face_detector = cv.CascadeClassifier('D:/pyproject/cv_renlianjiance/haarcascades/haarcascade_frontalface_alt_tree.xml') face_detector = cv.CascadeClassifier('D:/pyproject/cv_renlianjiance/lbpcascades/lbpcascade_frontalcatface.xml') faces = face_detector.detectMultiScale(gray, 1.02, 5) for x, y, w, h in faces: cv.rectangle(image, (x, y), (x+w, y+h), (0, 0, 255), 2) cv.imshow('result', image)capture = cv.VideoCapture('D:/pyproject/cv_renlianjiance/video/1.mp4')cv.namedWindow('result', cv.WINDOW_AUTOSIZE)while (True): #按幀讀取視頻,ret,frame是獲cap.read()方法的兩個返回值。其中ret是布爾值,如果讀取幀是正確的則返回True,如果文件讀取到結尾,它的返回值就為False。frame就是每一幀的圖像,是個三維矩陣。 ret, frame = capture.read() # cv.flip函數表示圖像翻轉,沿y軸翻轉, 0: 沿x軸翻轉, <0: x、y軸同時翻轉 frame = cv.flip(frame, 1) face_detect_demo(frame) #waitKey()方法本身表示等待鍵盤輸入,參數是1,表示延時1ms切換到下一幀圖像,對于視頻而言; c = cv.waitKey(10) if c == 27:#當鍵盤按下‘ESC’退出程序 break#cv.waitKey(0)參數為0,如cv2.waitKey(0)只顯示當前幀圖像,相當于視頻暫停,;cv.waitKey(0)cv.destroyAllWindows()#作用是能正常關閉繪圖窗口

(2)結果展示

Python環境使用OpenCV檢測人臉實現教程

3、利用設備上的攝像頭進行人臉檢測,其實和2中的代碼一樣,只是打開攝像頭,而不是讀取視頻文件

代碼和說明

import cv2 as cvimport numpy as npdef face_detect_demo(image): gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) # face_detector = cv.CascadeClassifier('D:/pyproject/cv_renlianjiance/haarcascades/haarcascade_frontalface_alt_tree.xml') face_detector = cv.CascadeClassifier('D:/pyproject/cv_renlianjiance/lbpcascades/lbpcascade_frontalcatface.xml') faces = face_detector.detectMultiScale(gray, 1.02, 5) for x, y, w, h in faces: cv.rectangle(image, (x, y), (x+w, y+h), (0, 0, 255), 2) cv.imshow('result', image)capture = cv.VideoCapture(0)#其中的0表示電腦中的第一個相機cv.namedWindow('result', cv.WINDOW_AUTOSIZE)while (True): #按幀讀取視頻,ret,frame是獲cap.read()方法的兩個返回值。其中ret是布爾值,如果讀取幀是正確的則返回True,如果文件讀取到結尾,它的返回值就為False。frame就是每一幀的圖像,是個三維矩陣。 ret, frame = capture.read() # cv.flip函數表示圖像翻轉,沿y軸翻轉, 0: 沿x軸翻轉, <0: x、y軸同時翻轉 frame = cv.flip(frame, 1) face_detect_demo(frame) #waitKey()方法本身表示等待鍵盤輸入,參數是1,表示延時1ms切換到下一幀圖像,對于視頻而言; c = cv.waitKey(10) if c == 27:#當鍵盤按下‘ESC’退出程序 break#cv.waitKey(0)參數為0,如cv2.waitKey(0)只顯示當前幀圖像,相當于視頻暫停,;cv.waitKey(0)cv.destroyAllWindows()#作用是能正常關閉繪圖窗口

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 成人免费毛片嘿嘿连载视频 | 欧美天堂在线 | 玖玖精品视频 | www.成人| 黄色免费在线视频 | 日本精品网站 | 亚洲不卡在线观看 | 99re视频在线 | 日本中文字幕网站 | 九九精品网 | 手机在线看片1024 | 日韩一区二区三区视频 | 在线欧美| 亚洲美女毛片 | 欧美视频免费 | 伊人久久影院 | 欧美色综合网 | 免费av一区二区 | 免费的黄色小视频 | 国产精品网站在线观看 | 国产欧美久久久 | 成年人免费看片 | 韩日精品视频 | 欧美在线观看一区二区 | 一区二区中文 | www.桃色 | 91污视频在线观看 | 国产免费黄色片 | 一级片久久久 | 国产超碰在线观看 | 久久精品美女 | 在线观看黄色av | 成人自拍视频在线观看 | 91人人爽| 成人免费激情视频 | 久久成人精品 | 国产精彩视频 | 久久亚洲视频 | 免费性网站 | 国产午夜精品久久 | 国产综合区 |