编写人脸检测程序

新建一个py文件,命名为facedetectionwithdlib.py。添加如下代码:

【代码 facedetectionwithdlib.py

python 复制代码
# -*- coding: utf-8 -*-
'''
使用dlib实现人脸检测
'''

import face_recognition
import cv2
import time

# 超参数
detection_method = 'hog' # 参数值为hog/cnn。表示人脸检测使用hog提取特征还是使用cnn提取特征。

# video_path = 'test.mp4'
video_path = ''

# 初始化摄像头
if video_path:
    cap = cv2.VideoCapture(video_path)
else:
    cap = cv2.VideoCapture(0)

cap.set(0,640) # 视频宽度
cap.set(1,480) # 视频高度
time.sleep(2)


while True:# 拍100张图片就结束
    ret, img = cap.read()
    # 人脸检测不依赖色彩,所以先把人脸图像转成灰度图像
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 
    
    face_locations = face_recognition.face_locations(
                     gray, number_of_times_to_upsample=1, 
                     model = detection_method)
    # 用矩形框框出人脸位置
    for (top, right, bottom, left) in face_locations:
        cv2.rectangle(img, (left, top), (right, bottom), 
                      (0, 0, 255), 2)
        cv2.rectangle(gray, (left, top), (right, bottom), 
                      (0, 0, 255), 2)
    
    cv2.imshow('original image', img)
    cv2.imshow('gray image', gray)
    
    # 按 'ESC' 键终止
    k = cv2.waitKey(100) & 0xff 
    if k == 27:
        break
 
cap.release()
cv2.destroyAllWindows()
相关推荐
minhuan9 小时前
大模型应用:从手动调参到智能寻优:PSO 驱动的大模型参数自动化优化.94
人工智能·机器学习·粒子群优化算法·pso算法·大模型应用
金枪不摆鳍9 小时前
hot100二分查找专题
数据结构·算法
belldeep9 小时前
python:如何将豆包AI中历史对话 备份到本地 backup目录下?
人工智能·python·ai·自动化·backup·豆包
YGGP9 小时前
【Golang】LeetCode 54. 螺旋矩阵
算法·leetcode·矩阵
njsgcs9 小时前
astrbot部署几个注意点
人工智能
hughnz9 小时前
基于实时数据的卡钻风险计算方法
人工智能·机器学习·数据分析
zhangshuang-peta9 小时前
模型上下文协议(MCP)与MCP网关:概念、架构及案例研究
人工智能·ai agent·mcp·peta
沃达德软件9 小时前
视频监控数据分析技术
人工智能·深度学习·目标检测·计算机视觉·数据挖掘·数据分析·视觉检测
代码改善世界9 小时前
【数据结构与算法】顺序表和链表题解
数据结构·链表
十八岁讨厌编程9 小时前
【算法训练营 · 二刷总结篇】贪心算法、图论部分
算法·贪心算法·图论