O que é convolução de imagens?
A convolução de imagens calcula cada pixel de saída a partir de uma vizinhança ponderada de pixels de entrada definida por uma matriz kernel. Os valores e as dimensões do kernel determinam como as informações ao redor contribuem para o resultado.
Como funciona a convolução de imagens
Um kernel de convolução percorre uma imagem raster e combina amostras próximas em um novo valor em cada posição. Kernels simétricos passa-baixas suprimem variações rápidas, enquanto kernels de derivadas e passa-altas enfatizam mudanças direcionais ou estruturas finas. As implementações devem definir um ponto de ancoragem, o tratamento dos canais, a precisão numérica e o tratamento das posições fora dos limites da imagem. Em um fluxo de processamento de mídia, a convolução é a base do desfoque, do aumento de nitidez, do suporte à reamostragem e de muitas etapas de pré-processamento.
Informações essenciais
- Coeficientes de kernel cuja soma é um geralmente preservam o brilho de áreas uniformes; um kernel de soma zero, por sua vez, remove regiões constantes e responde principalmente a mudanças.
- Um kernel bidimensional separável pode ser calculado em uma passagem horizontal e outra vertical, reduzindo o trabalho e produzindo o mesmo resultado, exceto por diferenças de arredondamento.
- O preenchimento com zeros, pixels refletidos, bordas replicadas ou coordenadas com retorno circular gera valores diferentes nas bordas, mesmo quando todos os pixels internos são idênticos.
Quando a convolução de imagens é importante
Escolha um kernel adequado à operação desejada, como suavização, aumento de nitidez ou detecção de bordas, e defina explicitamente seu comportamento nos limites. Kernels grandes aumentam o custo computacional, enquanto kernels mal normalizados podem alterar o brilho.