Witam mam na zadanie stworzyć aplikację, która robi zdjęcie, wyświetla, a następnie obrabia to zdjęcie za pomocą biblioteki OpenCV-co będzie dopiero napisane po tym jak uda się załadować zdjęcie do zmiennej typu Mat i właśnie tu się zatrzymałem. Mógłby mi ktoś poradzić co robię źle? Aplikacja wysypuje się przy linijce
mat= Highgui.imread(imgFile.getAbsolutePath(),Highgui.CV_LOAD_IMAGE_COLOR);
Kod funkcji:(bez poprzedniej linijki wszystko działa tak jak powinno)
public void wyborZdjecia(String nazwa) // funkcja obsługująca button
{
String nazwaO=nazwa; // poki co nie używane
imgFile= new File("/sdcard/Pictures/zdj-381817028.jpg");
Mat mat;
if(imgFile.exists())
{
Toast.makeText(getApplicationContext(),"dziaaała",Toast.LENGTH_LONG).show();
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
myImage.setImageBitmap(myBitmap);
mat= Highgui.imread(imgFile.getAbsolutePath(),Highgui.CV_LOAD_IMAGE_COLOR); // Tutaj zaczyna aplikacja się wysypywać
}
LogCat
11-11 12:03:45.663: D/dalvikvm(1550): GC_FOR_ALLOC freed 32K, 5% free 8378K/8775K, paused 12ms, total 12ms
11-11 12:03:45.753: D/dalvikvm(1550): GC_CONCURRENT freed <1K, 2% free 38377K/38791K, paused 12ms+4ms, total 27ms
11-11 12:03:46.243: W/dalvikvm(1550): No implementation found for native Lorg/opencv/highgui/Highgui;.imread_0:(Ljava/lang/String;I)J
11-11 12:03:46.243: W/dalvikvm(1550): threadid=1: thread exiting with uncaught exception (group=0x41e8c438)
11-11 12:03:46.243: E/AndroidRuntime(1550): FATAL EXCEPTION: main
11-11 12:03:46.243: E/AndroidRuntime(1550): java.lang.IllegalStateException: Could not execute method of the activity
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.view.View$1.onClick(View.java:3591)
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.view.View.performClick(View.java:4084)
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.view.View$PerformClick.run(View.java:16987)
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.os.Handler.handleCallback(Handler.java:615)
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.os.Handler.dispatchMessage(Handler.java:92)
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.os.Looper.loop(Looper.java:137)
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.app.ActivityThread.main(ActivityThread.java:4794)
11-11 12:03:46.243: E/AndroidRuntime(1550): at java.lang.reflect.Method.invokeNative(Native Method)
11-11 12:03:46.243: E/AndroidRuntime(1550): at java.lang.reflect.Method.invoke(Method.java:511)
11-11 12:03:46.243: E/AndroidRuntime(1550): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
11-11 12:03:46.243: E/AndroidRuntime(1550): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
11-11 12:03:46.243: E/AndroidRuntime(1550): at dalvik.system.NativeStart.main(Native Method)
11-11 12:03:46.243: E/AndroidRuntime(1550): Caused by: java.lang.reflect.InvocationTargetException
11-11 12:03:46.243: E/AndroidRuntime(1550): at java.lang.reflect.Method.invokeNative(Native Method)
11-11 12:03:46.243: E/AndroidRuntime(1550): at java.lang.reflect.Method.invoke(Method.java:511)
11-11 12:03:46.243: E/AndroidRuntime(1550): at android.view.View$1.onClick(View.java:3586)
11-11 12:03:46.243: E/AndroidRuntime(1550): ... 11 more
11-11 12:03:46.243: E/AndroidRuntime(1550): Caused by: java.lang.UnsatisfiedLinkError: Native method not found: org.opencv.highgui.Highgui.imread_0:(Ljava/lang/String;I)J
11-11 12:03:46.243: E/AndroidRuntime(1550): at org.opencv.highgui.Highgui.imread_0(Native Method)
11-11 12:03:46.243: E/AndroidRuntime(1550): at org.opencv.highgui.Highgui.imread(Highgui.java:309)
11-11 12:03:46.243: E/AndroidRuntime(1550): at com.example.start.MainActivity.wyborZdjecia(MainActivity.java:118)
11-11 12:03:46.243: E/AndroidRuntime(1550): at com.example.start.MainActivity.obslugaButtona(MainActivity.java:57)
11-11 12:03:46.243: E/AndroidRuntime(1550): ... 14 more