美文网首页
1.1(numpy+cv)实现人脸的识别

1.1(numpy+cv)实现人脸的识别

作者: 羽天驿 | 来源:发表于2020-04-12 19:54 被阅读0次

    一 、人脸识别需要文件

    haarcascade_frontalface_default.xml
    相关下载链接://download.csdn.net/download/u011262200/10651807?utm_source=bbsseo

    二、cv库的简单介绍

    在计算机视觉项目的开发中,OpenCV作为较大众的开源库,拥有了丰富的常用图像处理函数库,采用C/C++语言编写,可以运行在Linux/Windows/Mac等操作系统上,能够快速的实现一些图像处理和识别的任务。此外,OpenCV还提供了Java、python、cuda等的使用接口、机器学习的基础算法调用,从而使得图像处理和图像分析变得更加易于上手,让开发人员更多的精力花在算法的设计上。
    总之,opencv应用非常广泛,可以做深入的了解

    三、代码的实现简单的人脸的识别

    以下图片来自百度--张芷溪

    import numpy as np
    import cv2
    face_detect=cv2.CascadeClassifier("./haarcascade_frontalface_alt.xml")
    # 检查使用的东西
    img=cv2.imread("./zzx.jpg")
    c=cv2.cvtColor(img,code=cv2.COLOR_BGR2GRAY)
    face_zones=face_detect.detectMultiScale(img)
    # 传入需要检查的东西,生成检测的对象
    # 通过遍历拿到这几点的像素的位置
    for x,y,w,h in face_zones:
        cv2.rectangle(img,pt1=(x,y),pt2=(x+w,y+h),color=[0,0,255],thickness=2)
    # print(face_zones)
    cv2.imshow("face",img)
    # 显示图片
    cv2.waitKey(0)
    # 键盘上有输入的东西就关闭窗口
    cv2.destroyAllWindows()
    

    图片:


    zzx.jpg

    识别后:


    zzx.png
    • 以上的代码就实现了简单的人脸的识别,你可以更加深入的取研究CV2。
    • 当然也可以识别多张人脸,我们就不做代码演示,写法类似
    • 当有多张人脸时,有人脸未识别的时候,就需要调整算法参数得缩放比例
    • face_zones=face_detect.detectMultiScale(img,scaleFactor=调整数值)

    相关文章

      网友评论

          本文标题:1.1(numpy+cv)实现人脸的识别

          本文链接:https://www.haomeiwen.com/subject/vmibmhtx.html