【发布时间】:2011-10-25 23:33:03
【问题描述】:
我在 Android 中将图像加载为位图(配置:ARGB_8888)。
如何使用 JNI 将其转换为 Native OpenCV(C++) 中的 cv::Mat?
【问题讨论】:
标签: android opencv android-ndk
我在 Android 中将图像加载为位图(配置:ARGB_8888)。
如何使用 JNI 将其转换为 Native OpenCV(C++) 中的 cv::Mat?
【问题讨论】:
标签: android opencv android-ndk
在 opencv android 库中有一种方法可以做到这一点。 检查 org.opencv.android 包。 在 Utils.java 中有 bitmapToMat 方法,它是使用自己的 Native Code 实现的。然后你可以通过 Mat.getNativeObjAddr() 将 Mat 传递给 jni。
【讨论】:
如果您安装了适用于 android 的 opencv 库,请按照 isHwang 所说的进行操作。
示例:
// MatToBitmap:
Bitmap bmp = Bitmap.createBitmap(640, 480, Bitmap.Config.ARGB_8888);
android.MatToBitmap(mat, bmp);
// BitmapToMat
mat = android.BitmapToMat(bmp);
【讨论】: