Olá pessoal, estou usando JavaCV para abrir uma imagem e localizar o rosto de uma pessoa, mas ao executar recebo o seguinte
erro:
Exception in thread “main” java.lang.NullPointerException
at opencv123.Opencv123.main(Opencv123.java:23)
meu código ta assim:
[code] package opencv123;
import com.googlecode.javacv.JavaCvErrorCallback;
import static com.googlecode.javacv.cpp.opencv_core.;
import static com.googlecode.javacv.cpp.opencv_highgui.;
import static com.googlecode.javacv.cpp.opencv_imgproc.CV_BGR2GRAY;
import static com.googlecode.javacv.cpp.opencv_imgproc.cvCvtColor;
import com.googlecode.javacv.cpp.opencv_objdetect.CvHaarClassifierCascade;
import static com.googlecode.javacv.cpp.opencv_objdetect.cvHaarDetectObjects;
public class Opencv123 {
private static final String CASCADE_FILE = “haarcascade_frontalface_alt.xml”;
public static void main(String[] args) throws Exception {
new JavaCvErrorCallback().hashCode();
IplImage originalImage = cvLoadImage(args[0], 1);
IplImage grayImage2 = new IplImage(IplImage.create(originalImage.width(),originalImage.height(), IPL_DEPTH_8U, 1));
cvCvtColor(originalImage, grayImage2, CV_BGR2GRAY);
CvMemStorage storage = CvMemStorage.create();
CvHaarClassifierCascade cascade = new CvHaarClassifierCascade(cvLoadImage(CASCADE_FILE));
CvSeq faces = cvHaarDetectObjects(grayImage2, cascade, storage, 1.1, 1, 0);
for (int i = 0; i < faces.total();i++) {
CvRect r = new CvRect(cvGetSeqElem(faces, i));
cvRectangle(originalImage, cvPoint(r.x(), r.y()),
cvPoint(r.x() + r.width(), r.y() + r.height()), CvScalar.YELLOW, 1, CV_AA, 0);
}
cvSaveImage(args[1], originalImage);
}
}
[/code]
nunca trabalhei com JavaCV antes, estou seguindo alguns tutoriais, os outros erros eu consegui tirar mais esse persiste…