9

OpenCV 3.0 ベータ版を使用しています。

createLBPHFaceRecognizer(); を使用して顔認識エンジンを作成しようとしました。クラスとして、

   **Ptr <FaceRecognizer> model =  createLBPHFaceRecognizer();**

私が持っているエラーは

   **error: 'createLBPHFaceRecognizer' was not declared in this scope**

contrib以前のバージョンの OpenCV では、このクラスが opencv2 のモジュール (opencv2/contrib/contrib.hpp) に存在することを調査しました。

しかし、このモジュールは opencv 3.0 ベータ版では利用できません。では、opencv 3.0 で定義されている認識クラスはどこにあるのでしょうか?

それらが定義されていない場合、既存のモジュールに加えてこのモジュールを追加するにはどうすればよいですか?

4

3 に答える 3

9

opencv_contribリポジトリをダウンロードしてビルドする必要があります。

cmake、make、make install を実行した後、

#include <opencv2/face.hpp>

// note the additional namespace:    
cv::Ptr <cv::face::FaceRecognizer> model = cv::face::createLBPHFaceRecognizer();
// proceed as usual
于 2015-02-04T13:59:01.067 に答える
0

Debian のインストール時

$ dpkg -l libopencv-contrib-dev
ii  libopencv-contrib-dev:amd64 3.2.0+dfsg-6 amd64        development files for libopencv-contrib3.2

インクルードを追加するだけで、提供されたモジュールを使用できます。例えば:

#include <opencv2/opencv.hpp>
#include <opencv2/face.hpp>
auto model = cv::face::createLBPHFaceRecognizer();
于 2019-03-17T18:21:08.340 に答える