随着本专栏的学习,你可以快速的掌握如何使用Opencv,请注意更多的学习内容还请看官方文档,本专栏是为了给对于视觉方向比较感兴趣的新手所写,带领它们做好一个基础的框架,让他们快速学会如何通过这个框架调取函数做自己感兴趣的项目,同时我也正在更新我的Opencv项目实战专栏,你可以搭配着一起学习。

订阅此专栏, (2条消息) Opencv项目实战_夏天是冰红茶的博客-CSDN博客


人脸识别

我们先来看看它的效果:

成功检测到人脸,如果你看过我前面的项目,你会非常容易地将它修改成实时地检测人脸。这里我们用到了"haarcascade_frontalface_default.xml",这是一个入门的教程,暂时不用了解它是怎么来的,它就是一个默认的人脸检测器。

import cv2faceCascade= cv2.CascadeClassifier("Resources/haarcascade_frontalface_default.xml")
#需将文件放在同一个文件夹里
img = cv2.imread('Resources/lena.png')
imgGray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)faces = faceCascade.detectMultiScale(imgGray,1.1,4)
#比例因子1.1
for (x,y,w,h) in faces:cv2.rectangle(img,(x,y),(x+w,y+h),(255,125,255),2)cv2.imshow("Result", img)
cv2.waitKey(0)

CascadeClassifier,是Opencv中做人脸检测的时候的一个级联分类器,detectMultiScale用来检测到的对象将作为列表返回个矩形,再简单画框就完成了。

车牌检测

import cv2#############################################
frameWidth = 640
frameHeight = 480
nPlateCascade = cv2.CascadeClassifier("Resources/haarcascade_russian_plate_number.xml")
minArea = 200
color = (255,0,255)
###############################################
cap = cv2.VideoCapture(0)
cap.set(3, frameWidth)
cap.set(4, frameHeight)
cap.set(10,150)
count = 0while True:success, img = cap.read()imgGray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)numberPlates = nPlateCascade.detectMultiScale(imgGray, 1.1, 10)for (x, y, w, h) in numberPlates:area = w*hif area >minArea:cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 255), 2)cv2.putText(img,"Number Plate",(x,y-5),cv2.FONT_HERSHEY_COMPLEX_SMALL,1,color,2)imgRoi = img[y:y+h,x:x+w]cv2.imshow("ROI", imgRoi)cv2.imshow("Result", img)if cv2.waitKey(20) & 0xFF == ord('q'):breakif cv2.waitKey(1) & 0xFF == ord('s'):cv2.imwrite("Resources/Scanned/NoPlate_"+str(count)+".jpg",imgRoi)cv2.rectangle(img,(0,200),(640,300),(0,255,0),cv2.FILLED)cv2.putText(img,"Scan Saved",(150,265),cv2.FONT_HERSHEY_DUPLEX,2,(0,0,255),2)cv2.imshow("Result",img)cv2.waitKey(500)count += 1

车牌检测与上面的人脸识别相同。当然在后面添加了保存的功能。

本次的教程就到这里了,这个系列学完后,大家可以搭配我另外一个实战的专栏学习,遇到不会的可以去查找,在遇到问题时学会新的知识。

Chapter 09:人脸识别与车牌检测相关推荐

  1. CVPR 2020 | 腾讯优图17篇论文入选,含类比学习、人脸识别、物体检测、行人重识别等领域...

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 本文来源:腾讯优图 全球计算机视觉顶级会议CVPR2020  (IEEE Conf ...

  2. 小白都能学会的python+opencv,带你从人脸识别做到车牌识别,成为别人口中赞叹的高手!

    一.第一步,对于小白来说,用什么编辑很难选择,怎么下载免费的编辑器也不会,会用电脑下载的又总是被下载许多附带的垃圾软件,这个问题让我来解决,这里我们首先需要安装两个软件以及配置一个pip豆瓣源,第一个 ...

  3. flutter 刷脸_GitHub - nnnggel/baidu_face_plugin: 百度人脸识别和活体检测 Flutter 插件(目前版本仅支持 Android)...

    baidu_face_plugin 百度人脸识别和活体检测 Flutter 插件(目前版本仅支持 Android) 使用方式 注册百度开发者账号 前往 百度开发者账号 进行注册. 申请并配置licen ...

  4. 【深度学习】人脸识别和口罩检测的应用

    [深度学习]人脸识别和口罩检测的应用 文章目录 1 概述 2 人脸识别模型搭建与训练 3 口罩检测3.1 数据来源3.2 YoloV4简介3.3 数据集处理3.4 开始训练3.5 测试 1 概述 1. ...

  5. Python | 人脸识别系统 — 活体检测

    本博客为人脸识别系统的活体检测代码解释 人脸识别系统博客汇总:人脸识别系统-博客索引 项目GitHub地址:Su-Face-Recognition: A face recognition for us ...

  6. Python基于百度AI的人脸识别系统--颜值检测

    基于百度AI的人脸识别系统–颜值检测 刚开始学,觉得好玩就写了这个 主要是分为人脸识别系统的对接,UI的设计 人脸识别系统: 用的百度的AI,其中的AK,SK可以换成自己的,在百度开放平台上注册就能获 ...

  7. Python | 人脸识别系统(人脸识别、活体检测、背景模糊、关键点检测)

    本博客为人脸识别系统项目简介 项目GitHub完整源代码地址:Su-Face-Recognition: A face recognition for user logining 一.运行环境 本系统能 ...

  8. Android的虹软人脸识别和活体检测(附含10000个人脸图片和特征zip下载)

    文章目录 1.获取app_id和sdk_key和下载SDK的步骤 2.填写app_id和sdk_key 4.翻译 5.人脸识别错误码 6.人脸识别界面 7.重要的理解 8.自定义 9.查看手机文件里的 ...

  9. 深度学习开源数据集——自动驾驶、目标检测、人脸识别、文本检测、图像分类

    前言 在深度学习中,如果没有数据集,就无法训练模型,所以数据是根本,下面列出几个常用数据集. 想要更多数据集,可以去这个地址:https://www.cvmart.net/dataSets或https ...

最新文章

  1. 读阮一峰对《javascript语言精粹》的笔记,我有疑问。
  2. iOS---搜索功能
  3. 计算机网络-OSPF协议
  4. Angular--页面间切换及传值的四种方法
  5. 数据库实现列值合并为行
  6. 如何在多版本anaconda python环境下转换spyder?
  7. HBase shell命令行
  8. chrome浏览器隐藏地址栏_谷歌Chrome浏览器正在开发新功能:可直接复制粘贴隐藏密码...
  9. Partition分区的使用案例
  10. Android Studio NDK报错:mips64el-linux-android-strip 找不到
  11. opencv 摄像机标定
  12. 区块链开发入门学习线路图
  13. Java Base64 加密与解密
  14. 网络流量分析工具六大必备功能
  15. C++和java的异同点总结
  16. python3*1**3 表达式输出结果为_3*1**3 表达式输出结果为?_学小易找答案
  17. 简单易懂的Socket TCP网络通讯知识-消息协议和数据包
  18. HTML5与移动端web学习笔记
  19. 小企鹅输入法的安装(fcitx)
  20. OpenCV图像处理(十一)---图像梯度

热门文章

  1. Seata TCC、Saga、XA模式初识
  2. Sonar中如何删除一个项目
  3. Flask实现MTV分层
  4. tensorflow feature_columns
  5. TypeError: Cannot handle this data type: (1, 1, 28), |u1
  6. Ubuntu18.04设置动态ip详细步骤(可视化)
  7. Oracle DCD
  8. Array.from和Array.of的用法
  9. MIKE水动力笔记9_大潮小潮对应的涨急落急时刻流场图
  10. 十六进制颜色值和rgb颜色值转换