Fernanda oliveira
Departamento de Ciências Exatas e Naturais
Ciência da Computação
Tarefa 03
Disciplina: Sistemas Multimídia (1200786)
Professor: Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa Horário:
Terçafeira (20h30min – 22h20min) e Quartafeira (18h40min – 20h30min)
Aluno (a):
I. Normalmente as imagens digitais apresentamse em arquivos cujos dados estão codificados
(comprimidos). Exemplos mais usuais são as figuras JPEG, GIF, PNG, entre outras. Contu do, há uma classe de formatos de imagens digitais que não possuem compressão. Tais for matos são o PBM (imagens binárias), PGM (imagens em nível de cinza) e PPM (imagens coloridas no formato RGB). As imagens nestes formatos podem ser escritas em ASCII puro. Elas são extremamente simples e consistem no ponto de partida para a elaboração de programas de manipulação de imagens. A.Pesquise sobre estes formatos e escreva um programa (em qualquer linguagem desejada) para ler os pixels de arquivos PBM e PGM e armazenálos em um array 2D. Este pro grama também terá que, a partir de um array 2D, gerar uma imagem PBM ou PGM. II. Considerando a imagem file.pgm fornecida, implemente o algoritmo ordered dither apre sentado a seguir, considerando a matriz de Dither com 16 elementos (matriz D abaixo).
Salve o resultado deste processo de pontilhado ordenado em uma imagem binária (formato
PBM). Dica: os pixels da imagem PGM que estão entre o intervalo [0, 255] devem ser nor malizados para o intervalo [0, 15], antes do processo de pontilhado iniciar. Para isso, cada pixel p i da imagem em nível de cinza deve tornarse um pixel normalizado p n através de p n= (int) floor 15⋅ pi / 255 . A variável n representa a ordem da matriz de Dither (no caso, n =4 ). As variáveis N e M representam, respectivamente, o número de colunas e linhas da imagem I (ou array 2D). A matriz O é a imagem