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 Web开发框架Django
Jun 30 Python
python数组复制拷贝的实现方法
Jun 09 Python
在python的类中动态添加属性与生成对象
Sep 17 Python
Python实现获取磁盘剩余空间的2种方法
Jun 07 Python
pandas多级分组实现排序的方法
Apr 20 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
Apr 26 Python
十分钟利用Python制作属于你自己的个性logo
May 07 Python
神经网络相关之基础概念的讲解
Dec 29 Python
解决Django中多条件查询的问题
Jul 18 Python
python3 selenium自动化 下拉框定位的例子
Aug 23 Python
Python 字典中的所有方法及用法
Jun 10 Python
python字典与json转换的方法总结
Dec 28 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对mongodb的扩展(初出茅庐)
2012/11/11 PHP
php生成图片验证码
2015/06/09 PHP
为你总结一些php信息函数
2015/10/21 PHP
WordPress迁移时一些常见问题的解决方法整理
2015/11/24 PHP
PHP中array_keys和array_unique函数源码的分析
2016/02/26 PHP
总结PHP删除字符串最后一个字符的三种方法
2016/08/30 PHP
40款非常棒的jQuery 插件和制作教程(系列二)
2011/11/02 Javascript
jquery ajax的success回调函数中实现按钮置灰倒计时
2013/11/19 Javascript
Jquery通过JSON字符串创建JSON对象
2014/08/24 Javascript
js中document.write的那点事
2014/12/12 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
jQuery控制Div拖拽效果完整实例分析
2015/04/15 Javascript
原生JavaScript实现Ajax的方法
2016/04/07 Javascript
Javascript 调用 ActionScript 的简单方法
2016/09/22 Javascript
jQuery仿写百度百科的目录树
2017/01/03 Javascript
inner join 内联与left join 左联的实例代码
2017/09/18 Javascript
BootStrap模态框不垂直居中的解决方法
2017/10/19 Javascript
React为 Vue 引入容器组件和展示组件的教程详解
2018/05/03 Javascript
Vue前端项目部署IIS的实现
2020/01/06 Javascript
如何手写简易的 Vue Router
2020/10/10 Javascript
[54:10]完美世界DOTA2联赛PWL S2 Magma vs FTD 第二场 11.29
2020/12/03 DOTA
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
Python中if __name__ == &quot;__main__&quot;详细解释
2014/10/21 Python
python获取当前用户的主目录路径方法(推荐)
2017/01/12 Python
python实现随机梯度下降法
2020/03/24 Python
python自制包并用pip免提交到pypi仅安装到本机【推荐】
2019/06/03 Python
Python如何批量获取文件夹的大小并保存
2020/03/31 Python
Python使用OpenPyXL处理Excel表格
2020/07/02 Python
CSS3实现10种Loading效果
2016/07/11 HTML / CSS
CSS3 Flex 弹性布局实例代码详解
2018/11/01 HTML / CSS
Holiday Inn中国官网:IHG旗下假日酒店预订
2018/04/08 全球购物
程序员机试试题汇总
2012/03/07 面试题
优秀少先队辅导员先进事迹材料
2014/05/18 职场文书
安全生产宣传标语
2014/06/06 职场文书
早上好问候语大全
2015/11/10 职场文书
检讨书格式
2019/04/25 职场文书