添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

咱们使用opencv官方提供的分类器,包括面部识别,侧脸识别,眼睛识别等,如果想训练自己的分类器可以看我另外一篇文章。

我下载好的三个分类器,老铁们自取

链接:https://pan.baidu.com/s/1TqunSL6ne0dXW5TyO7DGWw
提取码:9420​​​​​​​

三、代码讲解

准备好以上工作,开始进行操作过程

import cv2                                      
camera = cv2.VideoCapture(0)                    
face_casecade = cv2.CascadeClassifier(r'C:\Users\Gaomagic\PycharmProjects\kouzhaodetect\mask\xml\cascade.xml')

导入cv2包。

cv2.VideoCapture(0)打开摄像头,0表示笔记本内置摄像头

cv2.CascadeClassifier()加载分类器,括号里面写入刚才下载的分类器的路径,注意:要英文路径,且前面加上r,否则\表示转义符号。

while (True):             
    ret, frame = camera.read()      

进入一个while循环,camera.read()读取一帧图像,frame为读取到的图片,ret为bool变量要么true,要么flase,当读取到图像则为true

    if ret:
        gray_img = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) 
        face = face_casecade.detectMultiScale(gray_img, 1.3, 2)

ret为true时进入if判断,cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)表示把读取到的一帧图片frame转换为灰度图。face=face_casecade.detectMultiScale()第一个参数是转换完的灰度图。第二个参数是每次缩小图像的比例,默认1:1。第三个参数是匹配成功所需要的周围矩形框的数目,每一个特征匹配到的区域都是一个矩形框,只有多个矩形框同时存在时,才认为是匹配成功,比如人脸,这个默认值是3。

        for (x, y, w, h) in face:       
            cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 0, 255), 2)
            print("(x:",(x+w)/2,",y:",(y+h)/2,")")
            cv2.imshow("camera",frame);

进入for循环,cv2.rectangle()在图上绘制矩形,第一个参数为读取到的图片,第二个参数为左上点的坐标,第二个参数是右下点的坐标,第三个参数是RGB值,第四个参数是矩形边框厚度。

cv2.imshow("camera",frame)将画面展示出来。

       if cv2.waitKey(1) & 0xff == ord('q'):                
               break

如果键盘输入q则退出死循环,ord()是吧q转换为ASCALL码

camera.release()                             
cv2.destroyAllWindows()

关闭窗口和摄像头

四、运行结果

import cv2                            
camera = cv2.VideoCapture(0)               
face_casecade = cv2.CascadeClassifier(r'C:\Users\Gaomagic\PycharmProjects\kouzhaodetect\mask\xml\cascade.xml')
while (True):       
    ret, frame = camera.read()           
    if ret:
        gray_img = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)   
        face = face_casecade.detectMultiScale(gray_img, 1.3, 2) 
        for (x, y, w, h) in face:
            cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 0, 255), 2)
            print("(x:",(x+w)/2,",y:",(y+h)/2,")")
            cv2.imshow("camera",frame);  
        if cv2.waitKey(1) & 0xff == ord('q'): 
            break
camera.release()                             
cv2.destroyAllWindows()

新人博主,若有错误之处请指出。

文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结一、安装opencv-python这里推荐使用pycharm直接安装opencv-python打开文件——设置——python解释器——点击+号搜索opencv-python,点击安装包,等待片刻即可安装好检查是否安装好,新建一个项目输入以下代码,若无报错则安装好import cv2二、准备分类器咱们使用opencv官方提供的分类器,包括面部识别,侧...
本程序基于 OpenCV - Python 版本的人脸模型训练与识别,基于 OpenCV 图形识别库, Python 实现的人脸模型训练,根据输入的人脸图片进行学习和训练,创建识别模型,不仅完成了单张图片的识别与展示,同时也实现了本地 摄像头 采集的实时 人脸识别 的简单验证。 有很多初学 Python 的小伙伴们都觉得 Python 比较难学,看书吧,看了就忘了,网上的一些 教程 又是写的含糊不清,故而学习起来很吃力...... 博客中有对应的讲解和演示,避免走弯路,费时费力。也真心希望能够帮助正在苦学 Python 程序设计的小伙伴们,你们的成长是我最大的幸福。
这是我自己设计的 一个 人脸识别 系统的课题,基于 Python 语言研发了 人脸识别 管理系统,并在 Pycharm 平台完成主要功能模块的分析与设计,在 摄像头 采集到完整人脸信息的同时,对人员的身份进行认证和管理。本文所设计的 人脸识别 系统一方面可以实现人员的安全认证功能,还能够给重要场所的人员管理提供安全保障,测试结果表明:该系统能够准确识别人脸信息,并显示当前人员的录入时名字,而没有录入的人脸显示unknown,为有效解决人员管理问题提供了参考。使得人员安全管理系统具备了更高的实用价值,有着巨大市场潜力和应用前景。以下是重要内容阐述: 1、 人脸识别 部分主要是依靠人脸特征提取来实现; 2、 摄像头 捕获人脸后,会进行图像预处理,包括噪声处理、光照预处理和几何预处理; 3、采用卷积神经网络为 人脸识别 算法; 4、基于 Python Pycharm 平台来实现系统设计; 5、通过CNN训练发现,能够对人脸进行准确识别,识别率高达97%;
# This is a sample Python script. # Press Shift+F10 to execute it or replace it with your code. # Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings. import numpy as np import cv2 as cv
Pycharm 接上 Anaconda 环境的解释器 ( 我这里是使用了 Anaconda 环境下 自建的 tensorflow 虚拟环境 ) 注:记得在 Anaconda Prompt (Anaconda3) 里 提前安装好 opencv opencv -contrib 模块使用电脑 摄像头 进行样本采集 我这里分别采集2个人的样本 (各1000张)注:第 一个 人: 第二个人: 简述步骤:Notes: 说明一下: 这个代码 功能为 按下q 键 退出 摄像头 检测 最后附上效果图片:............
你可以使用 OpenCV Python 来进行交通标志识别。首先,你需要安装 OpenCV 和numpy库。然后,可以使用CascadeClassifier来检测图像中的交通标志。你需要使用训练好的分类器来检测交通标志。你可以使用以下代码: import cv2 import numpy as np #加载分类器 cascade_classifier = cv2.CascadeClassifier("classifier.xml") #加载图像 img = cv2.imread("traffic_sign.jpg", cv2.IMREAD_COLOR) #转化为灰度图像 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) #运行分类器 signs = cascade_classifier.detectMultiScale(gray, scaleFactor=1.3, minNeighbors=5) #标出交通标志 for (x, y, w, h) in signs: cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2) #显示图像 cv2.imshow("traffic sign detection", img) cv2.waitKey(0) cv2.destroyAllWindows() 请注意,在代码中,CascadeClassifier函数是用于加载分类器的,detectMultiScale函数用于检测交通标志。你需要使用正确的分类器文件路径和图像文件路径。
Anaconda+tensorflow环境下,在pycharm中安装matplotlib教程(解决TypeError: LoadLibrary() argument 1 must be str, n) CSDN-Ada助手: 恭喜您写出了这篇非常实用的教程!nao机器人pycharm环境搭建一直是一个比较棘手的问题,您的详细讲解对于初学者来说非常友好。希望您可以继续分享您的经验和知识,让更多的人受益。下一步的创作建议可以考虑分享一些关于nao机器人的编程技巧和应用案例,这样能够让读者更好地理解和掌握相关知识。期待您的下一篇作品! CSDN 会根据你创作的博客的质量,给予优秀的博主博客红包奖励。请关注 https://bbs.csdn.net/forums/csdnnews?typeId=116148&utm_source=csdn_ai_ada_blog_reply7 看奖励名单。 (详细教程)opencv+python+pycharm 训练属于自己的分类器(以口罩识别为例) Gaomagic: 完整代码都在博客里面了呀 表情包