Python3.6.0+opencv3.3.0人脸检测示例


Posted in Python onMay 25, 2018

网上有很多关于Python+opencv人脸检测的例子,并大都附有源程序。但是在实际使用时依然会遇到这样或者那样的问题,在这里给出常见的两种问题及其解决方法。

先给出源代码:(如下)

import cv2
import numpy as np

cv2.namedWindow("test")
cap=cv2.VideoCapture(0)
success,frame=cap.read()

classifier=cv2.CascadeClassifier("haarcascade_frontalface_alt.xml")

while success:
 success,frame=cap.read()
 size=frame.shape[:2]
 image=np.zeros(size,dtype=np.float16)
 image=cv2.cvtColor(frame,cv2.cv.CV_BGR2GRAY)
 cv2.equalizeHist(image,image)
 divisor=8
 h,w=size
 minSize=(w/divisor,h/divisor)
 faceRects=classifier.detectMultiScale(image,1.2,2,cv2.CASCADE_SCALE_IMAGE,minSize)
 if len(faceRects)> 0:
 for faceRect in faceRects:
  x,y,w,h=faceRect
  cv2.circle(frame,(x+w/2,y+h/2),min(w/2,h/2),(255,0,0))
  cv2.circle(frame,(x+w/4,y+h/4),min(w/8,h/8),(255,0,0))
  cv2.circle(frame,(x+3*w/4,y+h/4),min(w/8,h/8),(255,0,0))
  cv2.rectangle(frame,(x+3*w/4,y+3*h/4),(x+5*w/8,y+7*h/8),(255,0,0))
 cv2.imshow("test",frame)
 key=cv2.waitKey(10)
 c=chr(key&255)
 if c in ['q','Q',chr(27)]:
 break
 cv2.destroyWindow("test")

运行后出现问题一:

Traceback (most recent call last):
File “E:/facepy/m.py”, line 14, in
image=cv2.cvtColor(frame,cv2.cv.CV_BGR2GRAY)
AttributeError: module ‘cv2.cv2' has no attribute ‘cv'

Python3.6.0+opencv3.3.0人脸检测示例

解决方法:

cv2.cv.CV_BGR2GRAY是Opencv 2.x的变量,在Opencv 3.3中无法识别,所以应该替换成:

image=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)

修改完成后,继续运行,又出现问题二:

Traceback (most recent call last):
File “E:/facepy/m.py”, line 19, in
faceRects=classifier.detectMultiScale(image,1.2,2,cv2.CASCADE_SCALE_IMAGE,minSize)
TypeError: integer argument expected, got float

Python3.6.0+opencv3.3.0人脸检测示例

解决方法:

由于minSize传到detectMultiScale函数的值不是整数导致的导致出现错误,所以这里我们需要强制转换minSize的值为整数: minSize =(w//divisor, h//divisor)  或者 minSize=(int(w/divisor),int(h/divisor))

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

Python 相关文章推荐
python使用多线程不断刷新网页的方法
Mar 31 Python
python使用urllib2提交http post请求的方法
May 26 Python
解决Python中字符串和数字拼接报错的方法
Oct 23 Python
Python搭建FTP服务器的方法示例
Jan 19 Python
flask框架使用orm连接数据库的方法示例
Jul 16 Python
python梯度下降法的简单示例
Aug 31 Python
解决python3 安装完Pycurl在import pycurl时报错的问题
Oct 15 Python
使用Python向DataFrame中指定位置添加一列或多列的方法
Jan 29 Python
Python代码太长换行的实现
Jul 05 Python
正则给header的冒号两边参数添加单引号(Python请求用)
Aug 09 Python
Django文件上传与下载(FileFlid)
Oct 06 Python
keras用auc做metrics以及早停实例
Jul 02 Python
Python unittest模块用法实例分析
May 25 #Python
使用Python的Django和layim实现即时通讯的方法
May 25 #Python
matplotlib subplots 调整子图间矩的实例
May 25 #Python
Matplotlib 生成不同大小的subplots实例
May 25 #Python
python opencv3实现人脸识别(windows)
May 25 #Python
基于python3 OpenCV3实现静态图片人脸识别
May 25 #Python
matplotlib savefig 保存图片大小的实例
May 24 #Python
You might like
ThinkPHP的I方法使用详解
2014/06/18 PHP
PHP简单选择排序算法实例
2015/01/26 PHP
php无限分类使用concat如何实现
2015/11/05 PHP
PHP连接数据库实现注册页面的增删改查操作
2016/03/27 PHP
BOOM vs RR BO5 第一场 2.14
2021/03/10 DOTA
JXTree对象,读取外部xml文件数据,生成树的函数
2007/04/02 Javascript
JS 判断代码全收集
2009/04/28 Javascript
JavaScript 对象、函数和继承
2009/07/07 Javascript
基于jQuery的360图片展示实现代码
2012/06/14 Javascript
我的Node.js学习之路(三)--node.js作用、回调、同步和异步代码 以及事件循环
2014/07/06 Javascript
Egret引擎开发指南之发布项目
2014/09/03 Javascript
JS实现的自定义网页拖动类
2015/11/06 Javascript
使用json来定义函数,在里面可以定义多个函数的实现方法
2016/10/28 Javascript
详解vue-validator(vue验证器)
2017/01/16 Javascript
详解Vue学习笔记进阶篇之列表过渡及其他
2017/07/17 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
2019/07/19 Javascript
vue 组件内获取actions的response方式
2019/11/08 Javascript
[57:22]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第五场
2018/04/10 DOTA
Python 安装setuptools和pip工具操作方法(必看)
2017/05/22 Python
Python随机生成均匀分布在三角形内或者任意多边形内的点
2017/12/14 Python
python中的print()输出
2019/04/12 Python
python使用celery实现异步任务执行的例子
2019/08/28 Python
500行代码使用python写个微信小游戏飞机大战游戏
2019/10/16 Python
详解有关PyCharm安装库失败的问题的解决方法
2020/02/02 Python
python 如何将office文件转换为PDF
2020/09/22 Python
python 如何对logging日志封装
2020/12/02 Python
Python基于opencv的简单图像轮廓形状识别(全网最简单最少代码)
2021/01/28 Python
Html5 canvas实现粒子时钟的示例代码
2018/09/06 HTML / CSS
Europcar意大利:汽车租赁
2019/07/07 全球购物
共筑中国梦演讲稿
2014/04/23 职场文书
法人单位授权委托书范文
2014/10/06 职场文书
幼儿园见习报告
2014/10/30 职场文书
二十年同学聚会感言
2015/07/30 职场文书
2019年关于小学生课外阅读情况的分析报告
2019/12/02 职场文书
导游词之藏龙百瀑景区
2019/12/30 职场文书
分布式Redis Cluster集群搭建与Redis基本用法
2022/02/24 Redis