Computação Gráfica
Prof. Márcio Sarroglia Pinho
Remoção de Ruído em Imagens
Resumo
O objetivo deste exercício é a implementação de um algoritmo para remoção de
ruído em imagens.
Para ter acesso ao conteúdo de uma
imagem, utilize a biblioteca disponível nesta
página.
Para este exercício, utilize as imagens Ruido1, Ruido2 e Ruido3, disponíveis do
ZIP da ImageClass.
Atenção: Para as atividades aqui descritas, gere um relatório como
este.
Uma das técnicas que pode ser usada para a remoção de ruído é o Filtro da Mediana.
A ideia central do algoritmo é tomar os pontos ao redor de um ponto (x,y), colocar as intersidades em ordem e obter a mediana destes dados
ordenados. A nova cor do ponto será a mediana.
Considerando que se utilize uma janela de 3x3 ao redor de um ponto teremos 9
números. Colocando este dados em um vetor, pode-se ordená-los através do
seguinte trecho de código.
void
OrdenaVetor(int window[])
{
int temp, i , j;
for(i = 0; i < 9; i++){
temp = window[i];
for(j = i-1; j
>= 0 && temp < window[j];
j--){
window[j+1] = window[j];
}
window[j+1] = temp;
}
}
Para aplicar o algoritmo da Mediana, uma possibilidade é utilizar o
seguinte algortimo:
int
Vetor[9];
MontaVetor(x,y, Vetor); // Coloca em VETOR os valores das intensidades
ao redor do ponto x,y.
OrdenaVetor(Vetor);
Mediana = Vetor[5];
Imagem[x][y] = mediana;
FIM.