Ask Your Question

Can't find any faces on pictures

asked 2016-07-28 02:40:54 -0500

KorobOK gravatar image

I'm java programmer and I'm using opencv-2413.jar library.

ByteArrayOutputStream streamBA = new ByteArrayOutputStream();
//wi - is instance of WritableImage (images with faces are big: 720p and 1080p, and correct. I save it to disk and they opens well)
RenderedImage ri = SwingFXUtils.fromFXImage(wi, null);
ImageIO.write(ri, "jpg", streamBA);
byte[] img = streamBA.toByteArray();
MatOfByte rawImage = new MatOfByte(img);
Mat image = Highgui.imdecode(rawImage, Highgui.CV_LOAD_IMAGE_GRAYSCALE);
MatOfRect faces = new MatOfRect();
// I'm trying different cascades, the result is the same
CascadeClassifier faceDetector = new CascadeClassifier(<path/to/cascade>);
faceDetector.detectMultiScale(image, faces);
System.out.println(faces.elemSize() + "\n");
for (Rect r : faces.toList()) {
    System.out.println(r.x + " " + r.y);

Everything is going ok, but faces.elemSize() is always 0. What I'm doing wrong?

edit retag flag offensive close merge delete



it's most likely the Cascade. please check if it was loaded correctly

can you tell us the path you're using ?

berak gravatar imageberak ( 2016-07-28 04:35:10 -0500 )edit

String pathToCascade = getClass().getResource("/haarcascades/haarcascade_frontalface_alt2.xml").getPath();. And I tried simple C:\haarcascade_frontalface_alt2.xml, the result is the same.

KorobOK gravatar imageKorobOK ( 2016-07-28 18:14:06 -0500 )edit

try C:/haarcascade_frontalface_alt2.xml or any absolute path with forward slashes. the getResource() thing is a broken idea on win.

berak gravatar imageberak ( 2016-07-28 20:29:39 -0500 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2016-07-31 23:24:11 -0500

KorobOK gravatar image

updated 2016-07-31 23:24:32 -0500

The problem was in Cyrillic symbols in path. I remove these and replace my code by following:

String pathToCascade = Paths.get(
faceDetector = new CascadeClassifier(pathToCascade);

Thanks to @Barek

edit flag offensive delete link more
Login/Signup to Answer

Question Tools

1 follower


Asked: 2016-07-28 02:40:29 -0500

Seen: 86 times

Last updated: Jul 31 '16