基于opencv-pyhon的人脸识别程序
2023-01-26 23:01:23来源:哔哩哔哩

声明:本文章使用ChatGPT生成,并人工纠正错误并排版

1.安装opencv和opencv-python-headless库。

2.导入所需的库:

import CV2 import numpy as np


(资料图片仅供参考)

3.加载人脸识别分类器:

face_cascade = CV2.CascadeClassifier('path/to/haarcascade_frontalface_default.xml')

4.使用OpenCV的VideoCapture类来获取视频流。

cap = CV2.VideoCapture(0)

5.在循环中捕获每一帧,并在每一帧上检测人脸:

while True:

ret, frame = cap.read()

gray = CV2.cvtColor(frame, CV2.COLOR_BGR2GRAY)

faces = face_cascade.detectMultiScale(gray, 1.3, 5)

for (x,y,w,h) in faces:

CV2.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)

CV2.imshow('frame',frame)

if CV2.waitKey(1) & 0xFF == ord('q'):

break

最后,释放视频流并关闭所有窗口:

cap.release() CV2.destroyAllWindows()

完整代码:

import CV2

import numpy as np

face_cascade = CV2.CascadeClassifier('path/to/haarcascade_frontalface_default.xml')

cap = CV2.VideoCapture(0)

while True:

ret, frame = cap.read()

gray = CV2.cvtColor(frame, CV2.COLOR_BGR2GRAY)

faces = face_cascade.detectMultiScale(gray, 1.3, 5)

for (x,y,w,h) in faces:

CV2.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)

CV2.imshow('frame',frame)

if CV2.waitKey(1) & 0xFF == ord('q'):

break

cap.release()

CV2.destroyAllWindows()

运行上面的代码将会启动一个窗口,

在窗口中显示视频流并在检测到的人脸上绘制矩形。按“q”键可以退出程序。

需要注意的是,上面的代码使用的是默认的人脸识别分类器,在实际应用中可能需要使用其他分类器或训练自己的分类器来提高识别率。

此外,可以在程序中添加其他功能,如人脸跟踪、人脸识别等。

标签: FRAME IMPORT GRAY opencv Numpy 人脸识别 BREAK

最后一页
青海:高原湿地喜迎“空中来客”|天天速讯

精彩推荐

资讯News

  • 聚焦Policy