web-dev-qa-db-ja.com

attributeerror:モジュール 'cv2.face'には属性 'createlbphfacerecognizer'がありません

だから私は少し個人的なプロジェクトをやっていますが、認識エンジンを作成しようとするとこのエラーが発生し続けます。私はopencv-contribとすべてを持っています。誰かが何が起こっているのか知っていますか?下に投稿されたコード

import cv2, os
import numpy as np
from PIL import Image

cascadePath = "haarcascade_frontalface_default.xml"
faceCascade = cv2.CascadeClassifier(cascadePath)

recognizer = cv2.face.createLBPHFaceRecognizer()

それはその最後の行に巻き込まれます。すでにすべてのモジュールを再インストールしてみました。他に何をすべきか本当にわからない。奇妙なことに、私のラップトップでは機能しますが、デスクトップでは機能しません。どちらも同じモジュール、同じpythonリリースで、まったく同じコードを実行しています。

5
Zack Shadid

同じ問題があった。使用する:

recognizer = cv2.face.LBPHFaceRecognizer_create()

それは私のプログラムでうまくいきました。

17
Peter

デフォルトのpip install opencv-pythonには、提供されたライブラリ用のいくつかの不足しているモジュールがあるため、pip install opencv-contrib-pythonが必要です

Windows 7では、opencvをアンインストールして再インストールするだけで問題を解決できました。

pip uninstall opencv-contrib-python
pip install opencv-contrib-python

認識機能は以下によって呼び出されます:

recognizer = cv2.face.LBPHFaceRecognizer_create()
2
Peter

「python -m pip install opencv-contrib-python」psでopencvを更新してみてください。CV2リポジトリをPython repから削除してから、このコマンドを(CMDウィンドウで)実行する必要があります。 )それが機能しない場合

1
tawfik mourchid

この問題を2つのコマンドで修正しました。

最初: Sudo pip3 uninstall opencv-contrib-python

2番目:Sudo python3 -m pip install opencv-contrib-python==3.3.0.9

これで問題が解決しました。それが誰かを助けることを願っています!また、python2を使用している場合は、「pip3」を「pip」に、「python3」を「python」に置き換えます。

1
Chandan Gupta

Opencvバージョン3.4.1の実行中にこの問題が発生しました。これが私がしたことです。

仕様:Raspberry Pi 3B、OS:Raspbian、バージョン:9(ストレッチ)、Python 3、opencvバージョン3.4.1

Pythonでopencvのバージョンを確認する

import cv2

cv2.__version__

1)Sudo pip install opencv-contrib-python

*この後、python=にcv2をインポートできませんでした。

2)Sudo apt-get update

3)Sudo apt-get install libhdf5-dev

4)Sudo apt-get update

5)Sudo apt-get install libhdf5-serial-dev libqtgui4 libqt4-test

1
WannaB_robot

これを使ってみてください:

import cv2
import os
import numpy as np
from PIL import Image

# Path for face image database
path = 'dataset'
recognizer = cv2.face_LBPHFaceRecognizer.create()
detector = cv2.CascadeClassifier("haarcascade_frontalface_default.xml")
1
Sebastian

Opencv 3.xを使用していますが、新しいバージョンではいくつかのモジュールが削除されています。次の2つのオプションがあります。1.既存のopencv 3.xバージョンにopencv_contribモジュールを追加します。ここにリンクがあります https://github.com/opencv/opencv_contrib 2.古いバージョンのOpencvを使用できます。 opencv 2.4.xのように

0
Aquib

cmdを開き、次に-> pip install opencv-contrib-python

0
  • コマンドでこのパッケージ(opencv-python)をアンインストールします:-
  • pip uninstall opencv-python
  • ライブラリopencv-contrib pythonコマンドを使用してインストール:-
  • pip install opencv-contrib-python
  • 次に追加または確認します:-
  • recognizer = cv2.face_LBPHFaceRecognizer.create()
  • それはうまくいきます
  • opencv-pythonライブラリcv2.faceに問題がなかったため、属性がないという問題が表示されます。インストールされている場合は、以前のライブラリをアンインストールして新しいlibをインストールしてください。
0
NirdoSh Thakur

これを試してみました

pip install --force-reinstall opencv-contrib-python==4.1.2.30
0
yogesh jadhav

Jupyter Notebookを使用してコードを実行すると、この問題が発生しました。 Jupyter Notebookで実行している場合は、pyhton(.py)ファイルとしてダウンロードし、Anacondaプロンプトまたはコマンドプロンプトで実行してみます。これで問題は解決しました。ありがとうございました。

0
Subham Sarkar

インストールしてこの問題を修正しました:_Sudo pip install opencv-contrib-python_。

次に、正しい形式を探します。

python2がデフォルトです

基本的に問題は、python3とpython2のコード形式が異なることです。

recognizer = cv2.face.LBPHFaceRecognizer_create()

これはpython2のフォーマットです。

recognizer = cv2.face.createLBPHFaceRecognizer()

これはpython3の形式です

0
Closed Eagle