使用javacv进行人脸识别是行不通的
我正在java上做一个关于人脸识别的项目。为此,我使用opencv库。但我不知道如何在没有任何其他库的情况下直接从opencv调用人脸识别方法。因此,现在我正在使用javacv。但当我尝试代码时,这两行显示红线。 FaceRecognizer FaceRecognizer=createEigenFaceRecognizer。 MatVector images=新MatVectorimageFiles.length 我试图导入相应的软件包,但无法正常工作。有人能帮我吗?如果有人知道如何仅使用opencv库实现人脸识别,那么请plzz帮助我。提前感谢 我的代码:使用javacv进行人脸识别是行不通的,java,opencv,image-processing,face-recognition,Java,Opencv,Image Processing,Face Recognition,我正在java上做一个关于人脸识别的项目。为此,我使用opencv库。但我不知道如何在没有任何其他库的情况下直接从opencv调用人脸识别方法。因此,现在我正在使用javacv。但当我尝试代码时,这两行显示红线。 FaceRecognizer FaceRecognizer=createEigenFaceRecognizer。 MatVector images=新MatVectorimageFiles.length 我试图导入相应的软件包,但无法正常工作。有人能帮我吗?如果有人知道如何仅使用ope
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Work;
/**
*
* @author user
*/
import com.googlecode.javacv.cpp.opencv_core;
import static com.googlecode.javacv.cpp.opencv_highgui.*;
import static com.googlecode.javacv.cpp.opencv_core.*;
import static com.googlecode.javacv.cpp.opencv_imgproc.*;
import static com.googlecode.javacv.cpp.opencv_contrib.*;
import java.io.File;
import java.io.FilenameFilter;
public class OpenCVFaceRecognizer {
public static void main(String[] args) {
String trainingDir = "C:/Users/reco/workspace/hellow";
IplImage testImage = cvLoadImage("C:/Users/reco/workspace/0.png");
File root = new File(trainingDir);
FilenameFilter pngFilter = new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".png");
}
};
File[] imageFiles = root.listFiles(pngFilter);
//shows red line
MatVector images = new MatVector(imageFiles.length);
int[] labels = new int[imageFiles.length];
int counter = 0;
int label;
IplImage img;
IplImage grayImg;
for (File image : imageFiles) {
img = cvLoadImage(image.getAbsolutePath());
String temp= image.getName();
label = Integer.parseInt(temp.charAt(0)+"");
grayImg = IplImage.create(img.width(), img.height(), IPL_DEPTH_8U, 1);
cvCvtColor(img, grayImg, CV_BGR2GRAY);
images.put(counter, grayImg);
labels[counter] = label;
counter++;
}
IplImage greyTestImage = IplImage.create(testImage.width(), testImage.height(), IPL_DEPTH_8U, 1);
//shows red line
FaceRecognizer faceRecognizer = createEigenFaceRecognizer();
faceRecognizer.train(images, labels);
cvCvtColor(testImage, greyTestImage, CV_BGR2GRAY);
int predictedLabel = faceRecognizer.predict(greyTestImage);
System.out.println("Predicted label: " + predictedLabel);
}
}
您实际遇到的编译器错误是什么?错误是在OpenCVFaceRecognitizer类中找不到symbol CreateGeneFaceRecognitizer。您是否确保在类路径中包含JavaCV引用的必要JAR?另请参阅其中涉及的代码示例完全相同我已将JavaCV和opencv JAR导入程序。