1 2 1 1 2 1
2 4 2 (A) (1/16) * 2 4 2 (B)
1 2 1 1 2 1
Ambas as matrizes são as mesmas, exceto que a matriz B é multiplicada pela soma de seus elementos. Quando convoluídos com uma imagem, eles dão quase a mesma imagem borrada.
Qual é a diferença exata entre eles e quando devem ser usados?
image-processing
filters
gaussian
Animesh Pandey
fonte
fonte
Respostas:
O mais à direita (onde você divide pela soma) garante que a saída do filtro tenha a mesma faixa dinâmica que a entrada.
Na verdade, as imagens borradas de saída não são as mesmas porque seus valores de pixel são diferentes. Você tem a sensação de que eles são semelhantes porque o seu software (suponho que o Matlab) refaça os valores de intensidade dos pixels para um intervalo aceitável pelas telas comuns, ou seja, valores de 8 bits entre 0 e 255. Se você usou um software ou biblioteca "perto do metal", você deverá fazer essa operação sozinho.
Faixa dinâmica de dados
A faixa dinâmica de uma imagem é fornecida pelos valores mínimo e máximo de intensidade presentes na imagem ou pela intensidade mínima e máxima que podem ser representados pelo formato digital usado para armazenar os valores de intensidade. (No contexto, geralmente fica claro qual das definições está em uso.)
Os intervalos típicos são[ 2 , 255 ] (com espaçamento inteiro) que corresponde à quantização de 8 bits e [ 0 , 1 ] para valores de ponto flutuante (precisão simples ou dupla). A mesma convenção é usada em computação gráfica, OpenGL, etc.
Se você tirar uma imagem constante com o valor 1 em qualquer lugar:
A partir deste exemplo simples, você pode ver que um filtro preservou o enery da imagem, enquanto o segundo aumentou.
Embora seja inofensivo nesse caso , pode levar a inúmeros problemas na prática . Por exemplo, algoritmos iterativos podem divergir (devido a estouros numéricos ), seu computador pode ficar sem bits para representar seus dados ou você pode perder precisão (os valores de ponto flutuante de precisão simples e dupla não têm uma precisão uniforme no intervalo de os valores possíveis).
fonte
Quando você envolve uma imagem com um filtro, o resultado depende dos valores do filtro e do pixel da imagem. se o filtro não somar um, terá sua própria contribuição positiva para a convolução. Por exemplo, se você envolver uma imagem que consiste apenas em um valor constante, com um filtro que não totalize um, a convolução resultará em uma imagem com um valor constante mais alto. Portanto, esse filtro alteraria o brilho médio da imagem, o que pode não ser desejável.
A diferença exata entre as duas imagens seria um termo constante, ou seja, a soma do núcleo do filtro, a faixa dinâmica que é a diferença entre valores positivos e negativos, permaneceria exatamente a mesma.
fonte