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开发实例分享bt种子爬虫程序和种子解析
May 21 Python
解析Mac OS下部署Pyhton的Django框架项目的过程
May 03 Python
python自动化脚本安装指定版本python环境详解
Sep 14 Python
基于numpy.random.randn()与rand()的区别详解
Apr 17 Python
Python在for循环中更改list值的方法【推荐】
Aug 17 Python
Pandas Shift函数的基础入门学习笔记
Nov 16 Python
python之Flask实现简单登录功能的示例代码
Dec 24 Python
Python API 自动化实战详解(纯代码)
Jun 11 Python
python绘制评估优化算法性能的测试函数
Jun 25 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
Sep 07 Python
关于pycharm中pip版本10.0无法使用的解决办法
Oct 10 Python
解决pycharm最左侧Tool Buttons显示不全的问题
Dec 17 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测试程序运行时间的类
2012/02/05 PHP
图文介绍PHP添加Redis模块及连接
2015/07/28 PHP
laradock环境docker-compose操作详解
2019/07/29 PHP
农历与西历对照
2006/09/06 Javascript
jQuery bxCarousel实现图片滚动切换效果示例代码
2013/05/15 Javascript
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
什么是JavaScript中的结果值?
2016/10/08 Javascript
巧用Javascript的逻辑运算符
2016/12/02 Javascript
jQuery实现大图轮播
2017/02/13 Javascript
jquery基于layui实现二级联动下拉选择(省份城市选择)
2017/06/20 jQuery
强大的JavaScript响应式图表Chartist.js的使用
2017/09/13 Javascript
浅谈Vue Element中Select下拉框选取值的问题
2018/03/01 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
解决vue页面刷新或者后退参数丢失的问题
2018/03/13 Javascript
BootStrap table实现表格行拖拽效果
2018/12/01 Javascript
VuePress 静态网站生成方法步骤
2019/02/14 Javascript
基于vue写一个全局Message组件的实现
2019/08/15 Javascript
微信小程序wx.request的简单封装
2019/11/13 Javascript
[01:10:58]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
Python中的引用和拷贝浅析
2014/11/22 Python
在 Python 应用中使用 MongoDB的方法
2017/01/05 Python
基于循环神经网络(RNN)实现影评情感分类
2018/03/26 Python
Python 绘图库 Matplotlib 入门教程
2018/04/19 Python
python自定义线程池控制线程数量的示例
2019/02/22 Python
3行Python代码实现图像照片抠图和换底色的方法
2019/10/10 Python
Matplotlib 折线图plot()所有用法详解
2020/07/28 Python
Python+Opencv身份证号码区域提取及识别实现
2020/08/25 Python
EJB与JAVA BEAN的区别
2016/08/29 面试题
教师自荐信
2013/12/10 职场文书
关于元旦的广播稿
2014/02/16 职场文书
奉献演讲稿范文
2014/05/21 职场文书
淘宝活动总结范文
2014/06/26 职场文书
入股合作协议书
2014/10/12 职场文书
社区安置帮教工作总结2015
2015/05/20 职场文书
观看建国大业观后感
2015/06/01 职场文书
nginx之内存池的实现
2022/06/28 Servers