基于dlib人脸检测(图像视频)demo(代码片段)

月疯 月疯     2022-12-02     696

关键词:

1、Dlib是一个深度学习开源工具,基于C++开发,也支持Python开发接口
2、由于Dlib对于人脸特征提取支持很好,很多训练好的人脸特征提取模型提供开发者使用,所以Dlib人脸识别开发很适合做人脸项目开发

官网地址:http://dlib.net
源码库:https://github.com/davisking/dlib 

图像人脸检测:

#人脸检测
#导入库
import cv2
import dlib
import matplotlib.pyplot as plt
import numpy as np
#2、显示图片
def show_image(image,title):
    img_RGB=image[:,:,::-1] #BGR转换RGB就是把通道逆序一下
    plt.title(title)
    plt.imshow(img_RGB)
    plt.axis("off")

#3、绘制人脸矩形框
def plt_rectangle(image,faces):
    for face in faces:
        cv2.rectangle(image,(face.left(),face.top()),(face.right(),face.bottom()),(255,0,0),3)
    return image

def main():
    #4、读取一张图片
    img = cv2.imread("../images/liuyifei.jpg")
    #5、灰度转化
    gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
    #6、调用dlib库中的检测器
    detector = dlib.get_frontal_face_detector()
    faces = detector(gray, 1)  # 1代表图片放大一倍
    #7、给检测出的人脸绘制矩形框
    img_result = plt_rectangle(img.copy(), faces)
    #8、创建画布
    plt.figure(figsize=(9,6))
    plt.suptitle("face detection",fontsize=14,fontweight="bold")
    #9、显示最终检测器效果
    show_image(img_result,"face-detection")
    plt.show()

if __name__ == "__main__":
    main()

 效果:

视频人脸检测:

#人脸检测
#导入库
import cv2
import dlib

#2、绘制人脸矩形框
def plt_rectangle(image,faces):
    for face in faces:
        cv2.rectangle(image,(face.left(),face.top()),(face.right(),face.bottom()),(255,0,0),3)
    return image

def main():
    #4、打开摄像头读取视频
    capture = cv2.VideoCapture(0)
    #5、判断摄像头是否正常工作
    if capture.isOpened() is False:
        print("Camera Error!")
    # 6、摄像头是否正常,循环读取每一帧
    while True:
        ret,frame = capture.read()
        if ret:
            gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
            # 7、调用dlib库的检测器
            detector = dlib.get_frontal_face_detector()
            faces = detector(gray, 1)  # 1代表图片放大一倍
            # 8、绘制检测结果
            img_result = plt_rectangle(frame, faces)
            # 9、实时显示结果
            cv2.imshow("face detection",img_result)
            # 10、按键"esc",退出,关闭摄像头
            if cv2.waitKey(1) == 27:
                break
            # 11、释放所有资源
            capture.release()
            cv2.destroyAllWindows()

if __name__ == "__main__":
    main()

 

基于dlib进行人脸识别demo(代码片段)

环境准备:win10,python3.9,cv2,numpy,dlib项目所要达到的目的:实现人脸识别(输入几张图片,人脸检测、关键点检测、人脸关键点进行编码存储起来,再传进来一张图片,判断新传来来这... 查看详情

基于dlib进行人脸识别demo(代码片段)

环境准备:win10,python3.9,cv2,numpy,dlib项目所要达到的目的:实现人脸识别(输入几张图片,人脸检测、关键点检测、人脸关键点进行编码存储起来,再传进来一张图片,判断新传来来这... 查看详情

基于dlib实现人脸跟踪和物体跟踪(demo)(代码片段)

dlib的安装,直接上代码查看:主要是视频的跟踪,但是存在很多问题,这个库不行还是跟yolo差很远,学习一下#人脸跟踪#1、导入库importcv2importdlib#2、主函数defmain():#3、打开摄像头#capture=cv2.VideoCapture(0)#读取... 查看详情

基于dlib实现人脸跟踪和物体跟踪(demo)(代码片段)

dlib的安装,直接上代码查看:主要是视频的跟踪,但是存在很多问题,这个库不行还是跟yolo差很远,学习一下#人脸跟踪#1、导入库importcv2importdlib#2、主函数defmain():#3、打开摄像头#capture=cv2.VideoCapture(0)#读取... 查看详情

视频人脸检测——dlib版(代码片段)

往期目录视频人脸检测——Dlib版(六)OpenCV添加中文(五)图片人脸检测——Dlib版(四)视频人脸检测——OpenCV版(三)图片人脸检测——OpenCV版(二)OpenCV环境搭建(一)更多更新,欢迎访问我的github:https://github.com/vipstone/... 查看详情

基于dlib库关键点检测(图片和视频)demo(代码片段)

环境win10,python3.9,dlib-19.22.9安装dlib库存在很多问题,尤其是在win10上,记录了存在的问题,供参考: dlibyou俩个版本,一个是使用到GPU和cuda的版本一个是没有使用的版本要想在python环境下安装dlib库,... 查看详情

基于dlib库关键点检测(图片和视频)demo(代码片段)

环境win10,python3.9,dlib-19.22.9安装dlib库存在很多问题,尤其是在win10上,记录了存在的问题,供参考: dlibyou俩个版本,一个是使用到GPU和cuda的版本一个是没有使用的版本要想在python环境下安装dlib库,... 查看详情

dlib库包的介绍与使用,opencv+dlib检测人脸框opencv+dlib进行人脸68关键点检测,opencv+dlib实现人脸识别,dlib进行人脸特征聚类dlib视频目标跟踪(代码片段)

文章目录:1dlib库介绍2dlib人脸检测:绘制出人脸检测框2.1dlib人脸检测源码2.2opencv+dlib人脸检测2.3dlib人脸检测总结3dlib人脸关键点检测:并绘制检测框、关键点、不同区域关键点连线3.1dlib人脸关键点检测源码3.2opencv... 查看详情

山东大学项目实训四——face_recognition使用opencv和dlib实现基于视频的人脸识别(代码片段)

Face_Recognition使用Opencv和Dlib实现基于视频的人脸识别文件夹介绍1、Resources\\pictures此文件夹下存放人脸保存结果2、Resources\\video此文件夹下存放带标注视频保存结果3、Resources\\faceS此文件夹下存放各个人物的图片,用于人脸库... 查看详情

人脸检测实战高级:使用opencvpython和dlib完成眨眼检测(代码片段)

...#xff09;。眼睛纵横比是一个更优雅的解决方案,它涉及基于眼睛面部标志之间距离比的非常简单的计算。这种眨眼检测方法要求快速、高效且易于实现。今天我们通过四部分来实现眨眼检测:第一部分,我们将讨论眼... 查看详情

opencv图像融合(给人脸添加一个眼镜)(代码片段)

基于dlib68点人脸检测的小功能实现图像旋转找的现成的方法,稍稍麻烦点的地方就是mask处理,虽然目的达到了,但是效果一般1importnumpyasnp2importcv2ascv3importdlib4importmath56#做一个戴眼镜的滤镜效果78detector=dlib.get_frontal_face_detector()9pr... 查看详情

Dlib 人脸检测不适用于灰度图像

】Dlib人脸检测不适用于灰度图像【英文标题】:Dlibfacedetectiondoesn\'tworkwithgrayscaleimages【发布时间】:2019-02-2020:06:31【问题描述】:你知道为什么dlib人脸检测不适用于灰度图像(python对灰度图像效果很好)吗?我的代码:mFaceDetec... 查看详情

人脸检测——dlib学习face_detector_example(代码片段)

...翻译a. 这个例子展示了如何在一个图像中找到正面的人脸。具体来说,它显示了如何从命令行获取图像列表,并在屏幕上显示每个带有红框的人脸。 b. Face_detector采用了HOG特征,结合了线性分类器、图像金字塔和滑动... 查看详情

opencv+dlib实现疲劳检测(代码片段)

...分关键点(2)EAR(2)设置参数(3)对视频的每一帧进行判断本文基于OpenCV并利用dlib工具包,通过实时计算EAR值来统计眨眼次数实现了疲劳检测。步骤:首先对对检测到的人脸进行关键点定位并锁定眼睛部分的关键点,然后,对视频的... 查看详情

opencv联合dlib视频人脸识别例子(代码片段)

本篇文章是在上一篇文章opencv联合dlib人脸识别例子的基础上做了一个实时视频人脸识别功能。原理是利用opencv实时提取视频中的视频流,然后进入人脸检测步骤,步骤类似上篇文章。本篇文章中的程序是在VMware虚拟机下... 查看详情

基于dlib的人脸检测(68关键点)(代码片段)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目目录文章目录前言一、背景(1)环境搭建(2)下载开源数据集二、具体实现效果展示:效果展示:总结前言imutils... 查看详情

基于opencv的视频处理-人脸检测(代码片段)

...on、OpenCV对人脸进行检测,防止痴呆后忘了Quiet。目录基于OpenCV的视频处理-人脸检测拍摄影片检测人脸保存面孔和摘要视频输出运行中的管道作者有言基于OpenCV的视频处理-人脸检测目前可依靠模块化方式实现图像处理管道... 查看详情

opencv联合dlib人脸检测例子二(加快检测)(代码片段)

本篇博客是在opencv联合dlib人脸检测例子的基础上改进了下,加快检测流程观察了下,opencv利用haar级联分类器检测人脸区域的速度要稍快于dlib的frontal_face_detector检测人脸区域的速度。所以这篇博客是利用opencv先检测出人... 查看详情