Neste primeiro Trabalho Pratico (TP1) voce vai usar os seguintes arquivos que se encontram neste diretorio. 1- O programa "gnoise imagem.pgm" que adiciona ruido gaussiano (media zero e desvio padrao sigma) a uma imagem.pgm 2- A biblioteca padrao "lib.h" a ser incluida nos seus programas-fontes .c 3- A biblioteca padrao "lib.c" a ser compilada com seus programas-fontes .c, assim: >>>> gcc -o meu-programa meu-programa.c lib.c -lm A titulo de exemplo, voce pode compilar o arquivo "invert.c", contido neste diretorio, que realiza a inversao da imagem "chess.pgm": >>>> gcc -o invert invert.c lib.c -lm Execute o programa: >>>> invert chess.pgm e verifique o resultado. 4- spikeNoise.c : trecho de um programa em C que adiciona ruido impulsivo a uma imagem original (dados de entrada: nivel minimo, nivel maximo e densidade do ruido). Verifique a qualidade deste algoritmo cuja eficiencia nao eh garantida por mim. 5- Lenna-ruido.pgm : imagem com modelo do ruido impulsivo (o algoritmo acima deve gerar algo parecido com esta imagem) 6- *.pgm : outras imagens para testes. Atividade: 1. Implemente um programa que realiza a filtragem da media a partir da convolucao de uma imagem ruidosa com uma mascara de tamanho nxn (n, impar, eh um parametro de entrada). 2. Implemente o filtro de suavizacao gaussiano (separavel), tal como abordado em sala de aula, considerando n=4*sigma + 1 (n eh o parametro de entrada do filtro). 3. Analise os resultados das duas filtragens acima a partir de diferentes niveis (desvios padroes) e tipos de ruido em imagens de entrada (algumas delas disponiveis neste diretorio). Para a imagem "chess.pgm", por exemplo, execute o programa gerador de ruido gaussiano, assim: >>>>> gnoise image.pgm sigma 4. Compare o tempo de execucao dos dois procedimentos de filtragem. 5. Aplique filtros lineares a imagens com diferentes densidades de ruido impulsivo e analise os resultados. 6. Aplique o filtro da mediana (diferentes tamanhos de janela NxN) as imagens com ruido impulsivo e gaussiano e analise os resultados. 7- Compare objetivamente os resultados acima, considerando o erro medio-quadratico e a relacao sinal-ruido das imagens. 8. Prepare um relatorio sucinto contendo os principais resultados e comentarios importantes sobre o trabalho efetuado, assim como uma conclusao. Data de entrega e apresentacao: ----------------------------------------------------- OBS.: O diretorio TP1 contem os seguintes arquivos: 1. TP1-Leiame: este arquivo que vc esta lendo. 2. lib.h, lib.c: biliotecas padroes 3. gnoise.c, gnoise: programa-fonte em C e executavel que geram ruido gaussiano 4. spikeNoise.c: trecho de programa em C que gera ruido impulsivo 4. invert.c: programa-fonte exemplo em C 5. chess.pgm, surpresa.pgm, LeChanteur.pgm, tulip.pgm etc: imagens de teste .pgm (portable graymap em ASCII). Leia o conteudo destes arquivos para ver seu cabecalho/metadados. As bibliotecas e alguns programas mencionados aqui estao contidos no livro Algorithms for Image Processing and Computer Vision, J. R. Parker, John Wiley,Inc., New York, 1997.