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正则表达式如何进行字符串替换实例
Dec 28 Python
详解python调度框架APScheduler使用
Mar 28 Python
Python学习小技巧之利用字典的默认行为
May 20 Python
浅谈python3.x pool.map()方法的实质
Jan 16 Python
python实现统计代码行数的小工具
Sep 19 Python
Windows平台Python编程必会模块之pywin32介绍
Oct 01 Python
在pycharm中实现删除bookmark
Feb 14 Python
浅谈Python程序的错误:变量未定义
Jun 02 Python
基于python实现复制文件并重命名
Sep 16 Python
Restful_framework视图组件代码实例解析
Nov 17 Python
详解Selenium 元素定位和WebDriver常用方法
Dec 04 Python
Python实战之疫苗研发情况可视化
May 18 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中使用getimagesize获取图片、flash等文件的尺寸信息实例
2014/04/29 PHP
php函数与传递参数实例分析
2014/11/15 PHP
关于扩展 Laravel 默认 Session 中间件导致的 Session 写入失效问题分析
2016/01/08 PHP
Zend Framework教程之Application用法实例详解
2016/03/14 PHP
YII视图整合kindeditor扩展的方法
2016/07/13 PHP
PHP new static 和 new self详解
2017/02/19 PHP
PHP join()函数用法与实例讲解
2019/03/11 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解
2019/04/09 PHP
Jquery中dialog属性小记
2010/09/03 Javascript
关于js拖拽上传 [一个拖拽上传修改头像的流程]
2011/07/13 Javascript
让ie6也支持websocket采用flash封装实现
2013/02/18 Javascript
简单的js表单验证函数
2013/10/28 Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
2013/12/02 Javascript
浅谈JavaScript字符集
2014/05/22 Javascript
jquery对象和javascript对象即DOM对象相互转换
2014/08/07 Javascript
JS实现的仿QQ空间图片弹出效果代码
2016/02/23 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
2016/11/18 Javascript
ionic中列表项增加和删除的实现方法
2017/01/22 Javascript
vue.js中$set与数组更新方法
2018/03/08 Javascript
vue+element-ui动态生成多级表头的方法
2018/08/28 Javascript
基于js Canvas实现二次贝塞尔曲线
2018/12/25 Javascript
JavaScript实现数字前补“0”的五种方法示例
2019/01/03 Javascript
python查找第k小元素代码分享
2013/12/18 Python
python实现上传样本到virustotal并查询扫描信息的方法
2014/10/05 Python
python中从str中提取元素到list以及将list转换为str的方法
2018/06/26 Python
对python 自定义协议的方法详解
2019/02/13 Python
python+django+rest框架配置创建方法
2019/08/31 Python
Keras: model实现固定部分layer,训练部分layer操作
2020/06/28 Python
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
The Hut德国站点:时装、家居用品、美容等
2016/09/23 全球购物
英国最大的正宗复古足球衫制造商和零售商:TOFFS
2018/06/21 全球购物
购房协议书
2014/04/11 职场文书
计算机科学技术自荐信
2014/06/12 职场文书
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
《女娲补天》教学反思
2016/02/20 职场文书
css3 filter属性的使用简介
2021/03/31 HTML / CSS