Opencv 3にはpython関数があります。仮想環境がなくても動作します。また、opencvをvenvに: pyimagesearch からインストールしました。私はvenvでそのpython関数を実行しようとしていますが、エラーが発生します:
AttributeError: 'module' object has no attribute 'createLBPHFaceRecognizer'
ターミナルにvenvなし:
gkhan@Gkan ~/Masaüstü/face_recognizer $ python face_recognizer.py
Yol :./sinif/114.jpg.
114 Yuz Tanindi 12
ターミナルでvenvを使用:
gkhan@Gkan ~/Masaüstü/face_recognizer $ workon cv
(cv)gkhan@Gkan ~/Masaüstü/face_recognizer $ python face_recognizer.py
Traceback (most recent call last):
File "face_recognizer.py", line 15, in <module>
recognizer = cv2.createLBPHFaceRecognizer()
AttributeError: 'module' object has no attribute 'createLBPHFaceRecognizer'
私のpythonコード:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import cv2, os
import numpy as np
from PIL import Image
# For Test
if 0==0:
cascadePath = "haarcascade_frontalface_default.xml"
faceCascade = cv2.CascadeClassifier(cascadePath)
recognizer = cv2.createLBPHFaceRecognizer()
...
Linux Mint 64ビットでpython 2.7を使用してOpencv3を実行しています
OpenCV 3から opencv_contrib リポジトリを取得してビルドする必要があります。次に、サブモジュール「face」を使用できます。
Cv2のモジュールcv2.faceのヘルプ:
_NAME
cv2.face
FILE
(built-in)
FUNCTIONS
createEigenFaceRecognizer(...)
createEigenFaceRecognizer([, num_components[, threshold]]) -> retval
createFisherFaceRecognizer(...)
createFisherFaceRecognizer([, num_components[, threshold]]) -> retval
createLBPHFaceRecognizer(...)
createLBPHFaceRecognizer([, radius[, neighbors[, grid_x[, grid_y[, threshold]]]]]) -> retval
_
これでcv2.face.createLBPHFaceRecognizer()
を使用できます
私にとって最も簡単な方法は、anacondaパッケージを使用することでした。
_conda install -c menpo opencv3=3.1.0
_
インストールしたら、cv2.face.createLBPHFaceRecognizer()
またはその他の顔認識ツールを使用します。お役に立てれば
このコマンドを実行してcontribをインストールします
python -m pip install opencv-contrib-python
これが完了したら、この属性を使用します
recoginizer = cv2.face.LBPHFaceRecognizer_create()
for python 3.6が使用するバージョン:
rec = cv2.face.LBPHFaceRecognizer_create();
python 3を使用しているWindowsユーザーの場合、opencv_contribは here から取得できます。私のシステムは64ビットなのでopencv_python‑3.3。 0 + contrib‑cp36‑cp36m‑win_AMD64.whlは、私が使用したものです32ビットの場合は、32ビットバージョンを選択します。
コマンドプロンプトを開き、ダウンロードフォルダーに移動してコマンドを使用します
pip install opencv_python-3.3.0+contrib-cp36-cp36m-win_AMD64.whl
注:ダウンロードしたファイルと同様のコマンドを使用し、contribを使用して新しいバージョンをインストールする前に、必ず古いバージョンをアンインストールしてください。私は走らなければなりませんでした:
pip uninstall opencv_python-3.3.0-cp36-cp36m-win_AMD64.whl
新しいインストールを行う前に。
次に、成功することを確認します
>>>import cv2
>>>cv2.face
<module 'cv2.face'>
CreateLBPHFaceRecognizer()の代わりに、LBPHFaceRecognizer_create()を使用する必要があります
Pythonバージョン3.6.xの場合、次のようにします。
ターミナルを開き、opencv-contrib-pythonをインストールします
python -m pip install opencv-contrib-python
使い終わったらこれを使用してください
recoginizer = cv2.face.LBPHFaceRecognizer_create()
[その他のオプション]では、次のように実行できます。
print(help(cv2.face))