OpenCV:属性错误:模块“cv2”没有“face”属性。

4

我正在使用Python和OpenCV创建人脸识别系统,版本信息如下:

  • Python 3.6.2 :: Anaconda custom (64-bit)
  • Anaconda 4.3.23
  • OpenCV 3.3.0

在训练人脸识别器时出现了问题:

face_recognizer = cv2.face.createLBPHFaceRecognizer()

我遇到了这个错误:

AttributeError: 模块 'cv2' 没有属性 'face'

更新:
我尝试了这个方法:
pip install opencv_python‑3.3.0+contrib‑cp36‑cp36m‑win_amd64.whl

此外:
conda install -c menpo opencv3=3.3.0

而且我仍然遇到了错误。
7个回答

2
Menpo项目没有针对OpenCV 3.3的安装程序。Menpo项目在macOS和Windows上最高版本为3.1,在Linux上为3.2。请参见Anaconda软件包以获取该描述,以及安装程序版本的文件列表。实际上,您可以查看Menpo的OpenCV3构建的GitHub存储库并自行获取文件。如果需要,您可以更改构建文件以适应您的系统。
我不确定您的pip尝试是否存在拼写错误---正确的PyPI包wheel文件与contrib模块是opencv_contrib_python而不是opencv_python+contrib,如在PyPI中所示。请注意,如果您未使用Windows,则OpenCV的GUI功能将无法使用pip安装程序,包括imshow()和其他类似功能。
最好删除并重新安装带有contrib模块的新版,而不是尝试后期构建它们。

1

当我在寻找相同的解决方案时,我尝试了许多方法,但是这些方法不能成功地安装OpenCV及其额外模块,即OpenCV Contrib。

显然,在使用pip install opencv-python时,Windows平台通常仅下载OpenCV而不包括额外的模块!

下面的方法稳定易用:

  1. 下载包含OpenCV和其Contrib文件的集成'whl'文件,例如'opencv_python‑3.4.3+contrib‑cp36‑cp36m‑win_amd64.whl',可以从此处下载。
  2. 使用pip install <whl filename>进行安装

我已经尝试了其他不可靠的方法,例如@RoyaumeIX提出的解决方案,但最终失败了。

这就是使用的方法。

pip install opencv
pip install opencv-contrib

安装opencv-contrib不能正确地注册opencv包。
我强烈建议您直接下载官方的whl文件并进行安装。

1
我也遇到了同样的问题,但是通过以下步骤解决了:
  1. 启动anaconda导航器

  2. 打开CMD.exe提示符,希望您看到这个 **(base) C:\Users\acer>** 可能对您来说不同

  3. 写入这些命令 >>>**pip install opencv-contrib-python**

  4. 现在您可以运行您的代码检查!我在基础环境下使用Spyder运行我的代码,它对我起作用了!


1

这应该解决问题

pip install opencv-python-headless
pip install opencv-contrib-python-headless

晚上好,我曾经有同样的问题,但是我通过使用这些安装程序解决了。谢谢。 - eddi

0

我使用Python 2.7和OpenCV 3.3.0,在代码中工作。

cv2.face.LBPHFaceRecognizer_create(); 

0
解决方案如下(可在OpenCV论坛StackOverflow中找到),对我很有效:
pip install opencv-python
pip install opencv_contrib_python

在cv2版本4.0.0中,可以使用不同的函数名称创建人脸识别器,如上面提到的

face_recognizer = cv2.face.LBPHFaceRecognizer_create()
face_recognizer = cv2.face.EigenFaceRecognizer_create()
face_recognizer = cv2.face.FisherFaceRecognizer_create()

-1

我找到了解决方案,你必须遵循这个教程 OpenCV with extra modules

以下是关键步骤:

  • 进入C:/PythonXX/lib/site-packeges(您的Python安装的site-packages文件夹),如果存在cv2.pyd,则删除它。
  • 下载带有额外模块的OpenCV
  • 使用CMake创建Visual Studio项目
  • 打开Python IDLE并输入import cv2。 如果没有错误,则安装成功。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接