python openCV实现摄像头获取人脸图片


Posted in Python onAugust 20, 2020

本文实例为大家分享了python openCV实现摄像头获取人脸图片的具体代码,供大家参考,具体内容如下

在机器学习中,训练模型需要大量图片,通过openCV中的库可以快捷的调用摄像头,截取图片,可以快速的获取大量人脸图片

需要注意将CascadeClassifier方法中的地址改为自己包cv2包下面的文件

import cv2

def load_img(path,name,mun = 100,add_with = 0):
 # 获取人脸识别模型
 # 
 # 
 #以下路径需要更改为自己环境下xml文件
 #一般在环境下的Liba\site-packages\cv2\data\haarcascade_frontalface_alt2.xml
 classfier = cv2.CascadeClassifier('F:\\pyhton\\pytonApp\\Lib\\site-packages\\cv2\\data\\haarcascade_frontalface_alt2.xml')
 #
 #
 # 创建一个窗口
 cv2.namedWindow('face')
 # 打开第一个个摄像头
 cap = cv2.VideoCapture(0)

 i = 0 # 计数
 if cap.isOpened():
  while i < mun:
   ok,frame = cap.read() # 读取一帧图片
   if not ok:
    continue

   faces = classfier.detectMultiScale(frame,1.2,3,minSize=(32,32))

   if len(faces) > 0:
    for face in faces:
     x, y, w, h = face
     cv2.rectangle(frame,(x-add_with,y-add_with), (x+w+add_with,y+h+add_with), (0,255,0), 2)
     img = frame[y-add_with:y+h+add_with,x-add_with:x+w+add_with]
     save_path = path+name+'_'+str(i)+'.jpg'
     print(save_path)
     cv2.imwrite(save_path,img)
     i += 1

   cv2.imshow('face', frame)
   c = cv2.waitKey(10)
   if c & 0xFF == ord('q'):
    break

  cap.release()
  cv2.destroyAllWindows()

if __name__ == '__main__' :
 # 第一个参数为保存图片的路径
 # 第二个参数为保存图片名字的开头
 # 第三个参数为图片的数量
 # 第四个参数可以调节图片的大小
 load_img('E:\\Screenshots\\home\\','rongdang',1000,20)

效果如下:

python openCV实现摄像头获取人脸图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 序列的方法总结
Oct 18 Python
老生常谈python之鸭子类和多态
Jun 13 Python
python通过伪装头部数据抵抗反爬虫的实例
May 07 Python
Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】
Mar 11 Python
Python读取stdin方法实例
May 24 Python
Python操作SQLite数据库过程解析
Sep 02 Python
使用PyTorch训练一个图像分类器实例
Jan 08 Python
python实现从尾到头打印单链表操作示例
Feb 22 Python
在django admin详情表单显示中添加自定义控件的实现
Mar 11 Python
Django通过json格式收集主机信息
May 29 Python
如何用python处理excel表格
Jun 09 Python
sklearn和keras的数据切分与交叉验证的实例详解
Jun 19 Python
Python实现自动签到脚本功能
Aug 20 #Python
python如何随机生成高强度密码
Aug 19 #Python
python实现图片转换成素描和漫画格式
Aug 19 #Python
python+django+selenium搭建简易自动化测试
Aug 19 #Python
python 中的命名空间,你真的了解吗?
Aug 19 #Python
13个Pandas实用技巧,助你提高开发效率
Aug 19 #Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
Aug 19 #Python
You might like
PHP的面试题集
2006/11/19 PHP
wordpress之wp-settings.php
2007/08/17 PHP
php中比较简单的导入phpmyadmin生成的sql文件的方法
2011/06/28 PHP
跟我学Laravel之路由
2014/10/15 PHP
php+ajax登录跳转登录实现思路
2016/07/31 PHP
php链式操作的实现方式分析
2019/08/12 PHP
PHP连接MySQL数据库操作代码实例解析
2020/07/11 PHP
JavaScript 函数参数是传值(byVal)还是传址(byRef) 分享
2013/07/02 Javascript
Javascript中的prototype与继承
2017/02/06 Javascript
详解使用webpack打包编写一个vue-toast插件
2017/11/08 Javascript
vue router-link传参以及参数的使用实例
2017/11/10 Javascript
js判断传入时间和当前时间大小实例(超简单)
2018/01/11 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
2018/09/19 Javascript
js限制输入框只能输入数字(onkeyup触发)
2018/09/28 Javascript
angularjs http与后台交互的实现示例
2018/12/21 Javascript
JavaScript 面向对象程序设计详解【类的创建、实例对象、构造函数、原型等】
2020/05/12 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
2020/08/07 Javascript
详解Vue中的自定义指令
2020/12/07 Vue.js
Vue单页面应用中实现Markdown渲染
2021/02/14 Vue.js
[01:42]辉夜杯战队访谈宣传片—FANTUAN
2015/12/25 DOTA
Python 闭包的使用方法
2017/09/07 Python
Python实现的银行系统模拟程序完整案例
2019/04/12 Python
python+rsync精确同步指定格式文件
2019/08/29 Python
Python中的引用和拷贝实例解析
2019/11/14 Python
Python 如何查找特定类型文件
2020/08/17 Python
PyCharm Community安装与配置的详细教程
2020/11/24 Python
Python的scikit-image模块实例讲解
2020/12/30 Python
PHP面试题及答案二
2015/05/23 面试题
实习教师自我鉴定
2013/09/27 职场文书
计算机应用毕业生自荐信
2013/10/23 职场文书
交通法规咨询中心工作职责
2013/11/27 职场文书
《雾凇》教学反思
2014/02/17 职场文书
医学生自我鉴定范文
2014/03/26 职场文书
辩论赛主持人开场白
2015/05/29 职场文书
2016年安康杯竞赛活动总结
2016/04/05 职场文书
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js