OpenCV之视频处理(2)

本文介绍了使用OpenCV进行人脸识别和表情检测的过程。通过加载预训练的分类器,如haarcascade_frontalface_default.xml,haarcascade_eye.xml和haarcascade_smile.xml,对摄像头实时捕获的图像进行灰度处理,然后检测人脸、眼睛和微笑。同时,展示了如何处理视频文件,应用Canny边缘检测,并在用户按下'q'键时结束程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

©Fu Xianjun. All Rights Reserved.

#人脸识别API

import cv2
import numpy as np
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml')
smile_cascade = cv2.CascadeClassifier(cv2.data.haarcascades+'haarcascade_smile.xml')
cap = cv2.VideoCapture(0)
width=1280
height=960

#人脸识别设置
cap.set(cv2.CAP_PROP_FRAME_WIDTH,width)#设置图像宽度
cap.set(cv2.CAP_PROP_FRAME_HEIGHT,height)#设置图像高度
fgbg = cv2.createBackgroundSubtractorMOG2(
    history=500, varThreshold=100, detectShadows=False)#基于自适应混合高斯背景建模的背景减除法,去除干扰
cnt=1
while(1):
     ret, frame = cap.read()
        gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
        faces = face_cascade.detectMultiScale(gray, 1.3, 5,0) #把灰度图片传给haar进行灰度处理,返回值是人脸左上角坐标,宽度和高度
        for(x, y, w, h) in faces:
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值