나는 얼굴 인식을 위해 opencv와 java를 사용하고 있으며,이 "JNI2OPENCV"파일을 찾았습니다 ....하지만 어떻게 작동하게 만드는지 혼란 스럽습니다. 아무도 도와 줄 수 있습니까?OpenCV를 JNI로 작동시키는 법?
http://img519.imageshack.us/img519/4803/askaj.jpg
다음은 FaceDetection.java에게 있습니다
class JNIOpenCV {
static {
System.loadLibrary("JNI2OpenCV");
}
public native int[] detectFace(int minFaceWidth, int minFaceHeight, String cascade, String filename);
}
public class FaceDetection {
private JNIOpenCV myJNIOpenCV;
private FaceDetection myFaceDetection;
public FaceDetection() {
myJNIOpenCV = new JNIOpenCV();
String filename = "lena.jpg";
String cascade = "haarcascade_frontalface_alt.xml";
int[] detectedFaces = myJNIOpenCV.detectFace(40, 40, cascade, filename);
int numFaces = detectedFaces.length/4;
System.out.println("numFaces = " + numFaces);
for (int i = 0; i < numFaces; i++) {
System.out.println("Face " + i + ": " + detectedFaces[4 * i + 0] + " " + detectedFaces[4 * i + 1] + " " + detectedFaces[4 * i + 2] + " " + detectedFaces[4 * i + 3]);
}
}
public static void main(String args[]) {
FaceDetection myFaceDetection = new FaceDetection();
}
}
내가 넷빈즈에이 일을 할 수있는 방법 사람이 말해 줄 수? 나는 Google을 시도했으나이 특정 주제에 대한 도움은 매우 중요합니다.
나는 netbeans 프로젝트에서 Llibrary로 전체 폴더를 추가했고 whe는 내가 followig wrroes를 얻을 파일을 실행하려고합니다.
Exception in thread "main" java.lang.UnsatisfiedLinkError: FaceDetection.JNIOpenCV.detectFace(IILjava/lang/String;Ljava/lang/String;)[I at FaceDetection.JNIOpenCV.detectFace(Native Method) at FaceDetection.FaceDetection.<init>(FaceDetection.java:19) at FaceDetection.FaceDetection.main(FaceDetection.java:29) Java Result: 1 BUILD SUCCESSFUL (total time: 2 seconds)
은 누구도 날이 작동하는 정확한 방법을 알 수 있습니까? 내가해야하는 일처럼?
안녕하세요, 답장을 보내 주셔서 감사합니다 ......하지만 java.library.path를 확인했습니다 ... ... JNI2OpenCV.dll을 종속 워커에 열었습니다. 그 점에 대해 많은 도움을 줄 수 있습니까? http://img221.imageshack.us/img221/5042/helpf.jpg – user293252
여기에 내가 추가하고 java.library.path을 발견 'java.library.path = C : \ 프로그램 파일 \ 자바 \ jdk1. C : \ WINDOWS \ system32 \ WBEM \ 6.0 \ 18 \ bin; C : \ WINDOWS \ system32 \ C : \ WINDOWS \ system32 C : \ Program Files \ Intel \ DMIX, C : \ OpenCV2.0 \ bin, C : \ Sun \ SDK \ jdk \ bin, C : \ Program Files \ QuickTime \ QTSystem \ MySQL 서버 5.1 \ bin; C : \ Sun \ SDK \ bin ' – user293252
종속성 워커는 좋게 보입니다. MSJAVA와 MPR은 일반적으로 오류가 있으므로 다른 모든 것이 보이지 않으면 괜찮습니다. System.loadLibrary()는 위에있는 경로에서 라이브러리를 찾고 dll이 없기 때문에로드되지 않습니다. 이동하거나 System.load()를 사용하여 DLL의 전체 경로와 파일 이름 (및 확장명)을 예상 할 수 있습니다. – ianium