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 相关文章推荐
Python3处理文件中每个词的方法
May 22 Python
Python中文分词实现方法(安装pymmseg)
Jun 14 Python
在Python中定义和使用抽象类的方法
Jun 30 Python
Python实现向服务器请求压缩数据及解压缩数据的方法示例
Jun 09 Python
Python决策树分类算法学习
Dec 22 Python
用Python进行简单图像识别(验证码)
Jan 19 Python
Python实现计算圆周率π的值到任意位的方法示例
May 08 Python
50行Python代码获取高考志愿信息的实现方法
Jul 23 Python
使用Jupyter notebooks上传文件夹或大量数据到服务器
Apr 14 Python
Python中logging日志的四个等级和使用
Nov 17 Python
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
Jun 22 Python
opencv-python图像配准(匹配和叠加)的实现
Jun 23 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
php sprintf()函数让你的sql操作更安全
2008/07/23 PHP
PHP 递归效率分析
2009/11/24 PHP
php中删除数组的第一个元素和最后一个元素的函数
2015/03/07 PHP
PHP中的常见魔术方法功能作用及用法实例
2015/07/01 PHP
PHP实现类似于C语言的文件读取及解析功能
2017/09/01 PHP
PHP pthreads v3下同步处理synchronized用法示例
2020/02/21 PHP
分享JavaScript获取网页关闭与取消关闭的事件
2013/12/13 Javascript
js 处理数组重复元素示例代码
2013/12/27 Javascript
javascript实现根据身份证号读取相关信息
2014/12/17 Javascript
JS导出PDF插件的方法(支持中文、图片使用路径)
2016/07/12 Javascript
AngularJS基础 ng-keydown 指令简单示例
2016/08/02 Javascript
浅谈jquery上下滑动的注意事项
2016/10/13 Javascript
将json转换成struts参数的方法
2016/11/08 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
JS实现合并json对象的方法
2017/10/10 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
vuex根据不同的用户权限展示不同的路由列表功能
2019/09/20 Javascript
[00:08]DOTA2勇士令状等级奖励“天外飞星”
2019/05/24 DOTA
详解Python中的type()方法的使用
2015/05/21 Python
python删除指定类型(或非指定)的文件实例详解
2015/07/06 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
Django获取该数据的上一条和下一条方法
2019/08/12 Python
python django生成迁移文件的实例
2019/08/31 Python
在pycharm中配置Anaconda以及pip源配置详解
2019/09/09 Python
Django ValuesQuerySet转json方式
2020/03/16 Python
Pyspark获取并处理RDD数据代码实例
2020/03/27 Python
Python3中的tuple函数知识点讲解
2021/01/03 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
使用HTML5的Canvas绘制曲线的简单方法
2015/09/08 HTML / CSS
塑料制成的可水洗的编织平底鞋和鞋子:Rothy’s
2018/09/16 全球购物
荷兰领先的百货商店:De Bijenkorf
2018/10/17 全球购物
如何进行有效的自我评价
2013/09/27 职场文书
简短证婚人证婚词
2014/01/09 职场文书
高中军训感言500字
2014/02/24 职场文书
2015年行政管理人员工作总结
2015/10/15 职场文书
python实现调用摄像头并拍照发邮箱
2021/04/27 Python