トップページ > プログラム > 2015年09月26日 > E4DrPgdJ

書き込み順位&時間帯一覧

13 位/188 ID中時間01234567891011121314151617181920212223Total
書き込み数3000000000000000000000104



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
390
【Intel】OpenCV総合スレ 5画素目【画像処理】

書き込みレス一覧

【Intel】OpenCV総合スレ 5画素目【画像処理】
390 :デフォルトの名無しさん[sage]:2015/09/26(土) 00:05:38.71 ID:E4DrPgdJ
opencv 3.0
windows7
eclipse
言語 java

趣味でopencvを数日前から弄っています。顔認識を試してみたくて
https://blog.openshift.com/day-12-opencv-face-detection-for-java-developers/
ここのサイトを見ながらコツコツやっています。(情報が古いですが、探り探り)

で、ビルドしたら↓の行で例外が出ました。
CascadeClassifier faceDetector = new CascadeClassifier(FaceDetector.class.getResource("haarcascade_frontalface_alt.xml").getPath());

エラーメッセージ―――――――
Exception in thread "main" java.lang.NullPointerException
at opencv.FaceDetector.main(FaceDetector.java:17)
―――――――
haarcascade_frontalface_alt.xmlのパスが取得できなかったと思われるのですが、そもそも
haarcascade_frontalface_alt.xmlをどこに置いておくべきでしょうか?あと、認識用の画像も。

プロジェクト内ならどこでもおいてよいかと思っていたのですが…いろんなところに置き換えてみても例外が消えません。
対処法をご存知の方、お教えいただけたら幸いです。
【Intel】OpenCV総合スレ 5画素目【画像処理】
391 :390[sage]:2015/09/26(土) 00:06:24.36 ID:E4DrPgdJ
ちなみにソースコードはこうです。

――――――ソース
package opencv;
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.MatOfRect;
import org.opencv.core.Point;
import org.opencv.core.Rect;
import org.opencv.core.Scalar;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.objdetect.CascadeClassifier;
import org.opencv.imgproc.Imgproc;

public class FaceDetector {
public static void main(String[] args){
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
System.out.println("Running FaceDetector");

CascadeClassifier faceDetector = new CascadeClassifier(FaceDetector.class.getResource("haarcascade_frontalface_alt.xml").getPath());
Mat image= Imgcodecs.imread(FaceDetector.class.getResource("mako.jpg").getPath());
MatOfRect faceDetections =new MatOfRect();
faceDetector.detectMultiScale(image, faceDetections);
System.out.println(String.format("Detected %s faces", faceDetections.toArray().length));
【Intel】OpenCV総合スレ 5画素目【画像処理】
392 :390[sage]:2015/09/26(土) 00:06:57.58 ID:E4DrPgdJ
for(Rect rect :faceDetections.toArray()){
Imgproc.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x + rect.width,rect.y + rect.height), new Scalar(0,255,0));
}
String filename="output.png";
System.out.println(String.format("Writing %s", filename));
Imgcodecs.imwrite(filename, image);
}
}

――――――ソース終わり
以上です。

よろしくお願いいたします。
【Intel】OpenCV総合スレ 5画素目【画像処理】
394 :390[sage]:2015/09/26(土) 22:13:06.51 ID:E4DrPgdJ
>>393
おお!
その手がありました。
やってみます。ありがとうございます!


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。