本次项目是采用keras深度学习框架,训练人脸识别模型,采用opencv实时检测与识别周围的人脸,本文主要讲解如何采集训练集,本次代码在人脸识别的代码上添加了将识别的照片依次写入指定文件夹,并命名(000-499).jpg和显示识别的第N张照片的文本显示。

代码如下:

# -*- coding:utf-8 -*-
import cv2def CatchPicture(window_name, catch_pic_num, path_name):cv2.namedWindow(window_name)cap = cv2.VideoCapture(0)cascade_path = "haarcascade_frontalface_default.xml"num = 0while True:ok, frame = cap.read()if not ok:breakframe_gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)cascade = cv2.CascadeClassifier(cascade_path)#识别出人脸数量facerect = cascade.detectMultiScale(frame_gray, scaleFactor=1.2, minNeighbors=3, minSize=(12, 12))if len(facerect) > 0:print('face detected')color = (255, 255, 255)  # 白for rect in facerect:x, y, w, h = rectimg_name = '%s/%d.jpg' % (path_name, num)image = frame[y - 10: y + h + 10, x - 10: x + w + 10]cv2.imwrite(img_name, image)  # 照片写入到文件num += 1if num > (catch_pic_num):  # 如果超过指定最大保存数量退出循环break# 画出矩形框cv2.rectangle(frame, (x - 10, y - 10), (x + w + 10, y + h + 10), color, 2)# 显示当前捕捉到了多少人脸图片了font = cv2.FONT_HERSHEY_SIMPLEXcv2.putText(frame, 'num:%d' % (num), (x + 30, y + 30), font, 1, (0, 255, 0), 2)# 超过指定最大保存数量结束程序if num > (catch_pic_num): break# 显示图像cv2.imshow(window_name, frame)c = cv2.waitKey(15)if c & 0xFF == ord('q'):breakcap.release()cv2.destroyAllWindows()if __name__ == '__main__':CatchPicture("截取人脸",500,'./data/boss')

运行完后,500张照片存到同路径的“/data/boss”文件夹,然后再采集一组存到“data/other”,同样采集500张作为训练数据,以提高模型的识别精度接下来的训练程序将以文件夹作为标签数据区分个人。

python实现人脸检测及识别(1)---- 采集人脸数据相关推荐

  1. 人脸检测与识别:AlexNet人脸检测

    最终目标:为课题组做一个人脸打卡系统. 项目1阶段已更新完毕,如有错误请不吝赐教~ 注:作为一个负责任的博主,虽然过了好几个月了,但必须要说明一下,文中代码有bug,cv2.resize时,参数输入是 ...

  2. python识别人脸多种属性_人脸检测及识别python实现系列(4)——卷积神经网络(CNN)入门...

    人脸检测及识别python实现系列(4)--卷积神经网络(CNN)入门 上篇博文我们准备好了2000张训练数据,接下来的几节我们将详细讲述如何利用这些数据训练我们的识别模型.前面说过,原博文给出的训练 ...

  3. 基于opencv的人脸检测与识别(python)(1)

    基于opencv的人脸检测与识别(python语言)(1) 人脸检测和识别技术就目前而言,已经相对成熟,各类算法层出不穷,这都归功于各位奋斗在一线的大佬的努力(站在巨人的肩膀上的感觉就是爽).本文是参 ...

  4. mtcnn人脸检测python_基于mtcnn和facenet的实时人脸检测与识别系统开发

    简介:本文主要介绍了实时人脸检测与识别系统的详细方法.该系统基于python/opencv2/tensorflow环境,实现了从摄像头读取视频,检测人脸,识别人脸的功能.本系统代码地址:real ti ...

  5. 人脸检测与识别的趋势和分析

    人脸遇到的一些问题: Ø 图像质量:人脸识别系统的主要要求是期望高质量的人脸图像,而质量好的图像则在期望条件下被采集.图像质量对于提取图像特征很重要,因此,即使是最好的识别算法也会受图像质量下降的影响 ...

  6. 【OpenCV】人脸检测和识别

    文章目录 前言 一.人脸检测 1.基于Haar的人脸检测 2.基于深度学习的人脸检测 二.人脸识别 1.特征脸EigenFaces 2.人鱼脸FisherFaces 3.局部二进制编码直方图LBPH ...

  7. 人脸检测和识别的开源库总结

    背景 人脸相关的任务有以下几种: 人脸检测(将图片中包含的人脸进行初步定位,以及关键点如眼睛.鼻子.嘴巴等更精细的定位,文章封面即为典型人脸检测结果): 人脸跟踪(视频中跟踪人脸位置变化): 人脸验证 ...

  8. 目标人脸检测与识别(计算机视觉)

    一.实验目的 通过python 语言编程设计人脸检测算法,以此人脸作为训练样本,训练目标人脸模型,进一步实现目标人脸的识别.通过上述编程促进学生理解并掌握人脸检测及识别的相关原理,同时培养学生的编程能 ...

  9. 人脸检测算法代码python_Python有多强大!20行代码实现人脸检测与识别

    题记:大二的时候发现人生苦短,所以信了拍神,开始学Python.学了大半年之后成功转行做前端了.来写个教程帮助大家入门Python. Python优点 Python是一种简单易学.功能强大的编程语言, ...

最新文章

  1. poj 3045 Cow Acrobats (贪心!!不是二分,)
  2. 决策树原理详解及python代码实现
  3. 多语言版本网站建设数据库设计和考虑的因素
  4. async js 返回值_获取JavaScript异步函数的返回值
  5. 7月第5周回顾:闪联晋级国际标准 云安全时代来临
  6. 本地上传文件到FastDFS命令上传报错:ERROR - file: connection_pool.c, line: 142, connect to server 192.168.0.197:221
  7. Objective-C基础笔记(7)Foundation中的常用结构体
  8. LINUX SHELL使用while循环数组
  9. python中stacked_栈式自动编码器(Stacked AutoEncoder)
  10. 极客大学架构师训练营 JVM虚拟机原理 JVM垃圾回收原理 Java编程优化 第17课 听课总结
  11. unity--newtonsoft.json解析
  12. HART协议命令与UART串口解析
  13. 一文详述 Python 中的 property 语法
  14. 【CSS3 transition】解决元素高度不固定时,设置transition不生效的问题
  15. 写全武汉的火锅店..更新版 恩..欢迎补充 ^_^
  16. Python——连接数据库操作
  17. 美信监控易:石油销售公司全省IT一体化运维解决方案
  18. SSD LBA 计算器
  19. 在火星上,我们能种哪些菜?
  20. 5kb 的 Vue:尤雨溪发布新作 petite-vue

热门文章

  1. 什么样的 python 可以可谓专业 PyPI 项目?刚刚学到三个概念:pep8、Sphinx、pytest与GitHub Action的集成
  2. Android 7.1 App Shortcuts使用
  3. java提示单个cass怎么办,求助解决hibernate报错,java.lang.casscastexception
  4. OPTIRRA研究: TNF拮抗剂维持期优化减量方案[EULAR2015_SAT0150]
  5. android 自定义绘画,【整理】Android 自定义视图之画图
  6. OpenCV学习(14) 细化算法(2)
  7. 【前端 · 面试 】HTTP 总结(六)—— HTTP 版本区别
  8. 初识二进制2:指令系统
  9. Myeclipse 8.5 注册码
  10. 存数据返回他的序列号id_使用excel进行数据分析