2017-04-01 5 views
0

私は、opencv open cv 2.4.9をWindowsで使用して、顔検出のプロジェクトを1つ作成しました。今私はubuntuのマシン上で瓶を実行する必要があります。私は失敗する。Open cv javaプロジェクトのためのrunnable jarを準備するには?

Caused by: java.lang.UnsatisfiedLinkError: no opencv_java249 in java.library.path 
     at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1889) 
     at java.lang.Runtime.loadLibrary0(Runtime.java:849) 
     at java.lang.System.loadLibrary(System.java:1088) 

私の主な関心事は、ubuntuのopencv-249依存関係を持つパッケージ(runnable jar)を準備する方法ですか?

答えて

0

以下のようにして、実用的OpenCVのlibがロードする必要があります。プログラムの起動時に、このメソッドを実行することができます

// get the model 
String model = System.getProperty("sun.arch.data.model"); 
// the path the .dll lib location 
String libraryPath = "C:/opencv/build/java/x86/"; 
// check for if system is 64 or 32 
if(model.equals("64")) { 
    libraryPath = "C:/opencv/build/java/x64/"; 
} 
// set the path 
System.setProperty("java.library.path", libraryPath); 
Field sysPath = ClassLoader.class.getDeclaredField("sys_paths"); 
sysPath.setAccessible(true); 
sysPath.set(null, null); 
// load the lib 
System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 

+0

とC:/ opencv/build/java/x64/referesはどちらのファイルですか? .dllまたは.so?もしそうなら、そのプロセスは何か。 – bajrangi

+0

私はすでに 'C:/ opencv/build/java/x64 /'パスにOpenCVの.dllファイルへのパスを持っていますので、OpenCVを展開すると.dllファイルのパスはこの 'opencv /ビルド/ java/x64/'と' opencv/build/java/x86/'のようになりますので、Cドライブにopencvフォルダを置くことができます:' C:/ opencv/build/java/x64/' 64ビットシステム、C:/ opencv/build/java/x86/32ビットシステム用。 –

関連する問題