Setting OpenCV di Android Studio – sangatlah mudah, ikuti saja langkah-langkah berikut, agar kita seragam dalam pengaturannya, disini menggunakan android studio dengan versi 4.1.3, anggap saja kalian sudah melakukan instalasi android dengan baik.
serta sudah download opencv-android https://sourceforge.net/projects/opencvlibrary/files/opencv-android/, saya menggunakan opencv-android versi 3.4.1
Pastikan kalian sudah melakukan ekstraksi di C:/
Buatlah Project Android Terlebih dahulu
Contents
Kalian buatlah project android terlebih dahulu
Import Modul
Selanjutnya adalah melakukan import modul opencv-android kedalam project
maka akan tampilkan kotak dialog untuk mencari lokasi folder opencv-android
seperti yang sebelumnya, kita sudah meletakan di C:/
Maka akan tampil kotak dialog dengan informasi modul name nya
Langsung ok saja untuk melakukan konfirmasi
dan akan menampilkan error setelah itu, karena build.gradle tidak cocok versinya, karena sudah usang SDK nya
tapi tenang saja, kita akan edit terlebih dahulu, karena saya menggunakan android dengan SDK 30, maka kita perlu setting berikut
Editlah menjadi berikut, sesuai kebutuhan target SDK yang akan kalian build di android
Tunggu saja sebentar agar gradle melakukan update kebutuhannya (pastikan komputer dalam kondisi online)
Setting Modul
Langkah selanjutnya open setting modul dengan cara berikut
Ikuti langkah berikut
Klik simbol + agar tampil Module Dependecies
Akan tampil kotak dialog berikut, OK saja
Setting JNI Native Interface
Kita butuh native library yang akan terbuild bersama-sama dengan aplikasi android APK, oleh karena itu kita lakukan langkah berikut
Copy pastekkan folder libs kedalam project android
Seperti berikut,
silahkan untuk rename menjadi berikut jnilibs
Project Android
Sekarang kita coba saja untuk menggunakan opencv, cara yang paling mudah yaitu ketika kita panggil Mat, silahkan edit MainActivity.java
package com.example.tbspro; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.widget.TextView; import org.opencv.android.OpenCVLoader; import org.opencv.android.BaseLoaderCallback; import org.opencv.android.LoaderCallbackInterface; import org.opencv.core.CvType; import org.opencv.core.Mat; import org.w3c.dom.Text; public class MainActivity extends Activity { Mat mat; private static final String TAG = "MainActivity"; TextView text; private BaseLoaderCallback mOpenCVCallBack = new BaseLoaderCallback(this) { @Override public void onManagerConnected(int status){ switch (status){ case LoaderCallbackInterface.SUCCESS: { Log.i(TAG, "OpenCV Loaded Sucessfully"); }break; default: { super.onManagerConnected(status); }break; } } }; @Override protected void onCreate(Bundle savedInstanceState) { if(!OpenCVLoader.initDebug()) { OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_1_0, this, mOpenCVCallBack); }else{ Log.i("OpenCV", "OpenCV library found inside package. Using it!"); mOpenCVCallBack.onManagerConnected(LoaderCallbackInterface.SUCCESS); } super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); text = (TextView) findViewById(R.id.welcome); mat = new Mat (100,100, CvType.CV_8UC4); text.setText("berhasil loading"); } }
Jika tidak ada masalah, dan tampil “berhasil loading” berarti opencv-android sudah bisa kalian gunakan, cara kerjanya sama dengan opencv java yaitu menggunakan JNI sebagai interface nya!