Imagem Digital Paradigma dos 4 Universos Imagem no Universo Matemático Imagem no Universo de...

Post on 17-Apr-2015

172 views 36 download

Transcript of Imagem Digital Paradigma dos 4 Universos Imagem no Universo Matemático Imagem no Universo de...

Imagem Digital• Paradigma dos 4 Universos• Imagem no Universo Matemático• Imagem no Universo de Representação (Universo Discreto)

• Amostragem• Quantização

• Imagem no Universo de Codificação:• Palette de cores• RGBRGB• RRGGBB• Compressão• formato PPM• formato BMP• Biblioteca IM

• Processamento de Imagens• Ampliar e Reduzir• Realçar e Borrar• Combinação de Imagens

• Mistura• Transparência• Adição e Subtração• Morphing

• Outros Assuntos• Dithering• Sprites• Animações (?)

Paradigma dos 4 Universos

UniversoFísico

Universo deRepresentação

Universo deImplementação

UniversoMatemático

Exemplo:VOZ HUMANA

879987987898

8 9 8 7 8 9 7 8 9 9 7 8

Discretização(Amostragem)

Representação(Vetor)

Paradigma dos 4 Universos

UniversoFísico

Universo deRepresentação

Universo deImplementação

UniversoMatemático

Imagens no Universo Físico

Amostragem e Quantização

Codificação e Formatos

Funçõesno Espaço de Cor

Cores no Universo Físico

Representação de Cor

Especificação de Cor

Modelos Matemáticos de

Cor (Espaço)

COR IMAGEM

Imagem bitmapx

Imagem vetorial

Imagens como Funções

• Uma linha de uma imagem PB: Domínio 1D

• Uma imagem Colorida: Domínio 3D (?)

• Uma imagem PB: Domínio 2D

Amostragem

• Discretização espacial

• Resolução (XxY pixels)

Quantização• Discretização no espaço de cores (redução das cores usadas)

• Critérios para escolha das cores (exemplos em 256 cores):

• Quantização Uniforme (256 cores) • Algoritmo de Populosidade (16 cores)

• Quantização por Aglumeração (16 cores) Imagem Original (24 bits)

Digitalização de Imagens

amostragem15 15 15 15 15 15 15

15 10 12 13 5 15 15

15 15 10 09 11 15 15

15 15 13 12 10 15 15

15 15 08 06 12 15 15

15 15 15 15 15 15 15

quantização

315x260 – 256 cores

64x53 - 16 cores

codificação

64x53 – 256 cores

Codificação

• Imagem no Universo de Codificação:• Palette de cores• RGBRGB• RRGGBB• Compressão• formato PPM• formato BMP• Biblioteca IM

Obs: Imagens em formato raster (não vetorias)

Palette de Cores

206206206

313665

132148198

222231247

198214231

165193214

159173179

116124124

105109105

17588

454388

16371198

14399202

125123132

149148180

00255

BlueGreenRed

• Geralmente com 256, 16 ou 4 cores

15 15 15 15 15 15 15

15 10 12 13 5 15 15

15 15 10 09 11 15 15

15 15 13 12 10 15 15

15 15 08 06 12 15 15

15 15 15 15 15 15 15

Palette

Os pixels da imagem fazem referência aos índices da Palette

RRGGBB

Verm.

Verde

AzulPi

xel 2

Plano de Cores

00 01 02 060503 04

07 08 09 . . .

Pixe

l 0

Pixe

l 5

Pixe

l 4

Pixe

l 3

Pixe

l 1

06

06

Organização dos pixels de uma imagem por planos de cores

Ban

cos

(Jav

a)

Informação é uma componente da cor

RRGGBB

• Declaração em C das matrizes R, G e B de uma imagem colorida com resolução 200x300?

• Qual o tipo a ser usado?• int, float, char, double ou void ?• short ou long ?• unsigned ?

unsigned char R[60000], G[60000], B[60000];

• Atenção! Normalmente são ponteiros cujo espaço são alocados dinamicamente (malloc).

RGBRGB

00 01 02 0807060503 04 1009 11

0 1 2

...

1312 14

w-1

15 16 17 18 ...

x

yPixel (x,y) de uma imagem WxH

offset=3*(w*y+x);red = rgb_vector[offset];green = rgb_vector[offset+1];blue = rgb_vector[offset+2];

01

2

h-1

3

...

Compressão de imagens

Compressão deImagens

Compressão deImagens

Sem PerdaSem Perda Com PerdaCom Perda

Preserva exatamente o conteúdo da imagem

Taxas de compressão 3 : 1

Preserva de forma controlada o nível de qualidade da imagem

Taxas de compressão que chegam a valores de mais de 100 : 1

Métodos de compressão

Sem perdas

» Run length encoding (RLE) - repetição

» Huffman coding - histograma

» Predictive coding - diferenças

» Block coding (LZW) - dicionário

Com perdas

» Truncation coding - reduz a representação

» Predictive coding - descarta diferenças altas

» Block coding - dicionário aproximado

» Transform coding - descarta frequencias altas

Métodos compostos: JPEG, MPEG

Processo de compressão e descompressão

Dados daImagemOriginal

32, 45, 57, 68, 23, 100,98, ...

32, 45, 57, 68, 23, 100,98, ...

Imagem Comprimida

32, 45, 57, 68, 23, 100,98, ...

Dados daImagemOriginal

Compressãoda imagem

Imagem Comprimida

32, 45, 57, 68, 23, 100,98, ...

Transporte e/ouArmazenamento

Descompressãoda imagem

Compressão - RLE

Objetivo

Reduzir a quantidade de dados redundantes.

Exemplo

AAAAAAxxx 6A3x

Caracterísiticas

Simples e rápido, porém a eficiência depende da imagem a ser comprimida.

Codificação de Huffman

s pa2 0.4 0.4 0.4 0.4 0.6a6 0.3 0.3 0.3 0.3 0.4a1 0.1 0.1 0.2 0.3a4 0.1 0.1 0.1a3 0.06 0.1a5 0.04

s probabilidadea2 0.4 1 0.4 1 0.4 1 0.4 1 0.6 0

a6 0.3 00 0.3 00 0.3 00 0.3 00 0.4 1

a1 0.1 011 0.1 011 0.2 010 0.3 01

a4 0.1 0100 0.1 0100 0.1 011

a3 0.06 01010 0.1 0101

a5 0.04 01011

Redundância de Codificação

r p(r) Code 1 l(r) l(r)p(r) Code 2 l(r) l(r)p(r)0 0.19 000 3 0.57 11 2 0.38

1/7 0.25 001 3 0.75 01 2 0.502/7 0.21 010 3 0.63 10 2 0.423/7 0.16 011 3 0.48 001 3 0.484/7 0.08 100 3 0.24 0001 4 0.325/7 0.06 101 3 0.18 00001 5 0.306/7 0.03 110 3 0.09 000001 6 0.181 0.02 111 3 0.06 000000 6 0.12

1.00 Lavg= 3.00 2.70

rk = tons de cinza em uma imagem, k=0, 1, ...,

p(rk) = nk / n

onde nk = número de pixels com tom rk

n = número de pixels da imagem

Lavg=

kk

kavg rprlL

1

0

111001

001

0001

00001

000001000000