• dlib人脸识别


    dlib人脸识别

    1、dlib安装

    ​ 代码的编写在jupyter notebook中来完成

    ​ jupyter notebook是一个工具

    ​ pip install jupyter ------------>安装使用

    ​ 如何启动:

    ​ 命令行输入:jupyter notebook

    ​ 前提,环境变量配置成功

    ​ dlib安装-------------> pip install dlib

    ​ dlib有不同的版本,最新版本(19.17.0),经过测试,dll包不完备,所以上次我在使用时,出了一点问题,随着时间的推移,修复

    ​ 建议大家安装之前的版本(19.8.1)

    ​ pip install dlib==19.8.1

    2、dlib人脸识别

    ​ cv2和dlib异同

    ​ 都可以识别人脸

    ​ cv2级联方式识别人脸,启用算法时,人脸特征数据:haar

    ​ dlib底层使用的是深度神经网络

    ​ 所以dlib识别准确率,要比opencv(cv2)高

    ​ pip install opencv-python

    ​ 我们就可以在代码中,导包了

    ​ dlib调用相应方法,识别人脸

    ​ face_detector = dlib.get_frontal_face_detector()

    ​ 调用:

    ​ 人脸坐标数据

    ​ faces = face_detector(image,1)

    ​ 绘制:

        for face in faces:
            left = face.left()
            top = face.top()
            right = face.right()
            bottom = face.bottom()
     
            cv2.rectangle(jin,pt1 = (left,top),pt2 = (right,bottom),color = [0,0,255],thickness = 2)
    

    3、dlib多张人脸的识别

    ​ jupyter执行代码 Ctrl + Enter

    ​ 多张人脸和单张人脸识别的代码完全一样的

    4、dlib可以识别视频中的人脸

    ​ 视频操作,首先读取视频

    ​ cv2工具---------> opencv------->计算机视觉

    ​ 演示,视频每一张图片,进行显示

    ​ cv2.waitKey(10) -------->毫秒,快进感觉

    ​ 视频中人脸可以检测,但是播放速度变慢,为什么???

    ​ 因为人脸识别,算法应用,大量计算,计算时,花时间的

    5、dlib可以标记人脸的关键点(轮廓点)

    ​ 1、识别人脸

    ​ 2、轮廓识别人脸关键点

    ​ 人脸68个关键点:嘴巴,鼻子,眼睛,眉毛,轮廓

    ​ shape = dlib.shape_predictor('./shape_predictor_68_face_landmarks.dat')

    ​ facemarks = shape(jin,face)

    ​ for mark in facemarks.parts():

    ​ x = mark.x

    ​ y = mark.y

    ​ cv2.circle(jin,center = (x,y),radius = 2,color = [0,255,0],thickness = 2)

  • 相关阅读:
    [BZOJ2738]矩阵乘法 整体二分+树状数组
    [Tjoi2016&Heoi2016] 序列 CDQ分治
    BZOJ 2716 天使玩偶 CDQ分治
    BZOJ3295 动态逆序对 CDQ/分块+树状数组
    hdu 6851 Vacation(思维+贪心)
    hdu 6579 Operation (在线线性基)
    hdu 6852Path6(最短路+最小割)
    网络最大流之初见
    Codeforces Round #587 C. White Sheet(思维+计算几何)
    VK Cup 2017
  • 原文地址:https://www.cnblogs.com/python001-vip/p/12606417.html
Copyright © 2020-2023  润新知