Java 基于openCV的人脸识别器
我正在使用openCV 2.4.9 Java库,在实现某些人脸识别器时遇到了一些问题。我知道,在C++中,类<代码> CONII.FACECECGNZIZER <代码>是Abastract,但我不知道java库是否也发生了(实际上java文档太少了!)不管怎样,以下是我给班级打电话的方法:Java 基于openCV的人脸识别器,java,Java,我正在使用openCV 2.4.9 Java库,在实现某些人脸识别器时遇到了一些问题。我知道,在C++中,类 CONII.FACECECGNZIZER 是Abastract,但我不知道java库是否也发生了(实际上java文档太少了!)不管怎样,以下是我给班级打电话的方法: FaceRecognizer rec=新的FaceRecognizer() 或 FaceRecognizer rec=null或 FaceRecognizer rec 最后,我尝试通过以下方式调用Train和Predict方
FaceRecognizer rec=新的FaceRecognizer()代码>
或
FaceRecognizer rec=null代码>
或
FaceRecognizer rec代码>
最后,我尝试通过以下方式调用Train
和Predict
方法:
public static void main(String[] args) {
// TODO code application logic here
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
FaceRecognizer rec = null;
List<Mat> images;
images = new ArrayList<Mat>();
images.add(Highgui.imread("/home/adriano/Desktop/fotos/gabi/1.jpg"));
images.add(Highgui.imread("/home/adriano/Desktop/fotos/gabi/2.jpg"));
images.add(Highgui.imread("/home/adriano/Desktop/fotos/gabi/3.jpg"));
images.add(Highgui.imread("/home/adriano/Desktop/fotos/estevao/1.jpg"));
images.add(Highgui.imread("/home/adriano/Desktop/fotos/estevao/2.jpg"));
images.add(Highgui.imread("/home/adriano/Desktop/fotos/estevao/3.jpg"));
Mat labels = new Mat(1, 6, CvType.CV_8UC1, Scalar(0));
// How can I add some values different from 0 to this Mat?
rec.train(images, labels);
// Predicts the label
System.out.println(testando.predict(Highgui.imread("/home/adriano/Desktop/fotos/gabi/4.jpg"));
}
publicstaticvoidmain(字符串[]args){
//此处的TODO代码应用程序逻辑
System.loadLibrary(Core.NATIVE\u LIBRARY\u NAME);
人脸识别器rec=null;
列出图像;
images=newarraylist();
add(Highgui.imread(“/home/adriano/Desktop/fotos/gabi/1.jpg”);
add(Highgui.imread(“/home/adriano/Desktop/fotos/gabi/2.jpg”);
add(Highgui.imread(“/home/adriano/Desktop/fotos/gabi/3.jpg”);
add(Highgui.imread(“/home/adriano/Desktop/fotos/estevao/1.jpg”);
add(Highgui.imread(“/home/adriano/Desktop/fotos/estevao/2.jpg”);
add(Highgui.imread(“/home/adriano/Desktop/fotos/estevao/3.jpg”);
材料标签=新材料(1,6,CvType.CV_8UC1,标量(0));
//如何将一些不同于0的值添加到此Mat?
列车记录(图像、标签);
//预测标签
System.out.println(testando.predict(Highgui.imread(“/home/adriano/Desktop/fotos/gabi/4.jpg”);
}
欢迎提供任何帮助(:以使您可以使用FaceRecognitor
FaceRecognizer rec=createLBPHFaceRecognizer();
或
或
自OpenCV v3.0以来,创建人脸识别器的方法是,例如:
faceRecognizer = LBPHFaceRecognizer.create();
与创建其他两个识别器的方法相同
FaceRecognizer rec=createFisherFaceRecognizer();
faceRecognizer = LBPHFaceRecognizer.create();