Bitmap to Mat devuelve los colores equivocados

Entonces hago un bitmap desde un blob con el siguiente código:

byte[] blob = contact.getMP();
ByteArrayInputStream inputStream = new ByteArrayInputStream(blob);
Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
Bitmap scalen = Bitmap.createScaledBitmap(bitmap, 320, 240, false);

Y devuelve la siguiente salida, que es buena.

Luego hago lo siguiente para convertir el mapa de bits en un tapete, pero luego mis colores simplemente cambian ...

//Mat ImageMat = new Mat();
Mat ImageMat = new Mat(320, 240, CvType.CV_32F);
Utils.bitmapToMat(scalen, ImageMat);

No tengo ni idea de por qué, ni otra forma de convertir el mapa de bits en un Mat. ¿Qué está mal?

Respuestas a la pregunta(1)

Su respuesta a la pregunta