申明:本系列专栏相关说明与镜像包、源码等:

塔图:Page00-本系列实验记录说明​zhuanlan.zhihu.com

一、人脸检测(后续有时间再补录个操作视频吧)

人脸识别的先决在于先进行人脸检测。

先按本文档的前置章节在Python3.7环境下的安装”完成了环境的搭建工作;

本文主要讲述如何使用 USB-PiCam 实现实时人脸识别:

最常见的人脸检测方式是使用“Haar 级联分类器”。使用基于 Haar 特征的级联分类器的目标检测是 Paul Viola 和 Michael Jones 2001 年在论文《Rapid Object Detection using a Boosted Cascade of Simple Features》中提出的一种高效目标检测方法。这种机器学习方法基于大量正面、负面图像训练级联函数,然后用于检测其他图像中的对象。这里,我们将用它进行人脸识别。最初,该算法需要大量正类图像(人脸图像)和负类图像(不带人脸的图像)来训练分类器。然后我们需要从中提取特征。好消息是 OpenCV 具备训练器和检测器。如果你想要训练自己的对象分类器,如汽车、飞机等,你可以使用 OpenCV 创建一个。

如果不想创建自己的分类器,OpenCV 也包含很多预训练分类器,可用于人脸、眼睛、笑容等的检测。相关的 XML 文件可从该目录下载:haarcascades(在opencv的安装包里data目录下就有,当然下载地址为:https://github.com/opencv/opencv/tree/master/data/haarcascades)

即要检测一张图片需要扫描大于120万个窗口

运行以下代码:

import numpy as np
import cv2faceCascade = cv2.CascadeClassifier('Cascades/haarcascade_frontalface_default.xml')
cap = cv2.VideoCapture(0)
cap.set(3,640) # set Width
cap.set(4,480) # set Heightwhile True:ret, img = cap.read()img = cv2.flip(img, -1)gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)faces = faceCascade.detectMultiScale(gray, scaleFactor=1.2,minNeighbors=5, minSize=(20, 20))for (x,y,w,h) in faces:cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)roi_gray = gray[y:y+h, x:x+w]roi_color = img[y:y+h, x:x+w]cv2.imshow('video',img)k = cv2.waitKey(30) & 0xffif k == 27: # press 'ESC' to quitbreak
cap.release()
cv2.destroyAllWindows() 

可以进行人脸检测了:

使用 Python 和 OpenCV 执行人脸检测,上面的几行代码就足够了。但务必要注意下面的代码:

faceCascade = cv2.CascadeClassifier(‘Cascades/haarcascade_frontalface_default.xml’) #找对目录

我们也可以加入诸如“眼睛检测”甚至“微笑检测”这样的检测器。在那些用例中,需要把分类器函数和矩形框内加入原有的面部识别区域中,因为在区域外进行识别没有意义。

注意,在树莓派上,分类方法(HaarCascades)会消耗大量算力,所以在同一代码中使用多个分类器将会显著减慢处理速度。在台式机上运行这些算法则非常容易。

手机打开抖音进行人脸的检测,疫情戴口罩,效果不太明显哈

在 GitHub(https://github.com/Mjrovai/OpenCV-Face-Recognition/tree/master/FaceDetection)上你可以看到其他的例子:

faceEyeDetection.py
faceSmileDetection.py
faceSmileEyeDetection.py

(运行速度太慢,非常的卡顿)

二、人脸识别(后续有时间再补录个操作视频吧)

参考文档:http://www.52pi.net/archives/1435 (从第5步开始,完全正确,亲测可用)

这里我训练时,用了赵丽颖与杨紫,总地来说,开源库的分辨能力,尚可吧。

如果是真人出镜,效果会明显好得很多。

opencv 训练人脸对比_Page21-树莓派4B人脸检测与识别(opencv)相关推荐

  1. python人脸对比相似度_python人脸对比

    import sys import ssl from urllib import request,parse # client_id 为官网获取的AK, client_secret 为官网获取的SK ...

  2. opencv训练自己的模型,实现特定物体的识别

    1.说明 opencv安装包中有训练好的分类器文件,可以实现人脸的识别.当然,我们也可以训练自己的分类器文件,实现对特定物体的识别.本文章就详细介绍下如何训练自己的分类器文件. 2.效果 我训练的是检 ...

  3. 机器视觉 OpenCV—python 基于LSTM网络的OCR文本检测与识别

    文章目录 一.背景与环境搭建 二.文本检测与识别 一.背景与环境搭建 OpenCV的文本识别流程: OpenCV EAST 文本检测器执行文本检测, 我们提取出每个文本 ROI 并将其输入 Tesse ...

  4. C#人脸对比服务(基于虹软人脸识别SDKV4.1封装)

    软件截图   项目截图 部分代码 using System; using System.Collections.Generic; using System.Linq; using System.Tex ...

  5. 【毕业设计】深度学习卫星遥感图像检测与识别 -opencv python 目标检测

    文章目录 0 前言 1 课题背景 2 实现效果 3 Yolov5算法 4 数据处理和训练 5 最后 0 前言

  6. python毕业设计 深度学习卫星遥感图像检测与识别 opencv 目标检测

    文章目录 0 前言 1 课题背景 2 实现效果 3 Yolov5算法 4 数据处理和训练 0 前言

  7. 毕设-python 卷积神经网络 机器视觉 目标检测 车牌识别 - opencv 深度学习 机器学习

    文章目录 前言 一 课题背景 二 效果演示 2.1 图片检测识别 2.2视频检测识别 三 车牌检测与识别 四 HyperLPR库 4.1 简介 4.2 特点 4.3 HyperLPR的检测流程 4.4 ...

  8. python人脸识别和人脸对比,face_recognition和OpenCV

    前言 先用OpenCV判断图片是否模糊,模糊的话需要重拍: 再用face_recognition检测图片中是否有人脸,有才接着进行下一步: 再用face_recognition计算图片中每张人脸的12 ...

  9. [计算机视觉]人脸应用:人脸检测、人脸对比、五官检测、眨眼检测、活体检测、疲劳检测

    人脸应用在计算机视觉体系中占很大一块,在深度学习火起来之前,基于传统机器学习的人脸应用就已经很成熟了,有很多商用应用场景.本文用一个可以实际运行的Demo来说明人脸应用中常见的技术概念,包含'人脸检测 ...

  10. 【java】调用百度开发平台ai接口,完成人脸识别(人脸搜索、人脸对比、人脸检测等)功能--------超详细,适合小白

    基本流程理解: 我们要使用百度提供的接口去实现某些功能,大致流程如下: 1.注册百度开放平台帐号: 浏览器打开http://ai.baidu.com/,进入百度ai的页面,点击右上角的控制台按钮进行登 ...

最新文章

  1. 你是怎样给下属分配工作
  2. Git 配置命令设置
  3. C语言语句知识结构大学霸IT达人
  4. Javascript实现整站黑白效果(兼容IE/FF等浏览器)
  5. 【集合论】有序对 ( 有序对 | 有序三元组 | 有序 n 元祖 )
  6. Swing中事件的三种处理方法
  7. 服务端支持的session
  8. SAP云平台对Kubernetes的支持
  9. php mysqli不识别,不识别数据库PHP MYSQLi中的密码
  10. servlet中url-pattern之/与/*的区别
  11. 镜像浏览器_yiming Win10PE 系统维护光盘镜像
  12. python类方法为装饰器_类方法的python装饰器
  13. optistruct入门推荐
  14. 通信原理及系统系列38——图解过采样和欠采样
  15. 应用EtherNet IP转Modbus网关连接施耐德PLC和AB PLC
  16. Tomcat热部署(linux服务器)
  17. 生物信息学|通过整合药物表型、治疗、化学结构和基因组特征,使用机器学习预测药物-药物相互作用
  18. 使用poi把Java对象转换成excel
  19. 一篇挺有意思的文章(转自CSDN)
  20. 图案设计灵感怎么写_优秀Logo的设计灵感,从何而来?

热门文章

  1. K-meas聚类算法极简介绍
  2. c++ vector使用方法收集
  3. php环境搭建及入门
  4. centos7下kubernetes(1。kubernetes---start)
  5. .NET CORE——Console中使用依赖注入
  6. python基础语法学习常见小问题
  7. vs2005配置OpenCv2.3.1
  8. malloc_free_new_delete
  9. Linux 启动过程剖析
  10. 股市像脱缰的“野牛”,谁是最好的“牛崽”?