1 package org.opencv.android;
3 import org.opencv.core.Core;
5 import java.util.StringTokenizer;
6 import android.util.Log;
10 public static boolean initOpenCV(boolean InitCuda)
17 loadLibrary("cudart");
22 loadLibrary("cublas");
25 Log.d(TAG, "Trying to get library list");
29 System.loadLibrary("opencv_info");
30 libs = getLibraryList();
32 catch(UnsatisfiedLinkError e)
34 Log.e(TAG, "OpenCV error: Cannot load info library for OpenCV");
37 Log.d(TAG, "Library list: \"" + libs + "\"");
38 Log.d(TAG, "First attempt to load libs");
39 if (initOpenCVLibs(libs))
41 Log.d(TAG, "First attempt to load libs is OK");
42 String eol = System.getProperty("line.separator");
43 for (String str : Core.getBuildInformation().split(eol))
50 Log.d(TAG, "First attempt to load libs fails");
57 private static boolean loadLibrary(String Name)
59 boolean result = true;
61 Log.d(TAG, "Trying to load library " + Name);
64 System.loadLibrary(Name);
65 Log.d(TAG, "Library " + Name + " loaded");
67 catch(UnsatisfiedLinkError e)
69 Log.d(TAG, "Cannot load library \"" + Name + "\"");
77 private static boolean initOpenCVLibs(String Libs)
79 Log.d(TAG, "Trying to init OpenCV libs");
81 boolean result = true;
83 if ((null != Libs) && (Libs.length() != 0))
85 Log.d(TAG, "Trying to load libs by dependency list");
86 StringTokenizer splitter = new StringTokenizer(Libs, ";");
87 while(splitter.hasMoreTokens())
89 result &= loadLibrary(splitter.nextToken());
94 // If dependencies list is not defined or empty.
95 result = loadLibrary("opencv_java4");
101 private static final String TAG = "OpenCV/StaticHelper";
103 private static native String getLibraryList();