Reputation: 4813
I have an Image loaded as a Bitmap(config: ARGB_8888) in Android.
How do I convert it into a cv::Mat in Native OpenCV(C++) using JNI?
Upvotes: 0
Views: 2818
Reputation: 260
If u have the opencv libraries for android installed then do it like isHwang has said.
Example:
// MatToBitmap:
Bitmap bmp = Bitmap.createBitmap(640, 480, Bitmap.Config.ARGB_8888);
android.MatToBitmap(mat, bmp);
// BitmapToMat
mat = android.BitmapToMat(bmp);
Upvotes: 1
Reputation: 180
There is a method to do that in the opencv android library. Check org.opencv.android package. In the Utils.java, there is bitmapToMat method, and it is implmented using its own Native Code. Then you can pass the Mat to jni by Mat.getNativeObjAddr().
Upvotes: 3