资源简介

python人脸识别、人体识别、耳朵眼睛识别源码,需要先安装python3.5、opencv以及自带的分类器

资源截图

代码片段和文件信息

import cv2
import sys
from PIL import Image

def CatchUsbVideo(window_name camera_idx):
    cv2.namedWindow(window_name)
    
    #视频来源,可以来自一段已存好的视频,也可以直接来自USB摄像头
    cap = cv2.VideoCapture(camera_idx)                
    
    #告诉OpenCV使用人脸识别分类器
    #classfier = cv2.CascadeClassifier(‘C:\\Users\\wfd519\\Downloads\\opencv\\sources\\samples\\winrt_universal\\VideoCaptureXAML\\video_capture_xaml\\video_capture_xaml.Windows\\Assets\\haarcascade_frontalface_alt.xml‘)
    #C:\Users\wfd519\Downloads\OpenCV-detection-models-master\haarcascades
    classfier = cv2.CascadeClassifier(‘C:\\Users\\wfd519\\Downloads\\OpenCV-detection-models-master\\haarcascades\\haarcascade_frontalface_default.xml‘)
#识别出人脸后要画的边框的颜色,RGB格式
    color = (0 255 0)
    #眼睛分类器
    cl2 = cv2.CascadeClassifier(‘C:\\Users\\wfd519\\Downloads\\OpenCV-detection-models-master\\haarcascades\\haarcascade_eye.xml‘)
    #耳朵分类器haarcascade_mcs_leftear.xml
    cl3 = cv2.CascadeClassifier(‘C:\\Users\\wfd519\\Downloads\\OpenCV-detection-models-master\\haarcascades\\haarcascade_mcs_leftear.xml‘)
    #上半身
    cl4 = cv2.CascadeClassifier(‘C:\\Users\\wfd519\\Downloads\\OpenCV-detection-models-master\\haarcascades\\haarcascade_upperbody.xml‘)
    while cap.isOpened():
        ok frame = cap.read() #读取一帧数据
        if not ok:            
            break  

        #将当前帧转换成灰度图像
        grey = cv2.cvtColor(frame cv2.COLOR_BGR2GRAY)                 
        
        #人脸检测,1.2和2分别为图片缩放比例和需要检测的有效点数
        faceRects = classfier.detectMultiScale(grey scaleFactor = 1.2 minNeighbors = 3 minSize = (32 32))
        if len(faceRects) > 0:            #大于0则检测到人脸                                   
            for faceRect in f

评论

共有 条评论