Buscar

TRABALHO - Processamento de Imagens - 2022

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Processamento de Imagens 
 
 
2022 
CADERNO DE RESOLUÇÃO DA ATIVIDADE PRÁTICA 
GERALDO NARCISO PORTO - RU:2576484 
 
 
 
Atividade Prática de Processamento de Imagens 1 Prof. Charles Way Hun Fung, MSc 
Para resolver os exercícios 1, 2 e 3 faça a leitura das imagens house.tif, cameraman.tif e 
lena_color_256.tif utilizando o comando imread. Em todos os exercícios mostre o código, 
imagens resultantes e apresente explicações. 
 
1. Mostre o histograma de uma destas imagens, explique o formato do histograma, a 
respeito de níveis de cinza, quantidade de pixels e contraste. 
 
I) Apresentação do Código: 
 
 --> im = geraldo_imread('house.tif') 
--> imshow(im_geraldo) 
 
 
--> [qtd,niveis]=imhist(im); 
 
 
-->plot2d3(niveis,qtd) 
 
II) Apresentação das Imagens Resultantes: 
 
 
 
Figura 1- Histograma da imagem (house.tif) 
 
 
III) Explicação: 
 
A imagem representada em um 
histograma, nada mais é do que um 
gráfico apresentado em barras, que 
apresenta a distribuição dos pixels 
nos níveis de cinza. Cada barra pode 
representar uma faixa de valores de 
níveis de cinza, quanto maior o 
número de barras, menor a faixa de 
valores e maior a precisão do 
histograma. Com a visualização do 
histograma é possível verificar 
algumas dessas características na 
imagem, como contraste e brilho 
médio. 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 2 Prof. Charles Way Hun Fung, MSc 
2. Faça a plotagem das imagens com seus respectivos histogramas usando subplot, use 
3 linhas e 2 colunas. Explique a diferença entre os histogramas. 
 
I) Apresentação do Código: 
 
 
im_geraldo = imread('house.tif'); 
 
im2_geraldo = imread('cameraman.tif'); 
 
im3_geraldo = imread('lena_color_256.tif'); 
 
-->subplot(321) 
 
--> imshow(im_geraldo) 
 
--> subplot(322) 
 
--> plot2d3(niveis,qtd) 
 
--> subplot(323) 
 
--> imshow(im2_geraldo) 
 
--> subplot(324 
 
--> plot2d3(niveis2,qtd2 
 
--> subplot(325) 
 
--> imshow(imgray 
 
--> subplot(326) 
 
--> plot2d3(niveis3,qtd3) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 3 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens Resultantes: 
 
 
 
 
Figura 2: Imagens com seus respectivos histogramas. 
 
III) Explicação: 
 
 
A diferença entre os 
histogramas são a variação 
de tons de cinza, isso 
acontece de acordo com cada 
imagem, se ela estiver mais 
clara ou mais escura 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 4 Prof. Charles Way Hun Fung, MSc 
3. Realize a equalização na imagem cameraman.tif, faça uma comparação entre a imagem 
original e a equalizada. Mostre diferenças dos histogramas (original e equalizado) e 
explique o processamento realizado pela equalização. 
 
I) Apresentação do Código: 
 
 
-> im2_geraldo = imread('cameraman.tif'); 
--> [qtd2,niveis2]=imhist(im2_geraldo); 
--> subplot(221) 
--> imshow(im2_geraldo) 
--> subplot(222) 
--> plot2d3(niveis2,qtd2) 
-> imequ = imhistequal(im2_geraldo); 
 
--> subplot(223) 
--> imshow(imequ) 
--> subplot(224) 
-> [qtd4,niveis4]=imhist(imequ); 
 
--> plot2d3(niveis4,qtd4) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 5 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens Resultantes: 
 
 
 
 
Figura 3: Imagem original e equalizada. 
 
III) Explicação: 
 
 
 
 
 
 A equalização é utilizada para 
fazer uma redistribuição dos pixel de 
forma a uniformizar melhor a 
distribuição em relação aos níveis 
de cinza da imagem, e também 
acontece uma suavização na 
imagem, um tipo de brilho, assim 
diminuindo os ruídos, para uma 
melhor visualização da imagem. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 6 Prof. Charles Way Hun Fung, MSc 
Para resolver os exercícios 4, 5, 6 e 7 faça a leitura das imagens jetplane.tif e walkbridge.tif 
usando o comando imread. Em todos os exercícios mostre o código, imagens resultantes e 
apresente explicações. 
 
4. Em ambas imagens aplique um filtro para detecção de pontos isolados. Para isto 
procure uma máscara e utilize conv2 para aplicar o filtro na imagem. Explique o que 
aconteceu com a imagem resultante, quais detalhes foram enfatizados com este 
processamento? 
 
I) Apresentação do Código: 
 
-> im1 = imread('jetplane.tif'); 
--> im2 = imread('walkbridge.tif'); 
--> mask = [1,1,1;1,-8,1;1,1,1] 
--> im1 = double(im1); 
--> im2 = double(im2); 
--> res1 = conv2(im1,mask); 
--> res2 = conv2(im2,mask); 
--> ima1_geraldo = imread('jetplane.tif'); 
--> ima2_geraldo = imread('walkbridge.tif'); 
-> subplot(221); 
 
--> ima1 = imread('jetplane.tif'); 
 
--> subplot(222); 
 
--> imshow(res1); 
 
--> subplot(223); 
 
--> imshow(ima2_geraldo); 
 
--> subplot(224); 
 
--> imshow(res2); 
 
 
 
Atividade Prática de Processamento de Imagens 7 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens Resultantes: 
 
 
 
 
Figura 4: imagens originais e com filtro de pontos 
isolados 
 
III) Explicação: 
 
 
 
 
 
A filtragem tem a função de dar 
ênfase a uma determinada 
característica da imagem 
apresentada, nesse caso foi 
destacados os pontos isolados. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 8 Prof. Charles Way Hun Fung, MSc 
5. Em ambas imagens aplique os filtros para detecção de linha: horizontal, vertical, 45° e 
-45°. Para isto procure uma máscara para cada filtro (tabela anterior) e utilize conv2 
para aplicar o filtro na imagem. Plote o resultado e explique o que aconteceu com a 
imagem. 
 
I) Apresentação do Código: 
 
-> im1 = imread('jetplane.tif'); 
 
--> im2 = imread('walkbridge.tif'); 
 
--> mask_hor = [-1 -1 -1; 2 2 2; -1 -1 -1]; 
 
--> mask_45 = [2 -1 -1; -1 2 -1; -1 -1 2]; 
 
--> mask_ver = [-1 2 -1; -1 2 -1; -1 2 -1]; 
 
--> mask_45neg = [-1 -1 2; -1 2 -1; 2 -1 -1]; 
 
--> ima1_geraldo = imread('jetplane.tif'); 
 
--> ima2_geraldo = imread('walkbridge.tif'); 
 
--> ima1_geraldo = double(ima1_geraldo); 
 
--> ima2_geraldo = double(ima2_geraldo); 
 
--> res1_hor = conv2(mask_hor,ima1_geraldo); 
 
--> res1_45 = conv2(mask_45,ima1_geraldo); 
 
--> res1_ver = conv2(mask_ver,ima1_geraldo); 
 
--> res1_45neg = conv2(mask_45neg,ima1_geraldo); 
 
--> res2_hor = conv2(mask_hor,ima2_geraldo); 
 
--> res2_45 = conv2(mask_45,ima2_geraldo); 
 
 
 
 
Atividade Prática de Processamento de Imagens 9 Prof. Charles Way Hun Fung, MSc 
-> res2_ver = conv2(mask_ver,ima2_geraldo); 
-> res2_45neg = conv2(mask_45neg,ima2_geraldo); 
--> subplot(221); 
--> imshow(res1_hor) 
--> subplot(222) 
--> imshow(res1_45) 
--> subplot(223) 
--> imshow(res1_ver) 
--> subplot(224) 
--> imshow(res1_45neg) 
--> subplot(221); 
--> imshow(res2_hor) 
--> subplot (222) 
--> imshow(res2_45) 
--> subplot(223) 
--> imshow(res2_ver) 
--> subplot(224) 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 10 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens Resultantes: 
 
 
 
 
 
Figura 5: plotagem da imagem(jetplane.tif), 
(1)horizontal,(2)45º, (3)vertical,(4)-45º 
 
III) Explicação: 
 
 
 
 
 
 Já essa matriz que usamos, 
podemos observar um 
melhor destaque na direção 
das linhas da horizontal, 45º, 
vertical, -45º. 
 
 
 
Atividade Prática de Processamento de Imagens 11 Prof. Charles Way Hun Fung, MSc 
 
Figura6: plotagem daimagem(walkbridge.tif) 
(1)horizontal,(2)45º, (3)vertical,(4)-45º 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 12 Prof. Charles Way Hun Fung, MSc 
6. Em ambas imagens aplique os filtros para detecção de borda: Roberts, Prewitt, Sobel. 
Para isto procure uma máscara para cada filtro e utilize conv2 para aplicar o filtro na 
imagem. Plote o resultado e explique o que aconteceu com a imagem. 
 
I) Apresentação do Código: 
 
Inicio do código para imagem “jetplane.tif” 
 
-> mask_Roberts1 = [-1 0; 0 1]; 
 
--> mask_Roberts2 = [0 -1; 1 0]; 
 
--> res_Roberts1 = conv2(mask_Roberts1,imagem1_geraldo);--> res_Roberts2 = conv2(mask_Roberts2,imagem1_geraldo); 
 
--> imshow(res_Roberts1) 
 
--> imshow(res_Roberts2) 
 
--> subplot(121) 
 
--> imshow(res_Roberts1) 
 
--> subplot(122) 
 
--> imshow(res_Roberts2) 
 
-> mask_Prewitt1 = [-1 -1 -1; 0 0 0; 1 1 1]; 
 
--> mask_Prewitt2 = [-1 0 -1; -1 0 1; -1 0 1]; 
 
--> res_Prewitt1 = conv2(mask_Prewitt1,imagem1_geraldo); 
 
--> res_Prewitt2 = conv2(mask_Prewitt2,imagem1_geraldo); 
 
--> subplot(121) 
 
--> imshow(res_Prewitt1) 
 
--> subplot(122) 
 
--> imshow(res_Prewitt2) 
 
-> mask_Sobel1 = [-1 -2 -1; 0 0 0; 1 2 1]; 
 
--> mask_Sobel2 = [-1 0 1; -2 0 2; -1 0 1]; 
 
--> res_Sobel1 = conv2(mask_Sobel1,imagem1_geraldo); 
 
--> res_Sobel2 = conv2(mask_Sobel2,imagem1_geraldo); 
 
--> subplot(121) 
 
 
 
 
Atividade Prática de Processamento de Imagens 13 Prof. Charles Way Hun Fung, MSc 
--> imshow(res_Sobel1) 
 
--> subplot(122) 
 
--> imshow(res_Sobel2) 
 
FIM DO CODIGO 
 
 
Inicio do código para imagem (‘walkbridge.tif') 
 
> res_Roberts1 = conv2(mask_Roberts1,imagem2_geraldo); 
 
--> res_Roberts2 = conv2(mask_Roberts2,imagem2_geraldo); 
 
--> subplot(121) 
 
--> imshow(res_Roberts1) 
 
--> subplot(122) 
 
--> imshow(res_Roberts2) 
 
> res_Prewitt1 = conv2(mask_Prewitt1,imagem2_geraldo); 
 
--> res_Prewitt2 = conv2(mask_Prewitt2,imagem2_geraldo); 
 
--> subplot(121) 
 
--> imshow(res_Prewitt1) 
 
--> subplot(122) 
 
--> imshow(res_Prewitt2) 
 
> res_Sobel1 = conv2(mask_Sobel1,imagem2_geraldo); 
 
--> res_Sobel2 = conv2(mask_Sobel2,imagem2_geraldo); 
 
--> subplot(121) 
 
--> imshow(res_Sobel1) 
 
--> subplot(122) 
 
--> imshow(res_Sobel2) 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 14 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens Resultantes: 
 
 
 
 Figura 7: imagem(jetplane.tif) no filtro 
 Roberts1 e 2 
 
 
 
Figura 8: imagem(jetplane.tif) no filtro 
Prewitti1 e 2 
 
 
Figura 9: imagem(jetplane.tif) no filtro 
Sobel1 e 2 
 
 
 
III) Explicação: 
 
 
 
 
 
No caso dessa matriz, é possivel destacar 
as bordas, bordas são usadas para 
segmentar uma imagem baseada em 
variações abruptas da intensidade dos 
pixels. As bordas possuiem três modelos: 
Degrau, Rampa e Telhado. 
 
 
 
Atividade Prática de Processamento de Imagens 15 Prof. Charles Way Hun Fung, MSc 
 
Figura 10: imagem(walkbrigde.tif) no 
filtroRoberts1 e 2 
 
 
 
Figura 11: imagem(walkbrigde.tif) no filtro 
Prewitti 1 e 2 
 
 
Figura 12: imagem(walkbrigde.tif) no filtro 
Sobel 1 e 2 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 16 Prof. Charles Way Hun Fung, MSc 
7. Procure na literatura por outro filtro de borda que não foi apresentado no material da 
disciplina, apresente sua máscara e explique seu funcionamento, características e a 
apresente a bibliografia da qual foi retirado este método. 
 
I) Apresentação do Código: 
 
-> imagem_geraldo = imread('jetplane.tif'); 
--> imshow(imagem_geraldo) 
--> imagem_geraldo = double(imagem_geraldo); 
--> mask_pa = [-1 -1 -1; -1 8 -1; -1 -1 -1] 
--> res_pa = conv2(mask_pa,imagem_geraldo); 
--> imshow(res_pa) 
II) Apresentação das 
Imagens Resultantes: 
 
 
 
Figura 13: imagem 
(jetplane.tif) no filtro 
passa alta 3x3 
 
III) Explicação: 
 
 
 
 
 O filtros de passa alta é o efeito que se faz tornar as 
imagens mais nitidas nas regioes diferentes conhecidas 
como bordas realçando o contrastre, possui tambem um 
efeito de enfatizar o ruido presente na imagem. 
 
 
REFERENCIA:http://hpc.ct.utfpr.edu.br/~charlie/docs/PID/PID
_AULA_08.pdf 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 17 Prof. Charles Way Hun Fung, MSc 
Para resolver os exercícios 8, 9, 10 e 11 faça a leitura das imagens baboo_colorido.tif, jupiter.tif 
e lena_colorida.tif usando o comando imread. Em todos os exercícios mostre o código, imagens 
resultantes e apresente explicações. 
 
8. Separe as componentes de cor R, G e B da imagem baboo_colorido.tif. Explique o que 
significa regiões mais claras nestas imagens. 
 
I) Apresentação do Código: 
 
 --> im_geraldo = imread('baboo_colorido.tif') 
 
-> imshow(im_geraldo) 
 
--> size(im_geraldo) 
 ans = 
 
 512. 512. 3. 
 
--> red = im_geraldo(:, :, 1); 
 
--> green = im_geraldo(:, :, 2); 
 
--> blue = im_geraldo(:, :, 3); 
 
--> subplot(131) 
 
--> imshow(red) 
 
--> subplot(132) 
 
--> imshow(green) 
 
--> subplot(133) 
 
--> imshow(blue) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 18 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens 
Resultantes: 
 
 
(a) (b) (c) 
 
Figura 14: imagem (baboo_colorido) 
com componentes separados red(a), 
green(b) e blue(c). 
 
III) Explicação: 
 
Nessas imagens o que esta em destaque é o 
branco, duas dessas imagens perto do nariz do 
macaco foram elevados níveis de cinza, por isso a 
diferença entre elas. 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 19 Prof. Charles Way Hun Fung, MSc 
9. Converta a imagem lena_colorida.tif para o modelo CMY, separe suas componentes (C, 
M e Y). 
 
I) Apresentação do Código: 
 
-->im_geraldo = imread('lena_colorida.tif') 
 
-->-> size(im_geraldo); 
--> CMY = imcomplement(im_geraldo); 
--> C = CMY(:, :, 1); 
--> M = CMY(:, :, 2); 
--> Y = CMY(:, :, 3); 
-> subplot(221) 
 
--> imshow(CMY) 
 
--> subplot(222) 
 
--> imshow(C) 
 
--> subplot(223) 
 
--> imshow(M) 
 
--> subplot(224) 
 
--> imshow(Y) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 20 Prof. Charles Way Hun Fung, MSc 
 
 
 
 
 
 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
Figura 15: imagem (lena_colorida.tif) 
com componentes C, M, Y, 
separados. 
 
III) Explicação: 
 
 
 
Na imagem fica explícita a cor ciano separada, 
puxando para a cor azul e amarela, já a cor magenta 
não aparece por não obter tantos pontos na imagem 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 21 Prof. Charles Way Hun Fung, MSc 
10. Converta a imagem jupiter.tif para HSI, usando o comando rgb2hsv. Veja cada uma 
das componentes deste modelo: 1: Intensidade, 2: Saturação, 3: Matiz. O que cada 
uma destas componentes significa e qual o benefício de utilizar este modelo de 
cor? 
 
I) Apresentação do Código: 
 
 
 
-->im_geraldo = imread('jupiter.tif') 
--> HSV = rgb2hsv(im_geraldo); 
 
--> hue = HSV (:, :, 1); 
 
--> sat = HSV (:, :, 2); 
 
--> value = HSV (:, :, 3); 
 
-> subplot(221) 
 
--> imshow(HSV) 
 
--> subplot(222) 
 
--> imshow(hue) 
 
--> subplot(223) 
 
--> imshow(sat) 
 
--> subplot(224) 
 
--> imshow(value) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 22 Prof. Charles Way Hun Fung, MSc 
 
 
 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
 
 
Figura 16: imagem (jupiter.tif) com 
componentes hue, sat, value, 
separados. . 
 
III) Explicação: 
 
 
 
Nestas imagem foram usados o sistema de cores 
HSV, que utiliza a matriz, a saturação, e intensidade 
para definir os espaços de cor da imagem. 
 
 
IV) V) 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 23 Prof. Charles Way Hun Fung, MSc 
11. Separe inteiramente a componente de cor vermelha da imagem baboo_colorido.tif. 
Qual a diferença entre este processamento e aquele realizado no exercício 8? 
 
I) Apresentação do Código: 
 
 
- > im_geraldo = imread('baboo_colorido.tif') 
 
-> imshow(im_geraldo) 
 
--> baboo_R = im_geraldo; 
 
--> baboo_R(:, :,[2 3])=0; 
 
--> imshow(baboo_R) 
 
 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
 
Figura 17: imagem 
baboo_colorido separado a 
componente vermelha 
 
III) Explicação: 
 
 
 
 
 
 A diferença é que no exercicio de numero 8, 
as cores red, green e blue foram todas separadas, 
nesse caso usamos para separar somente a cor red 
dando tons mais claros devido ao uso do filtro,dando 
assim um maiordestaque na imagem. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 24 Prof. Charles Way Hun Fung, MSc 
Para resolver os exercícios 12, 13, 14, 15 e 16 faça a leitura das imagens baboo.tif e 
pimentas.tif usando o comando imread. Em todos os exercícios mostre o código, imagens 
resultantes e apresente explicações. 
 
12. Realize três mudanças de escala na imagem baboo.tif, usando imresize, com as 
imagens: 2, 0.5 e 0.1. Mostre as imagens resultantes, utilizando o comando size 
explique a diferença entre estas imagens. 
 
I) Apresentação do Código: 
 
 - >im_geraldo = ('baboo.tif') 
--> imres1 = imresize (im_geraldo,2); 
 
--> imres2 = imresize (im_geraldo,0.5); 
 
--> imres3 = imresize (im_geraldo,0.1); 
 
--> subplot(221) 
 
--> imshow(im_geraldo) 
 
--> subplot(222) 
 
--> imshow(imres1) 
 
--> subplot(223) 
 
--> imshow(imres2) 
 
--> subplot(224) 
 
--> imshow(imres3) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 25 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
 
Figura 18: imagem Baboo.tif, com 
comando imresize: original depois 
nas escalas 2, 0.5, 0.1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
III) Explicação: 
 
 
 
 
 
Comando imresize, utilizado para dimiuir a escala 
da imagem 
 
 
 
 
Atividade Prática de Processamento de Imagens 26 Prof. Charles Way Hun Fung, MSc 
 
 
 
 
Atividade Prática de Processamento de Imagens 27 Prof. Charles Way Hun Fung, MSc 
13. Reduza pela metade a escala da imagem pimentas.tif (fator de escala = 0.5) pelo 
menos três vezes. A qualidade da imagem continua a mesma? 
 
I) Apresentação do Código: 
 
-> imshow(im_geraldo) 
--> imres1 = imresize (im_geraldo,0.5); 
--> imres2 = imresize (im_geraldo,0.2); 
--> imres3 = imresize (im_geraldo,0.1); 
--> imres4 = imresize (im_geraldo,0.08); 
--> subplot(221) 
--> imshow(imres1) 
--> subplot(222) 
--> imshow(imres2) 
--> subplot(223) 
--> imshow(imres3) 
--> subplot(224) 
--> imshow(imres4) 
 
 
 
 
 
 
 
 
 
 
II) Apresentação das Imagens 
Resultantes: 
 
 
III) Explicação: 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 28 Prof. Charles Way Hun Fung, MSc 
 
 
Figura 19: imagem pimentas.tif, nas 
escalas 0.5 
 
 
 
Podemos observar que nenhuma imagem fica 
com a mesma qualidade, como foi dito no exercico 
anteriormente, quanto menor for sua escala, 
menos vamos ter uma imagem nitida. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 29 Prof. Charles Way Hun Fung, MSc 
14. Use a imagem pimentas.tif para usar a função imrotate, a rotação em sentido 
horário acontece com valores positivos ou negativos, mostre exemplos desta 
rotação (Pelo menos 4 ângulos diferentes). 
 
I) Apresentação do Código: 
 
im_geraldo = imread('pimentas.tif'); 
 
imout1 = imrotate(im_geraldo,-45); 
 
imout2 = imrotate(im_geraldo,-90); 
 
imout3 = imrotate(im_geraldo,-180); 
 
imout4 = imrotate(im_geraldo,-270); 
 
-> subplot(221) 
--> imshow(imout1) 
--> subplot(222) 
--> imshow(imout2) 
--> subplot(224) 
--> imshow(imout3) 
--> subplot(223) 
--> imshow(imout4) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 30 Prof. Charles Way Hun Fung, MSc 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
 
Figura 20: imagens pimentas.tif, 
função imrote no sentido horário 
 
III) Explicação: 
 
 
 
 
 
Comando imrote, utilizado para rotacionar a 
imagem tanto no sentido horário como mostra a 
imagem ou sentido antihorário. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 31 Prof. Charles Way Hun Fung, MSc 
15. Aplique as duas funções de corte em uma imagem a sua escolha. A imagem 
resultante da função imcrop será chamada de imagemA e a imagem resultante da 
função imcropm será chamada de imagemB. 
 
I) Apresentação do Código: 
 
 
-> geraldo = imread('jetplane.tif'); 
 
-> imagemA = imcrop(geraldo,[10, 20, 200, 300]); 
 
--> imagemB = imcropm(geraldo); 
 
--> subplot(121) 
 
--> imshow(imagemA) 
 
--> subplot(122) 
 
--> imshow(imagemB) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
Figura 21: jetplane.tif, com efeito 
zoom 
 
III) Explicação: 
 
 
 
 
 
Na primeira imagem foi utilizado o comando 
imcrop, ele determina um zoom nas coordenadas 
determinadas, já no comando imcropm permite 
que você selecione as coordenadas que deseja 
que apareça no determinado ponto da imagem. 
 
 
 
Atividade Prática de Processamento de Imagens 32 Prof. Charles Way Hun Fung, MSc 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 33 Prof. Charles Way Hun Fung, MSc 
16. Realize um espelhamento horizontal na imagemA e um espelhamento vertical na 
imagemB. 
 
I) Apresentação do Código: 
 
-> imagemA_Hor = imagemA(:, $: -1: 1); 
 
--> imagemB_Ver = imagemA($: -1: 1, :); 
 
-> subplot(121) 
 
--> imshow(imagemA_Hor) 
 
--> subplot(122) 
 
--> imshow(imagemB_Ver) 
 
 
 
 
 
Figura 22: jetplane.tif, com 
espelhamento horizontal e vertical 
II) Explicação: 
 
 
 
Espelhamento realizado nas imagens do 
exercício anterior. 
 
 
 
 
 
 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 34 Prof. Charles Way Hun Fung, MSc 
Para resolver os exercícios 17, 18, 19 e 20 faça a leitura das imagens retangulo.tif, texto.tif, 
U.tif e digital.tif usando o comando imread. Em todos os exercícios mostre o código, imagens 
resultantes e apresente explicações. 
 
17. A imagem retangulo.tif deve resultar no mais próximo possível de um retângulo 
branco sem nenhum artefato dentro ou fora do mesmo. Utilize apenas operações 
para resolver este problema. 
 
I) Apresentação do Código: 
 
-> geraldo = zeros(10,10); 
--> geraldo(4:7,4:7)=1; 
--> ES = imcreatese('rect',3,3); 
--> dilatado = imdilate(geraldo,ES); 
--> imshow(dilatado) 
 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
 
Figura 23: imagem retangulo 
 
III) Explicação: 
 
 
 
 
 
Imagem retangulo formada, utilizando operações 
de dilatação da imagem. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 35 Prof. Charles Way Hun Fung, MSc 
18. Na imagem texto.tif deve-se obter o texto nítido. Para isto, utilize operações de 
dilatação e erosão. O critério para verificar a nitidez do texto é quando as falhas nas 
letras deixarem de existir. 
 
I) Apresentação do Código: 
 
-> geraldo = imread('texto.tif'); 
--> ES = imcreatese('rect',2,2); 
--> dilat = imdilate(geraldo,ES); 
--> subplot(121) 
--> imshow(geraldo) 
--> subplot(122) 
--> imshow(dilat) 
 
II) Apresentação das Imagens Resultantes: 
 
 
 
Figura 24: imagem texto.tif (a) original e a (b) 
com operação de dilatação 
 
III) Explicação: 
 
 
 
 
 
Com o efeito de dilatação é possivel 
ler o texto com mais nitidez. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 36 Prof. Charles Way Hun Fung, MSc 
19. Encontre as bordas da imagem U.tif utilizando apenas operações morfológicas. 
 
I) Apresentação do Código: 
 
-> geraldo = imread('U.tif'); 
--> ES = imcreatese('rect',15,15); 
--> dilat = imdilate(geraldo,ES); 
--> i = dilat - geraldo; 
--> imshow(i) 
 
II) Apresentação das Imagens 
Resultantes: 
 
 
 
 
Figura 25: imagem U.tif. 
 
III) Explicação: 
 
 
 
 
 
Utilizando as operações morfológicas as bordas são 
identificadas com segue na imagem ao lado. 
 
 
 
 
 
Atividade Prática de Processamento de Imagens 37 Prof. Charles Way Hun Fung, MSc 
20. A imagem digital.tif é de uma impressão digital com ruído, realize operações 
morfológicas para retirar o ruído e realçar os traços da digital nesta imagem. 
 
I) Apresentação do Código: 
 
->geraldo = imread('digital.tif'); 
 
-> imagBin = im2bw(geraldo,0.5); 
 
--> ES = imcreatese('rect',2,2); 
 
--> dilat = imdilate(imagBin,ES); 
 
--> erodil = imerode(dilat,ES); 
 
--> subplot(131) 
 
--> imshow(geraldo) 
 
--> subplot(132) 
 
--> imshow(dilat) 
 
--> subplot(133) 
 
--> imshow(erodil)II) Apresentação das Imagens Resultantes: 
 
 
 
Figura 26: imagem digital.tif, (a)original, (b) efeito 
dilatação, (c) efeito erosão. 
 
III) Explicação: 
 
 
 
O processo de binariazação e 
dilatação foi utilizado para 
restaurar os dados, e a erosão 
para aumentar a região de 
pontos escuros.

Continue navegando