La quinta técnica de procesamiento de imágenes: una imagen de escala de grises (imagen IR) convertida en una pantalla de vista previa RGB parece resolver macular punto / problema

I. Antecedentes

Hay un diagrama de IR ( radiación infrarroja del infrarrojo ), necesidad que se mostrará en la página, formato de imagen IR es GRAY8 , es decir, en escala de grises de 8 bits .

formatos de imagen de mapa de bits utilizados en Android es ARGB_8888, es necesario girar ARGB figura escala de grises, 8 bits por canal.

, El fenómeno segundo problema

Transcodificación idea es muy simple, es un int indica un píxel, es exactamente 4 * 8 = 32 bits.
A continuación, el valor de cada bit de valores de gris son iguales, la transparencia puede ser 0xFF.

   

 Canvas canvas = mCameraView.getHolder().lockCanvas();
    // draw ir
    int[] pixels = new int[mImageWidth * mImageHeight];
    for (int i = 0; i < pixels.length; i++) {
        int gray = iru8[i];
        pixels[i] = (0XFF000000) | (gray << 16) | (gray << 8) | gray;
    }
    Bitmap bitmap = Bitmap.createBitmap(pixels, mImageWidth, mImageHeight, Bitmap.Config.ARGB_8888);
    canvas.drawBitmap(bitmap, mIRMatrix, null);


A continuación, los problemas surgen cuando esta vista previa es la siguiente tabla, hubo existe un punto claro:

Aquí Insertar imagen Descripción
En tercer lugar, el problema se resuelve

En primer lugar, el fenómeno anterior es, sin duda no es normal, un vistazo más de cerca el código, int gris = iru8 [i] De hecho, este paso es problemática debido a que el rango de bytes entre -128 a 127, si es negativo, cuando se asigna a un int gran problema (después de todo, no hay java sin firmar) después de la operación de cambio se produce un error.

Así tenemos que el cambio de la siguiente manera:

   

int gray = iru8[i] & 0xFF;



Y a continuación, ejecutar la pantalla a la normalidad:

Aquí Insertar imagen Descripción
Un pequeño problema, prestar atención a prestar atención a la operación de cambio debe ser muy cuidadoso.

Publicados 377 artículos originales · ganado elogios 145 · vistas 210 000 +

Supongo que te gusta

Origin blog.csdn.net/Windgs_YF/article/details/104610985
Recomendado
Clasificación