Texto5.docx

  • Uploaded by: André Ajonas Lavez
  • 0
  • 0
  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Texto5.docx as PDF for free.

More details

  • Words: 2,127
  • Pages: 26
UNIVERSIDADE FEDERAL DO TRIANGULO MINEIRO INSTITUTO DE CIÊNCIAS TECNOLÓGICAS E EXATAS

André Ajonas Lavez Gabriel Augusto de Souza

Trabalho 5 - PDI

Uberaba Novembro – 2016

André Ajonas Lavez Gabriel Augusto de Souza

Trabalho 3 - PDI

Trabalho apresentado para disciplina Processamento digital de imagens para fins avaliativos. Prof. Dr. Luciano Xavier Medeiros

Uberaba Novembro – 2016

i

LISTA DE FIGURAS Figura 1 - Conceito de máscara.. ................................................................................................ 3 Figura 2 - Máscara passa-alta de (a) 3x3 e (b)5x5. .................................................................... 4 Figura 3 - Filtragem espacial passa-baixa com máscara 3x3 .. .................................................. 5 Figura 4 - Filtragem espacial passa-baixa com máscara 5x5 ..................................................... 5 Figura 5 - Filtragem espacial passa-baixa com varias máscaras ................................................ 6 Figura 6 - Filtragem espacial passa-baixa de ruído gaussiano ................................................... 6 Figura 7 - Filtragem espacial passa-baixa de ruido sal e pimenta .............................................. 7 Figura 8 - Filtragem espacial passa-alta com máscara 3x3. ....................................................... 7 Figura 9 - Filtragem espacial passa-alta com máscara 5x5 ........................................................ 8 Figura 10 - Filtragem espacial passa-alta com varias máscaras ................................................. 8 Figura 11 - Filtragem espacial mediana de ruido sal e pimenta ................................................. 9 Figura 12 - Filtragem espacial mediana de ruído gaussiano .................................................... 9 Figura 13 - Filtragem espacial mediana com varias máscaras ................................................. 10

ii

iii

SUMÁRIO 1. INTRODUÇÃO ................................................................................................................. 1 2. RESUMO TEÓRICO........................................................................................................ 3 3. RESULTADOS OBTIDOS ............................................................................................... 5 3.1 FILTRO ESPACIAL PASSA-BAIXA ..................................................................... 5 3.2 FILTRO ESPACIAL PASSA-ALTA ....................................................................... 7 3.3 FILTRO ESPACIAL MEDIANA............................................................................. 8 4. CONCLUSÃO ................................................................................................................ 11 5. REFERÊNCIAS ............................................................................................................. 13 6. ANEXOS ......................................................................................................................... 15 6.1 CÓDIGO PRINCIPAL ........................................................................................... 15 6.2 FUNÇÃO FILTRO PASSA BAIXA ...................................................................... 16 6.3 FUNÇÃO FILTRO PASSA BAIXA ...................................................................... 17 6.4 FUNÇÃO FILTRO MEDIANA ............................................................................. 17

iv

1

1. INTRODUÇÃO Nesse relatório verificaremos a importância do uso de filtros espaciais lineares e não lineares e também iremos implementar tais filtros, os quais são: Filtro espacial passa-baixa, filtro espacial passa-alta e filtro espacial mediana. Começaremos aplicando tais filtros a imagem da Lenna, por sequência verificaremos o comportamento de cada filtro, levando em conta quais características que cada um destaca, e também suprimi. Para ser possível determinar qual a principal função de cada um. Para auxiliar a interpretação dos filtros, iremos introduzir ruídos na imagem de entrada e comparar os resultados obtidos de cada filtro. Além disso também será variado o tamanho das máscaras de cada um dos filtros, afim de saber o que tal mudança altera na imagem final.

2

3

2. RESUMO TEÓRICO Os processos de filtragem em imagens, se dividem em 2 grandes grupos, filtragem no domínio da frequência, o qual faz o uso da transformada de Fourier na imagem e manipula-se seu espectro de acordo com o objetivo, retornando ao domínio do espaço com a aplicação da transformada inversa de Fourier. O outro grande grupo de filtragem são as filtragens no domínio do espaço, em que são manipulados os pixels da própria imagem, resultando em uma nova imagem de saída[1]. Para que possamos realizar as chamadas filtragens espaciais utilizamos de mascaras (também conhecidas como sub-imagem), pequena matriz que visa levar em conta os elementos vizinhos ao pixel analisado. O conceito de máscara fica mais claro analisando a Figura 1, onde podemos notar uma imagem na qual temos a presença de uma máscara 3x3:

Figura 1 - Conceito de máscara. Fonte: Autoria própria.

A máscara deve percorrer toda a imagem, pois somete assim conseguimos gerar uma nova imagem com as mesmas dimensões da imagem pré-processada e com novos valores para cada pixel. Vale lembrar que, ao utilizarmos uma máscara 3x3 devemos adicionar uma borda de zeros de espessura 1, com o objetivo de encaixar toda a sub-imagem na imagem a ser processada. No caso de uma sub-imagem de 5x5, a borda de zeros possuirá 2 de espessura, e assim sucessivamente. No trabalho realizado em questão utilizamos de filtragens espaciais lineares, filtro passa-baixa e filtro passa-alta, e não lineares filtro de mediana. A máscara para realizar o filtro passa-baixa possui todos seus elementos com o valor unitário, assim basta somar todos os pixels internos a máscara, e posteriormente realizar a média. Tal média deve ser alocada na nova imagem, na posição central em que a máscara esteve presente[2].

4

A aplicação de tal técnica tem como objetivo suavizar a imagem, e quanto maior a máscara, maior será a suavização. Caso a mesma tenha um tamanho relativamente grande (maior que 9), a imagem de saída será borrada, perdendo a representatividade de bordas. Já a técnica de filtragem espacial passa-alta, realiza o oposto do passa-baixa, ou seja, enaltece as bordas e mudanças de tons. Isso se deve ao fato que a mascará utilizada possui valores negativos nas extremidades e o elemento central valor positivo de maior expressão, na Figura 2 podemos ver a máscara 3x3 e 5x5 passa-alta

Figura 2 - Máscara passa-alta de (a) 3x3 e (b)5x5. Fonte: Autoria prórpria.

A filtragem espacial mediana, funciona da mesma maneira que a operação mediana, a qual o resultado é o elemento central de uma sequência de números ordenados [3], sendo muito eficiente para a retirada de ruídos do tipo sal e pimenta[1].

5

3. RESULTADOS OBTIDOS Os resultados obtidos foram divididos em sub categorias, afim de facilitar a compreensão do leitor. 3.1 FILTRO ESPACIAL PASSA-BAIXA Conforme solicitado foi implementado um programa que realiza a filtragem espacial passa-baixa, podemos ver os resultados obtidos abaixo:

Figura 3 - Filtragem espacial passa-baixa: (a) Imagem original e (b) imagem processada com máscara 3x3. Fonte: Autoria própria.

Podemos notar na Figura 3 que houve uma suavização nas bordas, conforme esperado. Na Figura 4 temos uma maior suavização e início de borramento devido a máscara possuir maior dimensão (5x5).

Figura 4 - Filtragem espacial passa-baixa: (a) Imagem original e (b) imagem processada com máscara 5x5. Fonte: Autoria própria.

Para tornar possível um melhor efeito comparativo entre as imagens, na Figura 5 apresentamos 3 diferentes mascaras e os resultados obtidos:

6

Figura 5 - Filtragem espacial passa-baixa: (a) Imagem original e em sequência, imagens processadas com máscaras: (b) 3x3 ,(c) 5x5 e (d) 7x7. Fonte: Autoria própria.

Como podemos notar na Figura 6, a filtragem espacial passa-baixa tem resultados relativamente bom quando aplicado a imagens com ruído do tipo gaussiano:

Figura 6 - Filtragem espacial passa-baixa: (a) Imagem original, (b) imagem corrompida com ruído gaussiano, e em sequência, imagens processadas com máscaras: (c) 3x3 e (d) 5x5. Fonte: Autoria própria.

Já quando é aplicado em uma imagem que apresenta ruído do tipo sal e pimenta, consegue retirar boa parte do ruído, contudo não temos um bom resultado conforme observamos na Figura 7:

7

Figura 7 - Filtragem espacial passa-baixa: (a) Imagem original, (b) imagem corrompida com ruído sal e pimenta, e em sequência, imagens processadas com máscaras: (c) 3x3 e (d) 5x5. Fonte: Autoria própria.

3.2 FILTRO ESPACIAL PASSA-ALTA De maneira análoga, foi criado um programa que processa as imagens com o uso do filtro espacial passa-alta. Os resultados estão expostos abaixo:

Figura 8 - Filtragem espacial passa-alta: (a) Imagem original e (b) imagem processada com máscara 3x3. Fonte: Autoria própria.

Como era esperado houve um enaltecimento nos contornos, contudo a imagem escureceu muito, pois no filtro há valores negativos influenciando assim o escurecimento, tal resultado está exposta na Figura 8. Já Figura 9 temos o mesmo tipo de filtro, contudo com máscara de 5x5:

8

Figura 9 - Filtragem espacial passa-alta: (a) Imagem original e (b) imagem processada com máscara 5x5. Fonte: Autoria própria.

Com o aumento notamos que as bordas ficam ainda mais destacadas. Abaixo na Figura 10 está apresentado o filtro passa-alta com tamanho de máscaras distintos:

Figura 10 - Filtragem espacial passa-alta: (a) Imagem original e em sequência, imagens processadas com máscaras: (b) 3x3 ,(c) 5x5 e (d) 7x7. Fonte: Autoria própria.

3.3 FILTRO ESPACIAL MEDIANA Como comentado no resumo teórico o filtro de mediana possui excelentes resultados quando aplicado a imagens com ruído sal e pimenta, assim visto na Figura 11:

9

Figura 11 - Filtragem espacial mediana: (a) Imagem original, (b) imagem corrompida com ruído sal e pimenta, e em sequência, imagens processadas com máscaras: (c) 3x3 e (d) 5x5. Fonte: Autoria própria.

Até mesmo quando aplicado em ruído gaussiano o filtro de mediana tem resultados satisfatórios, como observamos a Figura 12 abaixo:

Figura 12 - Filtragem espacial mediana: (a) Imagem original, (b) imagem corrompida com ruído gaussiano, e em sequência, imagens processadas com máscaras: (c) 3x3 e (d) 5x5 Fonte: Autoria própria.

Como na Figura 13 a aplicação de filtragem espacial mediana com máscaras de tamanhos superiores a 5, causam um grande embasamento na imagem final.

10

Figura 13 - Filtragem espacial passa-alta: (a) Imagem original e em sequência, imagens processadas com máscaras: (b) 3x3 ,(c) 5x5 e (d) 7x7. Fonte: Autoria própria.

.

11

4. CONCLUSÃO Após aplicarmos os 3 diferentes tipos de filtros solicitados no relatório ficou claro que, devemos saber qual é nosso objetivo final para que possamos escolher o filtro desejado e ser possível alcançar tais objetivos. Caso queira destacar as bordas, devemos utilizar o filtro passa-altas com uma máscara grande (em torno de 7), contudo a imagem final se escurecera demasiadamente em virtude de tirar a componente DC da imagem. Portanto devemos ter cuidado ao utiliza-los. Para redução de ruído do tipo sal e pimenta, e também o ruído gaussiano, é recomendado utilizar o filtro de mediana com máscaras de no máximo 5 colunas e 5 linhas, afim de evitar o alto embasamento. O processo de filtragem espacial passa-baixa é indicado para suavização de superfícies, além de também poder ser aplicado a ruídos. Contudo seu resultado não é tão eficiente quando comparado ao filtro de mediana. Notamos também que tais processos de filtragem espaciais, podem ser utilizado como técnicas de pré-processamento, afim de destacar ou retirar determinadas características da imagem de entrada. Aumentando a qualidade da imagem que virá a ser processada.

12

13

5. REFERÊNCIAS [1]

R. Gonzales e R. Woods, PROCESSAMENTO DE IMAGENS DIGITAIS, 3o ed. São Paulo: Pearson, 2010.

[2]

A. Backes, FILTRAGEM ESPACIAL - Filtros Digitais no domínio do espaço. Uberlandia, p. 1–27, 2014.

[3]

P. L. Meyer, PROBABILIDADE - Aplicações à Estatística, 2o ed, vol. 22, no 62. Aparecida: Santuário, 2012.

14

15

6. ANEXOS 6.1 CÓDIGO PRINCIPAL clc; clear; close all; %aquisição da imagem entrada=imread('Lenna256.bmp'); tamMasc=3; colormap(gray(256)); subplot(2,2,1);%linha coluna posição image(entrada); axis equal; axis('off'); %ruido gaussiano %k=round(normrnd(0,sqrt(100),[size(entrada)])); %ruido sal e pimenta k=randi(11,256); k=k-1; for a=1:256 for b=1:256 if (k(a,b)==10) k(a,b)=255; elseif(k(a,b)==0) k(a,b)=0; else k(a,b)=1; end end end entrada=entrada.*k; %adicinando ruido

subplot(2,2,2);%linha coluna posição image(entrada); axis equal; axis('off'); for a=0:1 tamMasc=3+2*a; %chamando a função Filtro passa Baixa %saida=FPBespacial(entrada,tamMasc); %chamando a função Filtro passa Alta

16

%saida=FPAespacial(entrada,tamMasc); %chamando a função Filtro Mediana saida=FMediana(entrada,tamMasc); subplot(2,2,3+a);%linha coluna posição image(saida); axis equal; axis('off'); clear saida; clear tamMasc; end

6.2 FUNÇÃO FILTRO PASSA BAIXA function saida=FPBespacial(entrada,tamMasc) %o quanto deve preencher a imagem original para passar a mascara aumento=(tamMasc-1)/2; %verifica as dimensões da entrada tamanho=size(entrada); %cria matriz de 0 que ira prencher a imagem, com o aumento necessario para passar a mascara entradaConca=zeros(tamanho(1)+2*aumento,tamanho(2)+2*aumento); %concatena a matriz de zero com a entrada entradaConca((1+aumento):(tamanho(1)+aumento),(1+aumento):(tamanho(2)+aumento))=entrada;

soma=0; numeroPtos=0; for linha=0:(tamanho(1)-1)%roda as linhas for coluna=0:(tamanho(2)-1)%roda as colunas for Lmasc=1:tamMasc %roda linhas da mascara for Cmasc=1:tamMasc %roda colunas da mascara pixel=entradaConca((linha+Lmasc),(coluna+Cmasc)); if (pixel != 0) %Faz com que apenas pixels diferente de zero contribuam numeroPtos++; end soma=soma+pixel; end end saida((linha+1),(coluna+1))=soma/(numeroPtos);%cria a nova imagem soma=0; %zera o somador numeroPtos=0; %zera o numero de ptos da imagem dif de zero end end endfunction;

17

6.3 FUNÇÃO FILTRO PASSA BAIXA function saida=FPAespacial(entrada,tamMasc) %o quanto deve preencher a imagem original para passar a mascara aumento=(tamMasc-1)/2; %verifica as dimensões da entrada tamanho=size(entrada); %cria matriz de 0 que ira prencher a imagem, com o aumento necessario para passar a mascara entradaConca=zeros(tamanho(1)+2*aumento,tamanho(2)+2*aumento); %concatena a matriz de zero com a entrada entradaConca((1+aumento):(tamanho(1)+aumento),(1+aumento):(tamanho(2)+aumento))=entrada; soma=0; numeroPtos=0; for linha=0:(tamanho(1)-1)%roda as linhas for coluna=0:(tamanho(2)-1)%roda as colunas for Lmasc=1:tamMasc %roda linhas da mascara for Cmasc=1:tamMasc %roda colunas da mascara if ( entradaConca((linha+Lmasc),(coluna+Cmasc))!=0)

%Faz com que

apenas pixels diferente de zero contribuam numeroPtos++; end if (Lmasc == tamMasc-aumento && Cmasc ==tamMasc-aumento) % apenas o elemento centra da matriz não possui -1 como multiplicação pixel=(tamMasc^21)*entradaConca((linha+Lmasc),(coluna+Cmasc)); else pixel=(-1)*entradaConca((linha+Lmasc),(coluna+Cmasc)); end soma=soma+pixel; end end saida((linha+1),(coluna+1))=soma/(numeroPtos);%cria a nova imagem soma=0; %zera o somador numeroPtos=0; end end endfunction

6.4 FUNÇÃO FILTRO MEDIANA function saida=FMediana(entrada,tamMasc) %o quanto deve preencher a imagem original para passar a mascara aumento=(tamMasc-1)/2;

18

%verifica as dimensões da entrada tamanho=size(entrada); %cria matriz de 0 que ira prencher a imagem, com o aumento necessario para passar a mascara entradaConca=zeros(tamanho(1)+2*aumento,tamanho(2)+2*aumento); %concatena a matriz de zero com a entrada entradaConca((1+aumento):(tamanho(1)+aumento),(1+aumento):(tamanho(2)+aumento))=entrada;

soma=0; posicao=0; mediana=ceil(tamMasc^2/2);%indice do elemento centra do vetor pixel for linha=0:(tamanho(1)-1)%roda as linhas for coluna=0:(tamanho(2)-1)%roda as colunas for Lmasc=1:tamMasc %roda linhas da mascara for Cmasc=1:tamMasc %roda colunas da mascara posicao++;% cada loop incrementa um e dita a posição do pixel pixel(posicao)=entradaConca((linha+Lmasc),(coluna+Cmasc));%armazeno os valores da mascara em um vetor end end pixel=sort(pixel);%ordei o vetor saida((linha+1),(coluna+1))=pixel(mediana);%cria a nova imagem posicao=0; end end endfunction

More Documents from "André Ajonas Lavez"

Profil Batan.docx
June 2020 30