Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Mejora de imagen con poca luz

Las imágenes capturadas en escenas al aire libre pueden ser altamente degradadas debido a malas condiciones de iluminación. Estas imágenes pueden tener rangos dinámicos bajos con altos niveles de ruido que afectan el rendimiento general de los algoritmos de visión por ordenador. Para que los algoritmos de visión artificial sean robustos en condiciones de poca luz, utilice la mejora de la imagen con poca luz para mejorar la visibilidad de una imagen. El histograma de la inversión en píxeles de imágenes con poca luz o imágenes HDR es muy similar al histograma de imágenes brumosa. Por lo tanto, puede utilizar técnicas de eliminación de neblina para mejorar las imágenes con poca luz.

El uso de técnicas de eliminación de neblina para mejorar las imágenes con poca luz comprende tres pasos:

  • Paso 1: Invierta la imagen de poca luz.

  • Paso 2: Aplique el algoritmo de eliminación de neblina a la imagen invertida de poca luz.

  • Paso 3: Invierta la imagen mejorada.

Mejore la imagen con poca luz usando el algoritmo de Dehazing

Importe una imagen RGB capturada con poca luz.

A = imread('lowlight_11.jpg'); figure, imshow(A);

Invierta la imagen y observe cómo las áreas de poca luz en la imagen original aparecen nebulosa.

AInv = imcomplement(A); figure, imshow(AInv);

Reduzca la neblina utilizando la función.imreducehaze

BInv = imreducehaze(AInv); figure, imshow(BInv);

Invierta los resultados para obtener la imagen mejorada.

B = imcomplement(BInv);

Visualice la imagen original y las imágenes mejoradas, una al lado de la otra.

figure, montage({A, B});

Mejorar los resultados utilizando parámetros opcionalesimreducehaze

Para obtener un mejor resultado, vuelva a llamar a la imagen invertida, esta vez especificando algunos parámetros opcionales.imreducehaze

BInv = imreducehaze(AInv, 'Method','approx','ContrastEnhancement','boost'); BImp = imcomplement(BInv); figure, montage({A, BImp});

Otro ejemplo de mejora de una imagen mal iluminada

Importe una imagen RGB capturada con poca luz.

A = imread('lowlight_21.jpg');

Invierta la imagen.

AInv = imcomplement(A);

Aplicar el algoritmo de deshazing.

BInv = imreducehaze(AInv, 'ContrastEnhancement', 'none');

Invierta los resultados.

B = imcomplement(BInv);

Visualice la imagen original y las imágenes mejoradas, una al lado de la otra.

figure, montage({A, B});

Reduce Color Distortion by using a Different Color Space

Convierta la imagen de entrada del espacio de color RGB al espacio de color L * a * b *.

Lab = rgb2lab(A);

Invierta la imagen L * a * b *.

LInv = imcomplement(Lab(:,:,1) ./ 100);

Dehaze la imagen invertida utilizando la función.imreducehaze

LEnh = imcomplement(imreducehaze(LInv,'ContrastEnhancement','none'));

Aumente la saturación.

LabEnh(:,:,1)   = LEnh .* 100; LabEnh(:,:,2:3) = Lab(:,:,2:3) * 2; % Increase saturation

Convierta la imagen de nuevo a una imagen RGB y visualice el original y la imagen mejorada, en paralelo.

AEnh = lab2rgb(LabEnh); figure, montage({A, AEnh});

Mejore los resultados utilizando denoising

Las imágenes con poca luz pueden tener altos niveles de ruido. La mejora de las imágenes con poca luz puede aumentar este nivel de ruido. La eliminación de ruido puede ser un paso de post-procesamiento útil.

Utilice la función para eliminar el ruido de la imagen mejorada.imguidedfilter

B = imguidedfilter(BImp); figure, montage({BImp, B});

Mapa de iluminación de estimación

Importe una imagen RGB capturada con poca luz.

A = imread('lowlight_21.jpg');

Invierta la imagen.

AInv = imcomplement(A);

Aplique el algoritmo de deshazing a la imagen.

[BInv, TInv] = imreducehaze(AInv, 'Method', 'approxdcp', 'ContrastEnhancement', 'none');

Invierta la imagen mejorada.

T = imcomplement(TInv);

Visualice la imagen original junto al mapa de iluminación estimado en color falso.

figure, subplot(1,2,1); imshow(A), title('Lowlight Image'); subplot(1,2,2); imshow(T), title('Illumination Map'); colormap(gca, hot(256));

Limitaciones

Este método puede perder algunos detalles o mejorarse debido a la mala adaptabilidad del canal oscuro en condiciones de poca luz.

Referencias

Dong, Xuan, et al. "Algoritmo rápido y eficiente para la mejora de vídeo de baja iluminación." Multimedia y Expo (ICME), 2011 Conferencia Internacional de IEEE sobre. IEEE, 2011.

Referencias

[1] Dong, X., G. Wang, Y. Pang, W. Li, J. Wen, W. Meng, and Y. Lu. "Fast efficient algorithm for enhancement of low lighting video." Proceedings of IEEE® International Conference on Multimedia and Expo (ICME). 2011, pp. 1–6.

Consulte también

| | | |