OpenCV 2.4.3 - JavaCV 0.3 - FaceRecognizer 类 - LBPH - 更新功能仍然无效

标签 opencv face-recognition javacv

我已经使用 javacv LBPH 类在 Java 中实现了人脸识别,但我遇到了 FaceRecognizer.LBPH 不支持更新功能的问题。这是错误:

“OpenCV错误:功能/特征未实现(此FaceRecognizer(FaceRecognizer.LBPH)不支持更新,您必须使用FaceRecognizer::train来更新它。)在未知功能,文件..... .\src\opencv\modules\contrib\src\facerec.cpp,第 305 行”

最佳答案

问题来了。在 OpenCV 存储库的主干中,该方法是虚拟的,并被 LBPH FaceRecognizer 覆盖。所以它被 C++ 中的后期绑定(bind)规则调用。这适用于 C++ 和所有包装器。 但这就是问题所在:在 OpenCV 的 2.4 分支中,团队希望保证二进制兼容性,因此从方法签名中删除了 virtual 关键字。这会导致所有问题,因为不再调用覆盖的方法。我会修复它并相应地更新这篇文章。

关于OpenCV 2.4.3 - JavaCV 0.3 - FaceRecognizer 类 - LBPH - 更新功能仍然无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13246094/

相关文章:

c++ - Ubuntu 上的 Qt+OpenCV 无法运行/调试 : Failed to start application

c++ - 如何在 Windows 窗体应用程序中显示 cv::Mat?

python - cv2.fitEllipse 如何处理旋转的宽度/高度?

python - 负坐标对 cv2.perspectiveTransform 意味着什么?

c++ - OpenCV:相对于引用图像移动/对齐面部图像(图像配准)

python - 人脸API Python SDK "Image Size too Small"(PersonGroupPerson add_face_from_stream)

opencv - 如何在Javacv中将Mat转换为IplImage?

java - 使用 JavaCV 计算 Homography 的 CvPoint2D32f 到 cvMat 的列表

java - 使 ffmpeg/javacv 在 Java 中不那么冗长

java - 更改蒙版 OpenCV 3 的颜色