Realce no domínio do espaço - Parte 2 Processamento por máscara No realce por máscara, o operador é aplicado em uma determinada região na imagem original, onde se considera os valores dos pixels vizinhos e da máscara aplicada para definir o novo valor do pixel na imagem resultante. T[f(x,y)]S ==> Operação sobre todos os píxels dentro da janela S centrada em f(x,y) Processamento por máscara Note que as operações são efetuadas em todos os pixels dentro da região definida pela máscara (ou filtro, ou template) utilizada; O operador T, nesse caso, efetua a operação de convolução entre os pixels da imagem original e os valores do filtro (máscara) para calcular o valor final do pixel da imagem resultante g(x,y); A operação de convolução implica em multiplicar os valores do template com os valores dos pixels correspondentes na região delimitada pelo template na imagem original; O resultado final deve ser colocado na posição correspondente ao centro da região delimitada pelo filtro. Processamento por máscara Essa operação deve ser feita em todos os pixels na imagem, fazendo com que a máscara percorra toda a imagem à medida que os valores dos pixels centrais são calculados. A Equação abaixo mostra a operação de convolução, onde w são os valores do filtro. Processamento por máscara Seja uma imagem f(x,y) que deve ser realçada por um template 3 x 3 (ou seja, uma matriz de 3 linhas e 3 colunas). Considere que os valores contidos no template sejam W1, W2, ... , W9, (a,b,c,d,e,f,g,h,i) são os valores dos níveis de cinza na mesma vizinhança de f(x y) e comparativamente ao Template. (w1 a w9) são os “pesos” , ou seja, os valores dos níveis de cinza em cada posição do template. Processamento por máscara O processamento é feito colocando a máscara sobre a imagem digital, começando no seu primeiro pixel e percorrendo a imagem até o último. A cada passo, a operação de convolução entre a máscara e os pixels contidos na região sob a máscara deve ser feita e o resultado colocado no pixel central. Se a máscara tiver dimensão quadrada (números pares, como 2x2 ou 4x4), o resultado deve ser substituído no primeiro pixel. Processamento por máscara A convolução é feita multiplicando-se os valores dos “pesos” W1-9 ilustrados na figura com os valores de pixel da imagem original (a,b,c,d,e,f,g,h,i), respectivamente. O resultado de cada multiplicação deve ser somado e o resultado somado no pixel central. Nesse caso, o valor do pixel e (que é o pixel central) deverá ser substituído por: O valor do pixel g(x,y) na nova Imagem , na posição (x,y) será dado por: g(x,y) = W1·a + W2·b + W3·c + W4·d + W5·e + W6·f + W7·g + W8·h + W9·i Assim, a convolução de uma máscara com uma imagem consiste na seguinte seqüência de operações: DESLOCA → MULTIPLICA → SOMA Filtro passa-baixa ou de suavização Passa-baixa significa que o filtro deixa “passar” as baixas freqüências da imagem e “filtra” as altas. Assim, se utilizarmos um filtro passa-baixa, as altas freqüências, que são os detalhes e os pequenos objetos presentes na imagem, serão eliminados. Com isso, a imagem resultante será uma imagem suavizada, borrada, sem detalhes. Um dos principais filtros passa-baixa é o filtro da média da vizinhança. Esse filtro calcula a média dos pixels vizinhos e o resultado é colocado no filtro central. Assim, o filtro da média é um filtro onde todos os elementos da matriz são preenchidos com 1, que são os pesos, e o valor final é dividido pelo número de elementos da matriz. Filtro passa-baixa Calculando-se a média da região, a imagem fica “borrada”, pois apenas o valor médio da vizinhança é considerado. Por isso é chamado de filtro passa-baixa. A Figura mostra exemplos de filtros da média da vizinhança de tamanhos 3 x 3 e 5 x 5. Nota-se que o valor final deve ser dividido por 9 para no filtro 3x3 e por 25 no filtro 5x5. Filtro passa-baixa Resultado da convolução com o filtro da média de tamanhos 3x3, 5x5, 9x9, 15x15 e 35x35, respectivamente. Nota-se que o efeito do filtro sobre a imagem depende do tamanho da máscara. De fato, quanto maior o tamanho da máscara, maior o efeito de suavização na imagem. Isto ocorre pois, quanto maior o filtro, mais pixels serão considerados no cálculo do valor médio. a) Imagem Original d) Vizinhança 7 x 7 b) Vizinhança 3 x 3 e) Vizinhança 15 x 15 c) Vizinhança 5 x 5 f) Vizinhança 25 x 25 Filtro passa-alta O filtro passa-alta deixa “passar” as altas freqüências da imagem e “filtra” as baixas. Os pequenos detalhes de uma imagem digital, como as bordas, os contornos, pequenos objetos, etc. são mantidos na imagem original, já que são considerados elementos de alta freqüência. O fundo da imagem, os objetos grandes, sem detalhes, são eliminados da imagem. Filtro passa-alta Assim, o filtro passa-alta tende a realçar as mudanças abruptas de níveis de cinza da imagem. A máscara do filtro passa alta deve ter o peso central positivo e os pesos periféricos negativos, de tal forma que a soma de todos os elementos do template seja igual a zero. Filtro passa-alta Resultado da aplicação de um filtro da média de tamanho 3x3; Nota-se que na imagem realçada o fundo foi eliminado (transformado em preto) e os únicos elementos que ficaram foram os de alta-freqüência, ou seja, os detalhes e as bordas da imagem, além do ruído, que também é um elemento de alta-freqüência. Exercícios Propostos 1. Qual a diferença entre realce ponto-a-ponto e realce por máscara? 2. Explique a diferença entre filtro passa-baixa e filtro passa-alta.