Processamento de Imagens
Técnicas de Realce
Equalização do Histograma
 Técnica de realce de imagem chamada de equalização de
histograma;
 Melhorar o contraste de uma imagem digital.
Equalização do Histograma
 Alargamento do contraste através da redistribuição dos
níveis de cinza de forma uniforme.
 Os tons mais claro e mais escuro da imagem são mapeados
para branco e preto, respectivamente, e os valores
intermediários são distribuídos pela escala de cinza.
Equalização do Histograma
 Aumentar o contraste geral na Imagem espalhando a distribuição
de níveis de cinza.
Exemplo:
Dada uma Imagem de n x m Pixels e “g” níveis de cinza.
No. Ideal de pixels para cada nível de cinza => I = (n x m)/g
 Cada nível de cinza tenha aproximadamente I representantes para cada
nível, tornando a imagem mais uniforme, e de alto contraste.
Equalização do Histograma
 O processo de equalização de histograma visa o aumento da
uniformidade da distribuição de níveis de cinza de uma
imagem, sendo usualmente empregado para realçar diferenças
de tonalidade na imagem e resultando, em diversas aplicações,
em um aumento significativo no nível de detalhes perceptíveis.
Equalização do Histograma
Equalização do Histograma
Equalização
Original, Equalizada (64)
Equalizada (256)
E seus histogramas
Original, Equalizada (64)
Equalizada (256)
Realce no domínio do espaço
 Realce no Domínio do Espaço: o processamento de realce é
realizado diretamente nos pixels da imagem.
 Realce no Domínio da Freqüência: o processamento de
realce é realizado sobre o espectro de freqüências da imagem,
utilizando a Transformada de Fourier.
Realce no domínio do espaço
 As transformações de níveis de cinza de uma imagem que
ocorrem diretamente sobre os seus pixels são chamadas de
realce no domínio espacial.
 Dentre as técnicas de realce no domínio do espaço
destacam-se dois tipos:
 realce ponto-a-ponto e
 realce por máscara.
Realce no domínio do espaço
 Realce Ponto-a-Ponto: a técnica é aplicada em cada pixel da
imagem, independentemente, sem considerar os valores dos
pixels vizinhos.
 Realce por Máscara: a técnica é aplicada em uma região de
pixels, onde se considera os valores dos pixels vizinhos que
estão contidos dentro da região definida de acordo com a
mascará aplicada. Envolve operação de convolução.
Operadores ponto a ponto
 Cada ponto na imagem de entrada gera um só ponto na
imagem de saída;
 Dentre as técnicas no domínio do espaço destacam-se realce
ponto-a-ponto (thresholding) negativo, realce por mascara.
Operadores ponto a ponto
 O Realce de Contraste e Brilho consiste em aplicar em todos
os pixels da imagem f(x,y) um operador linear do tipo:
g(x,y) = C. f(x,y) + B
onde,
C = contraste da imagem
B = Brilho da imagem
Operadores ponto a ponto
 Realce de contraste aplicado em uma imagem digital f de 8
bits e 256 níveis de cinza. A função aplicada é:
g(x,y) = 2. f(x,y) + 32
Note que na função houve saturação dos valores de pixel da imagem, ou seja, a função
g(x,y) produziu pixels com valores maiores que 255. A Figura mostra o resultado da
aplicação da função g(x,y) = 2. f(x,y) + 32, mostrada em uma imagem digital.
Resultado da aplicação da função g(x,y) = 2. f(x,y) + 32, em uma imagem digital.
Thresholding
 O realce por Thresholding é também conhecido como
limiarização ou binarização. Consiste em transformar todos os
pixels de uma imagem de modo que eles tenham apenas 2
valores, preto e branco (0 e 1).
 A função pode ser definida como:
g(x,y) = 0, se g(x,y) < T
g(x,y) = 1, se g(x,y) ≥ T
onde,
T = Threshold.
Exemplo de aplicação da função de thresholding em uma imagem digital.
Binarização (“Thresholding)
Binarização (“Thresholding)
Negativo
 O Negativo de uma imagem é obtido aplicando-se, em todos
os pixels da imagem f(x,y), um operador linear do tipo:
g(x,y) = W - f(x,y)
onde,
W = Maior nível de cinza possível na imagem (para
imagem de 8 bits / W = 255).
 Assim, todos os valores de pixel da imagem original são
“invertidos”.
Negativo
 Resultado da aplicação do Negativo, em uma imagem digital
de uma mamografia.
Exercícios Propostos
1. Explique a diferença entre processamento no domínio do
espaço e processamento no domínio da freqüência.
2. Quais os tipos mais comuns de operadores ponto-a-ponto?
3. O que é saturação de uma imagem? Quando isso pode
ocorrer?
Prática 2
T_1: Ler a imagem mammogram.bmp e gerar seu
histograma.
f = imread('mammogram.bmp');
imfinfo mammogram.bmp
imshow(f)
imhist(f)
E_1: Gerar o histograma anterior com 256 níveis de cinza em
outros formatos:
a) Formato de barras com 10 níveis de cinza função bar)
[counts,x] = imhist(f,26) % 26 foi usado para aproximar 256/10
níveis
bar(counts)
b) Formato de hastes a cada 10 píxels (função stem)
stem(counts)
%cada haste está espaçada 10 níveis de cinza
aproximadamente
c) Formato de uma curva contínua (função plot)
plot(x,counts)
E_2: Alterar os Histogramas gerados anteriormente:
a) Adicionando um título a cada histograma (função title)
title('Bar-Hist')
%title('Stem-Hist')
%, title('Plot-Hist')
b) Adicionando rótulos para os eixos (funções xlabel e ylabel)
xlabel('Níveis de Cinza'), ylabel('Contagem de Pixels')
c) Adicionando um texto na figura (função text)
text(10,8000,'Contagem de pixels da imagem em 26 níveis de cinza')
d) Expandindo a escala dos eixos horizontal e vertical (função axis)
axis([0 500 0 15000])
E_3: Mostrar graficamente a Função de Transformação de
Intensidades -T[f(x,y)] e a imagem gerada em cada um dos
exemplos.
g1 = imadjust(f, [0 1], [1 0])
imshow(g1);
g2 = imadjust(f, [0.5 0.75], [0 1])
imshow(g2);
g3 = imadjust(f, [ ], [ ], 2)
imshow(g3);
T_2: Equalizar a imagem polem.bmp dada na Figura 3.
g = imread('polem.bmp');
figure, imshow(g)
figure, imhist(g)
ylim('auto')
geq = histeq(g,256);
figure, imshow(geq)
figure, imhist(geq)
ylim('auto')
E_4: Fornecer para o Exemplo anterior (T_2) :
a) Os dois histogramas (equalizado e não)
b) As duas Imagens (equalizada e não)
c) Comentar sobre a função e a necessidade da equalização
d) Explicar o uso do comando ylin do MatLab
e) O que acontece se a imagem equalizada for equalizada
novamente?
E_5: Executar e explicar o código de MatLab abaixo tanto
relativo ao resultado obtido como a função de cada linha de
comando.
g = imread('polem.bmp');
Este comando faz a leitura da imagem, o (;) no final da linha
impede que os valores da mesma sejam mostrados na Janela de
Comando do MatLab.
figure, imshow(g)
Cria uma janela gráfica da imagem g.
figure,imhist(g)
Mostra o histograma de dados da imagem g. IMHIST(G) indica um histograma
para a imagem G da intensidade cujo número dos bits é especificado pelo tipo da
imagem. Se G for uma imagem da escala de cinza, IMHIST usa 256 bits como
um valor default. Se G for uma imagem binária, IMHIST usa somente 2 bits.
ylim('auto')
limita o eixo y de forma padrão.
hnorm = imhist(g)./numel(g);
Numel – Número de elementos em um array ou expressão.
cdf = cumsum(hnorm);
CumSum – Soma cumulativa dos elementos
x = linspace(0, 1, 256);
Gera um vetor linearmente espaçado
figure,plot(x,cdf)
Plota a figura cdf em x
axis([0 1 0 1])
Escala de eixo
axis([xmin xmax ymin ymax])
set(gca, 'xtick', 0:.2:1)
Define as propriedades do objeto, em relação ao eixo x.
set(gca, 'ytick', 0:.2:1)
Define as propriedades do objeto, em relação ao eixo y
xlabel('Valores de Intensidade de Entrada', 'fontsize', 9)
Insere no eixo x o título Valores de Instensidade de Entrada, com fonte nº 9.
ylabel('Valores de Intensidade de Saída', 'fontsize', 9)
Insere no eixo y o título Valores de Intensidade de Saída, com fonte nº 9.
text(0.18, 0.5, 'Função de Transfomação', 'fontsize', 9)
Insere o texto Função de Transformação, com fonte nº 9, na posição 0.18,
0.5.
E_6: Alterações Globais no Brilho.
a) Clarear a imagem polem.bmp de 128 níveis de cinza.
e=imread('polem.bmp');
figure, imshow(e)
eeq=histeq(e,128);
figure, imshow(eeq)
b) Equalizar as imagens (clareada e não) e gerar seus
histogramas. Concluir a
respeito.
figure, imhist(eeq)
figure, imshow(eeq)
figure, imhist(e)
figure, imshow(e)
c) Concluir
Conclusão - no histograma equalizado é visivelmente nítida
a distribuição dos níveis de cinza (o que cria um maior
contraste na imagem), enquanto no outro observa-se uma
menor distribuição, havendo assim uma maior concentração
nos níveis de cinza próximos a zero.
Download

figure,imhist(g)