4646T-2 - Programação de Baixo Nível
Prof. Márcio Sarroglia Pinho


Remoção de Ruído em Imagens

O objetivo deste trabalho é a implementação de um algoritmo para remoção de ruído em imagens.


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;

Para ter acesso ao conteúdo de uma imagem, utilize os programas disponíveis nesta página.

Entrega