如何将经过培训的SVM从资产/原始(Android)传递到JNI并进行加载

时间:2018-11-29 14:15:31

标签: android opencv java-native-interface svm native

正在从资产中加载文件,如下所示。

String pathText = null;
            try {
                InputStream is =  getAssets().open("BestSVMModel_10Class.yml");
                pathText = convertStreamToString(is);
            } catch (IOException e) {
                e.printStackTrace();
            }

在JNI中,从路径检索和加载SVM文件

Ptr<SVM> svmNew = SVM::create();
Ptr<SVM> svm = Algorithm::read<SVM>(path);

正在运行以下应用程序本机错误日志

  

E / cv :: error():OpenCV(3.4.3)错误:在无效cvMemStorageAlloc(CvMemStorage,size_t),文件/ build中,参数值之一超出范围(请求的大小为负数或太大) /3_4_pack-android/opencv/modules/core/src/datastructs.cpp,第338行

0 个答案:

没有答案