1

記事を読んでいます

http://docs.opencv.org/trunk/modules/contrib/doc/facerec/facerec_tutorial.html#conclusion

コードを実行してみてくださいfacerec_lbph.cpp。ただし、次のエラーが発生しました。

facerec_lbph.cpp:109:9: error: ‘FaceRecognizer’ was not declared in this scope
facerec_lbph.cpp:109:23: error: template argument 1 is invalid
facerec_lbph.cpp:109:31: error: invalid type in declaration before ‘=’ token
facerec_lbph.cpp:109:58: error: ‘createLBPHFaceRecognizer’ was not declared in this scope
facerec_lbph.cpp:110:10: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:113:31: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:132:10: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:136:27: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:144:18: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:145:18: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:146:18: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:147:18: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:148:18: error: base operand of ‘->’ is not a pointer
facerec_lbph.cpp:151:35: error: base operand of ‘->’ is not a pointer

OpenCVバージョンは

opencv-2.3.1-3.fc16.x86_64
opencv-python-2.3.1-3.fc16.x86_64
opencv-devel-2.3.1-3.fc16.x86_64
opencv-devel-docs-2.3.1-3.fc16.noarch

また、システムバージョンは64ビットのfedora16です。私が使用しているmakefileは次のとおりです。

CC = g++

SRC = facerec_lbph.cpp
TARGET = main

OBJS = facerec_lbph.o


INCDIRS = -I/usr/include/opencv -I/usr/include/opencv2
LIBDIRS = -L/usr/lib64

CFLAGS = -g $(INCDIRS)
LFLAGS = -lopencv_core -lopencv_highgui -lopencv_video -lopencv_imgproc -lopencv_objdetect -lopencv_ml -lopencv_contrib


all: $(OBJS)
    $(CC) -o $(TARGET) $(OBJS) $(INCDIRS) $(LIBDIRS) $(LFLAGS)
main.o: $(SRC) $(INCLUDE)
    $(CC) -c $(SRC) $(INCLUDE) $(INCDIRS) $(LIBDIRS) $(LFLAGS)

clean:
    rm -f $(TARGET) $(OBJS) *.gch

また、新しい情報が必要なときはいつでもエラーレポートを更新できます。ありがとう!

4

1 に答える 1

2

問題は、OpenCV2.3.1を使用していることです。このOpenCVバージョンにはまだcv::FaceRecognizerがないため、エラーメッセージが説明されます。OpenCV2.4.2にアップデートすることを強くお勧めします。

ドキュメントには多くのサンプルが付属しています。

ただし、最近のOpenCVバージョンに更新できない場合は、libfacerecのバージョン0.03を使用することもできます libfacerecは私がOpenCVに提供したプロジェクトです)。すべてのOpenCV2.3バージョンと互換性があります。インターフェースは少し異なりますが、アルゴリズムは同じです。利用可能なタグは次のとおりです。ダウンロードできます。

于 2012-07-09T16:17:57.497 に答える