ARGB和BGRA
Bitmap转Mat转Bitmap
ARGB和BGRA
Android图片通道顺序为ARGB
Opencv图片通道顺序为BGRA
Bitmap转Mat转Bitmap
Java API使用,在导出Bitmap图之前,先将BGR转成RGB,就不会出现通道顺序混乱问题
private fun loadBitmap2Mat2BitmapByCv() {
//加载bitmap到mat
val mat = Utils.loadResource(this, R.drawable.test)
//导出bitmap前,将格式从BGR转RGB
Imgproc.cvtColor(mat, mat, Imgproc.COLOR_BGR2RGB)
//创建一个空的bitmap
val bitmap = Bitmap.createBitmap(mat.width(), mat.height(), Bitmap.Config.ARGB_4444)
//mat转bitmap
Utils.matToBitmap(mat, bitmap)
iv3.setImageBitmap(bitmap)
}
Java代码
//加载图片资源
val bitmap = BitmapFactory.decodeResource(resources, R.drawable.test)
//声明一个数组保存图片数据,长度即为图片的宽x高
val data = IntArray(bitmap.width * bitmap.height)
//