我想通过 jni 将位图从我的 android 类传递到我的原生 c++ 类,然后在另一端执行 opencv 处理。
我不明白如何使用getPixels之类的东西准备数据以进入byte[]数组。我需要考虑RGB吗?
您必须将
Bitmap
转换为Mat
。 org.opencv.android.Utils
类具有实用程序转换方法。它采用Bitmap
作为类型ARGB_8888
或RGB_565
的参数。
import org.opencv.android.Utils;
private void convertToMat(Bitmap bitmap){
Mat mat = new Mat();
Bitmap bmp32 = bitmap.copy(Bitmap.Config.ARGB_8888, true);
Utils.bitmapToMat(bmp32, mat);
}
这只是一种方式.查看此线程以获取更多信息。感谢