Função Convolução

A função Convolução executa um filtro nos valores de pixel em uma imagem, que pode ser utilizado para clarear uma imagem, escurecer uma imagem, detectar bordas dentro de uma imagem ou outras otimizações baseadas em kernel. Os filtros são utilizados para melhorar a qualidade da imagem raster eliminando dados espúrios ou melhorando feições nos dados. Estes filtros de convolução são aplicados um kernel de mudança, sobreposição (janela ou vizinhança), como 3 por 3. Os filtros de convolução funcionam com o cálculo do valor de pixel baseado nos pesos de seus vizinhos.

Notas

Há vários tipos de filtro de convolução que você pode escolher nesta função. Você também pode especificar um tipo de Usuário definido e insira seus próprios valores de kernel.

Para resultados de exibição ideais, você pode querer aplicar um alongamento de histograma para ajustar o contraste ou o brilho da imagem para ajudar a destacar as feições.

Parâmetros

ParâmetroDescrição

Raster

A camada raster de entrada.

Tipo

Selecione o tipo de filtro que deseja criar. Há opções para nitidez, desfoque e detectar extremidades ou você pode definir seu próprio filtro baseado em núcleo

Kernel

Esta tabela mostra como cada pixel será ponderado no processo de filtragem. Esta tabela pode ser editada se você escolher Usuário definido como Tipo.

Saiba mais sobre como funciona a convolução

Nas tabelas a seguir, cada filtro é aplicado a uma dessas duas imagens:

Imagem em tons de cinza não filtrada
Imagem em tons de cinza não filtrada
Imagem em tons de cinza não filtrada
Imagem em tons de cinza não filtrada

Filtros de detecção de borda

Tipos de gradiente

Filtros de gradiente podem ser usados ​​para detecção de borda em incrementos de 45 graus.

TipoDescriçãoExemplo

Leste Gradiente

Um filtro 3 por 3

 1  0 -1
 2  0 -2
 1  0 -1

Resultado gradiente leste

Norte Gradiente

Um filtro 3 por 3

 -1 -2 -1
  0  0  0
  1  2  1

Resultado gradiente norte

Gradiente Nordeste

Um filtro 3 por 3

 0 -1 -2
 1  0 -1
 2  1  0

Resultado do Gradiente Nordeste

Gradiente Noroeste

Um filtro 3 por 3

 -2 -1  0
 -1  0  1
  0  1  2

Resultado gradiente noroeste

Sul Gradiente

Um filtro 3 por 3

  1  2  1
  0  0  0 
 -1 -2 -1

Resultado gradiente sul

Oeste Gradiente

Um filtro 3 por 3

 -1  0  1
 -2  0  2
 -1  0  1

Resultado gradiente oeste

Tipos laplacianos

Filtros laplacianos são frequentemente usados ​​para detecção de bordas. Eles geralmente são aplicados a uma imagem que foi primeiro suavizada para reduzir sua sensibilidade ao ruído.

TipoDescriçãoExemplo

Laplaciano 3x3

Um filtro 3 por 3

 0 -1  0
-1  4 -1
 0 -1  0

Resultado Laplaciano 3x3

Laplaciano 5x5

Um filtro 5 por 5

 0  0 -1  0  0 
 0 -1 -2 -1  0
-1 -2 17 -2 -1
 0 -1 -2 -1  0
 0  0 -1  0  0

Resultado Laplaciano 5x5

Tipos de detecção de linha

Os filtros de detecção de linha, como os filtros de gradiente, podem ser usados ​​para realizar a detecção de borda.

Você pode obter melhores resultados se aplicar um algoritmo de suavização antes de um algoritmo de detecção de borda.

TipoDescriçãoExemplo

Detecção de Linha Horizontal

Um filtro 3 por 3

-1 -1 -1
 2  2  2 
-1 -1 -1

Resultado da detecção de linha horizontal

Detecção de Linha Diagonal Esquerda

Um filtro 3 por 3

 2 -1 -1
-1  2 -1
-1 -1  2

Resultado da detecção da linha diagonal esquerda

Detecção de Linha Diagonal Direita

Um filtro 3 por 3

-1 -1  2 
-1  2 -1
 2 -1 -1

Resultado da detecção da linha diagonal direita

Detecção de Linha Vertical

Um filtro 3 por 3

-1  0 -1 
-1  2 -1 
-1  2 -1

Resultado da detecção de linha vertical

Tipos de Sobel

O filtro Sobel é usado para detecção de borda.

TipoDescriçãoExemplo

Horizontal de Sobel

Um filtro 3 por 3

-1 -2 -1
 0  0  0
 1  2  1

Resultado horizontal de Sobel

Vertical de Sobel

Um filtro 3 por 3

-1  0  1 
-2  0  2 
-1  0  1

Resultado vertical Sobel

Filtros de nitidez e suavização

Tipos de nitidez

O filtro Nitidez (passagem de alta) acentua a diferença comparativa dos valores com seus vizinhos. Um filtro de passagem de alta calcula a estatística de soma focal para cada célula da entrada usando uma vizinhança de kernel ponderada. Ele destaca os limites entre as feições (por exemplo, onde um corpo d'água encontra a floresta), aguçando assim as bordas entre os objetos. O filtro de passagem alta é chamado de filtro de otimização de borda. O kernel do filtro de passagem-alta identifica quais células usar na vizinhança e quanto ponderá-las (multiplicá-las por).

TipoDescriçãoExemplo

Nítido

Um filtro 3 por 3

  0    -0.25    0
-0.25    2    -0.25
  0    -0.25    0

Resultado nítido

Mais Nítido

Um filtro 3 por 3

-0.25 -0.25 -0.25 
-0.25  3    -0.25 
-0.25 -0.25 -0.25

Resultado nítido II

Nitidez 3x3

Um filtro de passagem alta 3 por 3

-1 -1 -1 
-1  9 -1 
-1 -1 -1

Resultado nitidez 3x3

Nitidez 5x5

Um filtro de passagem alta 5 por 5

-1 -3 -4 -3 -1 
-3  0  6  0 -3 
-4  6 21  6 -4 
-3  0  6  0 -3
-1 -3 -4 -3 -1

Resultado de nitidez 5x5

Tipos de suavização

Os filtros de suavização (passagem-baixa) suavizam os dados reduzindo a variação local e removendo o ruído. O filtro de passagen -baixa calcula o valor médio (média) para cada vizinhança. O efeito é que os valores altos e baixos dentro de cada vizinhança são calculados com as médias, reduzindo os valores extremos nos dados.

TipoDescriçãoExemplo

Suavizar Média Aritmética

Um filtro 3 por 3

0.111  0.111  0.111
0.111  0.111  0.111
0.111  0.111  0.111

Resultado de Suavizar Média Aritmética

Suavização 3x3

Um filtro de passagem baixa de 3 por 3

1  2  1
2  4  2
1  2  1

Resultado de suavização 3x3

Suavização 5x5

Um filtro de passagem baixa 5 por 5

1  1  1  1  1 
1  4  4  4  1 
1  4 12  4  1 
1  4  4  4  1 
1  1  1  1  1

Resultado de suavização 5x5

Outros filtros

Tipo de propagação de ponto

A função de espalhar pontos retrata a distribuição de luz de uma origem de ponto por uma lente. Isto introduzirá uma leve efeito de desfocagem.

TipoDescriçãoExemplo

Propagação de Ponto

Um filtro 3 por 3

-0.627  0.352 -0.627
 0.352  2.923  0.352
-0.627  0.352 -0.627

Resultado do propagação de pontos