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 禁止函数修改列表的实现方法
Aug 03 Python
Python+matplotlib绘制不同大小和颜色散点图实例
Jan 19 Python
将TensorFlow的模型网络导出为单个文件的方法
Apr 23 Python
JavaScript中的模拟事件和自定义事件实例分析
Jul 27 Python
如何使用python操作vmware
Jul 27 Python
面向对象学习之pygame坦克大战
Sep 11 Python
python中for循环变量作用域及用法详解
Nov 05 Python
python 并发下载器实现方法示例
Nov 22 Python
Python实现进度条和时间预估的示例代码
Jun 02 Python
Python通过类的组合模拟街道红绿灯
Sep 16 Python
Python实现七个基本算法的实例代码
Oct 08 Python
python制作抽奖程序代码详解
Jan 15 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
ThinkPHP使用心得分享-分页类Page的用法
2014/05/15 PHP
php多进程模拟并发事务产生的问题小结
2018/12/07 PHP
PHP字符串与数组处理函数用法小结
2020/01/07 PHP
jquery实现盒子下拉效果示例代码
2013/09/12 Javascript
深入理解Javascript中的循环优化
2013/11/09 Javascript
js AppendChild与insertBefore用法详细对比
2013/12/16 Javascript
JS实现简单的顶部定时关闭层效果
2014/06/15 Javascript
Javascript基础教程之数组 array
2015/01/18 Javascript
初识Node.js
2015/03/20 Javascript
javascript中传统事件与现代事件
2015/06/23 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
js定时器实现倒计时效果
2017/11/05 Javascript
JS中touchstart事件与click事件冲突的解决方法
2018/03/12 Javascript
解决vue2.0动态绑定图片src属性值初始化时报错的问题
2018/03/14 Javascript
Vue写一个简单的倒计时按钮功能
2018/04/20 Javascript
详解TypeScript+Vue 插件 vue-class-component的使用总结
2019/02/18 Javascript
为react组件库添加typescript类型提示的方法
2020/06/15 Javascript
Python验证码识别的方法
2015/07/10 Python
Python生成密码库功能示例
2017/05/23 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
2018/10/21 Python
python 返回列表中某个值的索引方法
2018/11/07 Python
Python3爬虫教程之利用Python实现发送天气预报邮件
2018/12/16 Python
实例详解Python装饰器与闭包
2019/07/29 Python
详解python中的生成器、迭代器、闭包、装饰器
2019/08/22 Python
python opencv实现gif图片分解的示例代码
2019/12/13 Python
六种酷炫Python运行进度条效果的实现代码
2020/07/17 Python
Python 解析库json及jsonpath pickle的实现
2020/08/17 Python
python生成word合同的实例方法
2021/01/12 Python
css3中flex布局宽度不生效的解决
2020/12/09 HTML / CSS
美国床垫和床上用品公司:Nest Bedding
2017/06/12 全球购物
护士自荐信
2013/10/25 职场文书
个人借款担保书
2014/04/02 职场文书
股东协议书范本
2014/04/14 职场文书
校庆活动策划方案
2014/06/05 职场文书
颐和园导游词
2015/01/30 职场文书
2016七夕情人节感言
2015/12/09 职场文书