Histogramas II

histogramas
Este post faz parte da série Histogramas. Leia também os outros posts da série:

Introdução

 

No post anterior foi explicado  brevemente o que são histogramas e como eles podem ser usados em tratamento de imagens. Algumas aplicações onde histogramas são usados: aprimoramento de imagens, classificação de texturas, segmentação de imagens, etc. Neste post mostraremos o seu uso mais comum em aprimoramento de imagens pela técnica conhecida como equalização global de histogramas.

 

 

Equalização de histogramas

 

Sabendo-se que um histograma fornece uma ideia geral de como é uma imagem, pode-se então a partir dela tentar equalizar uma imagem que aparentemente esteja escura, pixels com valores baixos no histograma, ou muito clara,  pixels com valores elevados no histograma. A ideia é equalizar os valores dos pixels de forma que seus níveis estejam uniformemente espalhados em todo os valores possíveis, tendo como resultado uma melhora no contraste da imagem. A figura 1 exemplifica a transformação ideal de um histograma.

 

hist_eq_example
Figura 1: transformação ideal de um histograma.

 

Olhando o histograma da figura 2, nota-se que os pixels possuem valores abaixo de 90, o que caracteriza uma imagem escura.

 

histog_dark
Figura 2 

 

Para se gerar o histograma da imagem acima foi usado o seguinte comando no octave:

 

img = imread('lena_dark.png');
h = imhist(img);
plot(h)

 

A figura 3 mostra o resultado e o histograma associado à imagem após a equalização do histograma da figura 2:

 

lena_eq_from_dark
Figura 3

 

A figura 3 foi gerada a partir dos seguintes comandos:

 

img = imread('lena_dark.png');
img = double(img);
img = img ./ max(img(:));
[x y] = size(img);
J = histeq(img, x);
imshow(J);
I = imhist(J);
plot(I);

 

Pode-se também equalizar o histograma da imagem pálida usada no post anterior tendo como resultado:

 

lena_eq_from_bright
Figura 4

 

Apesar das imagens serem parecidas, nota-se que o histograma da figura 3 e 4 são diferentes, porém ambos possuem os pixels com valores razoavelmente espalhados entre 0 e 255.

 

Na figura 5 abaixo comparamos a foto da Lena original em tons de cinza com sua imagem após o tratamento de equalização de histograma e podemos observar que há uma melhora no contraste da foto permitindo perceber maiores detalhes.

 

lena_gray_eq
Figura 5 

 

Conclusão

 

A técnica de equalização de histogramas é muito útil para melhorar o contraste de uma imagem. Uma aplicação prática é em reconhecimento de impressões digitais. Vale lembrar que a técnica apresentada possui certas limitações e algumas extensões e variações existem, como casamento de histograma onde se molda o histograma de acordo com a necessidade e equalização local de histogramas, que ao invés de equalizar o histograma de toda a imagem, equaliza apenas uma parte que necessita de tratamento.

 

 

Referências

https://www.embarcados.com.br/histogramas/

https://en.wikipedia.org/wiki/Histogram_equalization

http://www.di.ufpe.br/~if143/projetos/99_2/equali/Equalizacao.html

Outros artigos da série

<< Histogramas
Este post faz da série Histogramas. Leia também os outros posts da série:
NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Marcelo Jo
Engenheiro eletrônico com 10 anos de experiência em sistemas embarcados, pós graduado em redes de computadores e atualmente cursando mestrado em sistemas de visão por computador na universidade Laval no Canadá. Compartilha seu conhecimento neste portal quando tem tempo livre e quando não está curtindo a vida com sua mulher e os 3 filhos.

Deixe um comentário

avatar
 
  Notificações  
Notificar