Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java OpenCV级联分类器错误_Java_Opencv_Face Detection - Fatal编程技术网

Java OpenCV级联分类器错误

Java OpenCV级联分类器错误,java,opencv,face-detection,Java,Opencv,Face Detection,我试图通过网络摄像头进行人脸检测,但我遇到了一个错误,一个错误 在做了一些测试之后,我发现这行代码产生了错误 CascadeClassifier face_cascade = new CascadeClassifier(); 我犯的错误是 Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0()J at o

我试图通过网络摄像头进行人脸检测,但我遇到了一个错误,一个错误

在做了一些测试之后,我发现这行代码产生了错误

CascadeClassifier face_cascade = new CascadeClassifier();
我犯的错误是

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0()J
    at org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0(Native Method)
    at org.opencv.objdetect.CascadeClassifier.<init>(CascadeClassifier.java:38)
    at CamCapture.main(CamCapture.java:24)
线程“main”java.lang.unsatifiedLinkError中的异常:org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0()J 位于org.opencv.objdetect.CascadeClassifier.CascadeClassifier_0(本机方法) 位于org.opencv.objdetect.CascadeClassifier(CascadeClassifier.java:38) 位于CamCapture.main(CamCapture.java:24) 有人知道怎么解决这个问题吗



我终于找到了答案

我应该在使用级联分类器之前加载库。 所以只要把这个代码

System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

在cascadeclassifier之前。

尝试在BaseLoaderCallBack中初始化cascadeclassifier对象。在初始化CasCadeClassifier对象之前,需要完全加载OpenCV

将其放置在onCreate()或onResume()中:

将baseCallBack定义为:

private BaseLoaderCallback baseCallBack = new BaseLoaderCallback(this) {
    @Override
    public void onManagerConnected(int status) {
        if (status == SUCCESS) {
            try {
                initClassifiers(); // initialise here
            } catch (IOException e) {
                e.printStackTrace();
            }
            Log.d("OpenCVLoad", "OpenCV Loaded");
        } else {
            super.onManagerConnected(status);
        }
    }
};

你可以把答案当作真实的答案来接受,我相信,这样问题就可以解决了。它对我不起作用…线程“main”中的异常java.lang.unsatifiedlinkerror:org.opencv.objdetect.CascadeClassifier.CascadeClassifier_1()J在org.opencv.objdetect.CascadeClassifier.CascadeClassifier_1(本机方法)
private BaseLoaderCallback baseCallBack = new BaseLoaderCallback(this) {
    @Override
    public void onManagerConnected(int status) {
        if (status == SUCCESS) {
            try {
                initClassifiers(); // initialise here
            } catch (IOException e) {
                e.printStackTrace();
            }
            Log.d("OpenCVLoad", "OpenCV Loaded");
        } else {
            super.onManagerConnected(status);
        }
    }
};