OpenCV 学习笔记 05 人脸检测和识别 AttributeError: module 'cv2' has no attribute 'face'
1 环境设置:
win10
python 3.6.8
opencv 4.0.1
2 尝试的方法
在学习人脸识别中,遇到了没有 cv2 中没有 face 属性。在网上找了几个方法,均没有成功解决掉该问题。
2.1 方法一
来源:module 'cv2.cv2' has no attribute 'face'
pip install opencv-contrib-python
重启sublime,在运行后依旧报错。
当然了,这个不成功可能是由于opencv 与 contrib 版本不匹配造成的。
2.2 方法二
来源:OpenCV3-Python人脸识别方法—人脸识别与标记
方法:
将
model = cv2.face.createEigenFaceRecognizer()
改为
model = cv2.face_EigenFaceRecognizer.create()
依据报错,只是这次是不存在 face_EigenFaceRecognizer 属性。
当然了,以上两个均无法解决错误可能是版本问题。
3 解决方案
3.1、寻根问祖——官网
首先查看 opencv 官网 https://docs.opencv.org/4.0.1/
OpenCV modules 赫然而现
既然是 opencv 的 modules 出现问题,就直接看 modules 好了

注意:不要点击菜单栏中的 Modules ,直接看本页内容 OK 了;主要是点击后看到的内容比较混乱,反而没有对 “ 打开神奇的大门 ” 没有太大的帮助。
不难发现,我们在 opencv 的基础款 (Main modules)中确实没有发现 face 类;当我们继续查看附加款(Extra modules)时,竟然发现了 face ;任督二脉就此打通。

真的是机缘巧合,打开菜单栏中的 modules 时会发现,穷列了所有的 modules (Here is a list of all modules:),多达 4 页,幸运的是在第一页出现了 Face Analysis,点开后是对face 类的详细讲解 【Face Analysis】,不过此时已经很难看到庐山真面了。
3.2 解决方案
以前在安装库的时候,记得有的库文件中带有 contrib ,而基本都没安装过,contrib 应该就和 extra modules 有关 !
打开 python 扩展包网站 https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv,
找到对应版本 opencv_python-4.0.1+contrib-cp36-cp36m-win_amd64.whl ,下载 - 安装。
搞定!
安装前先卸载了 opencv-python
安装后的版本为
opencv-python 4.0.1+contrib
4 参考
官网 https://docs.opencv.org/4.0.1/index.html
Face Analysis 官网 https://docs.opencv.org/4.0.1/db/d7c/group__face.html
如何編譯opencv3.0(含extra modules) 这个讲的比较好,有一定启发性。
https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv python 第三方库文件
module 'cv2.cv2' has no attribute 'face' 这个案例不成功可能是opencv 与extent modules不匹配造成的。
OpenCV3-Python人脸识别方法—人脸识别与标记 文档中讲述了原因可能是新版本变化使得书中的代码形式改变,作者应该也费了一番功夫。
OpenCV 学习笔记 05 人脸检测和识别 AttributeError: module 'cv2' has no attribute 'face'的更多相关文章
- OpenCV 学习笔记 05 人脸检测和识别
本节将介绍 Haar 级联分类器,通过对比分析相邻图像区域来判断给定图像或子图像与已知对象是否匹配. 本章将考虑如何将多个 Haar 级联分类器构成一个层次结构,即一个分类器能识别整体区域(如人脸) ...
- OpenCV 学习笔记 07 目标检测与识别
目标检测与识别是计算机视觉中最常见的挑战之一.属于高级主题. 本章节将扩展目标检测的概念,首先探讨人脸识别技术,然后将该技术应用到显示生活中的各种目标检测. 1 目标检测与识别技术 为了与OpenCV ...
- OpenCV 学习笔记 05 级联分类器CascadeClassifier类
在人脸检测中,CascadeClassifier 是一个类,该类的作用是(基于官方已经训练好的数据文件 .xml)实例化一个检测器. 1 类 CascadeClassifier 的概述 首先看一下该类 ...
- OpenCV学习代码记录——人脸检测
很久之前学习过一段时间的OpenCV,当时没有做什么笔记,但是代码都还在,这里把它贴出来做个记录. 代码放在码云上,地址在这里https://gitee.com/solym/OpenCVTest/tr ...
- opencv学习笔记霍夫变换——直线检测
参考大佬博文:blog.csdn.net/jia20003/article/details/7724530 lps-683.iteye.com/blog/2254368 openCV里有两个函数(比较 ...
- OpenCV 学习笔记03 boundingRect、minAreaRect、minEnclosingCircle、boxPoints、int0、circle、rectangle函数的用法
函数中的代码是部分代码,详细代码在最后 1 cv2.boundingRect 作用:矩形边框(boundingRect),用于计算图像一系列点的外部矩形边界. cv2.boundingRect(arr ...
- 基于OpenCv的人脸检测、识别系统学习制作笔记之三
1.在windows下编写人脸检测.识别系统.目前已完成:可利用摄像头提取图像,并将人脸检测出来,未进行识别. 2.在linux下进行编译在windows环境下已经能运行的代码. 为此进行了linux ...
- 基于OpenCV读取摄像头进行人脸检测和人脸识别
前段时间使用OpenCV的库函数实现了人脸检测和人脸识别,笔者的实验环境为VS2010+OpenCV2.4.4,opencv的环境配置网上有很多,不再赘述.检测的代码网上很多,记不清楚从哪儿copy的 ...
- OpenCV 学习笔记 02 使用opencv处理图像
1 不同色彩空间的转换 opencv 中有数百种关于不同色彩空间的转换方法,但常用的有三种色彩空间:灰度.BRG.HSV(Hue-Saturation-Value) 灰度 - 灰度色彩空间是通过去除彩 ...
随机推荐
- mac和Linux的环境变量设置
摘抄自:http://hi.baidu.com/machao_pe/item/763d0ef12d32cd35fe3582db redhat和ubuntu中修改环境变量 2010-03-06 23:4 ...
- php 前一天或后一天的日期
php 判断今天的前一天,或前后多少天的代码 <?php date_default_timezone_set('PRC'); //默认时区 echo "今天:",date(& ...
- BZOJ1179 [Apio2009]Atm Tarjan 强连通缩点 动态规划
欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1179 题意概括 有一个有向图,每一个节点有一个权值,其中有一些结束点. 现在,你要从S出发,到达任 ...
- 075 importSTV的使用,与bulkload的使用
一:由HDFS将数据直接导入到HBase中 1.生成TSV文件 2.内容 3.上传到HDFS 4.运行 export HBASE_HOME=/etc/opt/modules/hbase-0.98.6- ...
- SqlServer 添加用户 添加角色 分配权限
转载自:https://www.cnblogs.com/accumulater/p/6158387.html --创建一个简单的登录,登录名为:newlogin:登录密码:123456:默认数据库 ...
- 014.Docker Harbor+Keepalived+LVS+共享存储高可用架构
一 多Harbor高可用介绍 共享后端存储是一种比较标准的方案,将多个Harbor实例共享同一个后端存储,任何一个实例持久化到存储的镜像,都可被其他实例中读取.通过前置LB组件,如Keepalived ...
- LoRaWAN 1.1 网络协议规范 - 3 物理层帧格式
LoRaWAN 1.1 网络协议规范 LoRaWAN 1.1 版本封稿很久了也没有完整啃过一遍,最近边啃边翻译,趁着这个机会把它码下来. 如果觉得哪里有问题,欢迎留言斧正. 翻译不易,转载请申明出处和 ...
- loj#6076「2017 山东一轮集训 Day6」三元组 莫比乌斯反演 + 三元环计数
题目大意: 给定\(a, b, c\),求\(\sum \limits_{i = 1}^a \sum \limits_{j = 1}^b \sum \limits_{k = 1}^c [(i, j) ...
- [NOIp2012提高组]同余方程
OJ题号: 洛谷1082 思路: 逆元模板. #include<cstdio> #include<cctype> inline int getint() { char ch; ...
- 20172302 《Java软件结构与数据结构》实验二:树实验报告
课程:<Java软件结构与数据结构> 班级: 1723 姓名: 侯泽洋 学号:20172302 实验教师:王志强老师 实验日期:2018年11月5日 必修/选修: 必修 实验内容 (1)参 ...