当前位置: 首页 > 知识库问答 >
问题:

即使在安装opencv-contrib后,'模块'对象也没有属性'face'错误

强保臣
2023-03-14

我试图使用Python、OpenCv2和LBPH实现人脸识别(从这里下载)

我的python版本是2.7.14
PIP版本是9.0.3
而OpenCV版本是3.4.0

我的代码是

import cv2
import numpy as np
import NameFind

# --- import the Haar cascades for face and eye ditection
face_cascade = cv2.CascadeClassifier('Haar/haarcascade_frontalcatface.xml')
eye_cascade = cv2.CascadeClassifier('Haar/haarcascade_eye.xml')
spec_cascade = cv2.CascadeClassifier('Haar/haarcascade_eye_tree_eyeglasses.xml')

help(cv2.face)
# FACE RECOGNISER OBJECT
LBPH = cv2.face.LBPHFaceRecognizer_create(2, 2, 7, 7, 20)
EIGEN = cv2.face.createEigenFaceRecognizer(10, 5000)
FISHER = cv2.face.createFisherFaceRecognizer(5, 500)

# Load the training data from the trainer to recognise the faces
LBPH.load("Recogniser/trainingDataLBPH.xml")
EIGEN.load("Recogniser/trainingDataEigan.xml")
FISHER.load("Recogniser/trainingDataFisher.xml")

# ------------------------------------  PHOTO INPUT  -----------------------------------------------------

img = cv2.imread('Me4.jpg')                  # ------->>> THE ADDRESS TO THE PHOTO

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)                # Convert the Camera to gray
faces = face_cascade.detectMultiScale(gray, 1.3, 4)         # Detect the faces and store the positions
print(faces)

for (x, y, w, h) in faces:                                  # Frames  LOCATION X, Y  WIDTH, HEIGHT

    Face = cv2.resize((gray[y: y+h, x: x+w]), (110, 110))   # The Face is isolated and cropped

    ID, conf = LBPH.predict(Face)                           # LBPH RECOGNITION
    print ID
    NAME = NameFind.ID2Name(ID, conf)
    NameFind.DispID(x, y, w, h, NAME, gray)

    ID, conf = EIGEN.predict(Face)                          # EIGEN FACE RECOGNITION
    NAME = NameFind.ID2Name(ID, conf)
    NameFind.DispID3(x, y, w, h, NAME, gray)

    ID, conf = FISHER.predict(Face)                         # FISHER FACE RECOGNITION
    NAME = NameFind.ID2Name(ID, conf)
    NameFind.DispID2(x, y, w, h, NAME, gray)

cv2.imshow('LBPH Face Recognition System', gray)           # IMAGE DISPLAY
cv2.waitKey(0)
cv2.destroyAllWindows()

当我运行任何人脸识别文件(如Recogniser\u Image\u All\u Algorithms.py)时,都会出现此错误

Traceback(最近的调用最后):文件Recogniser_Image_All_Algorithms.py,第11行,在LBPH=cv2.face.LBPHFaceRecognizer_create(2, 2, 7, 7, 20)AtiniteError:'模块'对象没有属性'face'

我已经谷歌了错误,并找到了与此相同的答案

在检查了这些提要之后,我尝试使用python-mpipinstallopencvcontribpython安装opencvcontrib

它说

已满足要求:c:\users\rak\anaconda3\lib\site软件包中的opencv contrib python已满足要求:numpy

但错误依然存在,如何修复此错误。plz帮助

共有3个答案

高皓
2023-03-14

在我的Rpi中,python版本是3.5和2.7。opencv版本是3.3.0,用于将python平台从2.7.x更改为3.5.x。。。转到program/python idle/properties,桌面条目/浏览/选择idle-python3.5,人脸识别模块没有属性“face”。改变python平台后,这个问题将得到解决。

蒯宇定
2023-03-14

我已经使用sudo apt install python opencv安装了opencv for python

现在opencv工作得非常好。

何灼光
2023-03-14

我自己找出问题!问题是我安装了opencv-python,我卸载了opencv-python,并运行pip安装opencv-contrib-python它工作。

 类似资料:
  • 我在64位机器上有一台Windows8.1电脑。我已经在没有opencv_contrib的情况下从源代码处安装了OpenCV 3.0.0。根据Berak的回答--OpenCV 3.0中缺少非自由模块,我下载了contrib并再次尝试从源代码中构建OpenCV,但这一次打开了OPENCV_EXTRA_MODULES选项。 然而,在这个构建过程中,我从VS编译器中得到了奇怪的错误。他们是档案里的 >

  • 问题内容: 我正在以下版本上使用Python和OpenCV创建人脸识别系统: Python 3.6.2 :: Anaconda自定义(64位) 水蟒4.3.23 OpenCV 3.3.0 当我尝试训练人脸识别器时: 我收到此错误: AttributeError:模块“ cv2”没有属性“ face” 更新: 我试图做到这一点: 也: 而且我仍然有错误。 问题答案: 我找到了解决问题的方法,您必须按

  • 我使用要连接到mysql,下面是我的Python语句: 但是有一个错误,这里是日志: 这是我的代码: 我已经创建数据库在谢谢

  • 我正在尝试使用Tensorflow在谷歌云上运行一个培训工作。我试图通过运行以下命令来运行培训。 但是当我运行一个作业时,我得到了以下错误。知道为什么吗?

  • 问题内容: 我有一个很难理解为什么我得到确保后httplib2都 被 安装。见下文: 我也做过 水暖!>在天堂摇动拳头< 问题答案: 将此添加到.bash_profile 然后得到: 无法肯定地说为什么安装而不是系统默认版本,但是现在它们相同,因此现在可以正常使用。

  • 问题内容: 我正在尝试使用Python下载网站的HTML源代码,但收到此错误。 我在这里遵循指南:http : //www.boddie.org.uk/python/HTML.html 我正在使用Python 3。 问题答案: 这适用于Python2.x。 对于Python 3,请在docs中查看: