38
1 Sistemas Multimídia Imagem Estática Profa. Débora Christina Muchaluat Saade [email protected] Departamento de Ciência da Computação - UFF

Imagem Estática - Universidade Federal Fluminense

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Imagem Estática - Universidade Federal Fluminense

1

Sistemas Multimídia

Imagem Estática

Profa. Débora Christina Muchaluat Saade

[email protected]

Departamento de Ciência da Computação - UFF

Page 2: Imagem Estática - Universidade Federal Fluminense

29

Sistemas Multimídia

JPEG

Page 3: Imagem Estática - Universidade Federal Fluminense

31

Sistemas Multimídia

JPEG

Page 4: Imagem Estática - Universidade Federal Fluminense

32

Sistemas Multimídia

JPEG

Page 5: Imagem Estática - Universidade Federal Fluminense

34

Sistemas Multimídia

JPEG

Page 6: Imagem Estática - Universidade Federal Fluminense

37

Sistemas Multimídia

JPEG

Page 7: Imagem Estática - Universidade Federal Fluminense

38

Sistemas Multimídia

JPEG

ü  Conclusões sobre a quantização: •  O cálculo dos coeficientes quantizados envolve

arredondamento para o valor inteiro mais próximo •  Os valores de threshold usados aumentam à medida

que as frequências espaciais aumentam •  O coeficiente DC é o maior na matriz transformada •  Muitos dos coeficientes de frequências mais altas

são nulos ü  Últimos 2 pontos são explorados na codificação

por entropia (próximo estágio)

Page 8: Imagem Estática - Universidade Federal Fluminense

39

Sistemas Multimídia

JPEG

ü  Codificação por entropia (4 passos) •  Vetorização (vectoring) •  Codificação diferencial (preditiva) •  Codificação por carreira (run-length) •  Codificação de Huffman

ü  Estágio também conhecido como •  Variable-length coding (VLC) stage

ü  Utiliza codewords de tamanho variável

Page 9: Imagem Estática - Universidade Federal Fluminense

40

Sistemas Multimídia

JPEG

ü  Vetorização •  Transformação da matriz de 2 dimensões em um vetor •  Coeficientes mais baixos são maiores •  Varredura da matriz em zig-zag

Page 10: Imagem Estática - Universidade Federal Fluminense

41

Sistemas Multimídia

JPEG

ü  Codificação diferencial •  Coeficiente DC

ü  Codificação por carreira •  Coeficientes AC

Page 11: Imagem Estática - Universidade Federal Fluminense

42

Sistemas Multimídia

JPEG

ü  Codificação diferencial •  Coeficiente DC •  Como blocos são pequenos, não tem muita variação entre

coeficientes DC de blocos sucessivos –  Valor é codificado como diferença do valor do bloco corrente

para o anterior –  O primeiro em relação a 0 (zero)

•  Ex.: 12, 13, 11, 11, 10, ... •  Diferenças: 12, 1, -2, 0, -1, ... •  Codificação usa o formato (SSS, valor), onde SSS indica o

número de bits necessários para codificador o valor

Page 12: Imagem Estática - Universidade Federal Fluminense

43

Sistemas Multimídia

JPEG

ü  Codificação Diferencial •  Exemplo: 12, 1, -2, 0, 1 •  Valores negativos são codificados com o

complemento do binário (sem sinal) ü  Valor SSS Valor Codificado

•  12 4 1100 •  1 1 1 •  -2 2 01 •  0 0 •  -1 1 0

Page 13: Imagem Estática - Universidade Federal Fluminense

44

Sistemas Multimídia

JPEG

ü  Regras usadas na codificação diferencial

Page 14: Imagem Estática - Universidade Federal Fluminense

45

Sistemas Multimídia

JPEG

ü  Codificação por carreira •  63 Coeficientes AC •  O vetor contém longas strings de 0 (zero) •  Coeficientes AC são codificados usando uma string de pares

de valores •  Codificação usa o formato (skip, value)

–  Skip = número de zeros –  Value = próximo coeficiente não-nulo

•  (0,6)(0,7)(0,3)(0,3)(0,3)(0,2)(0,2)(0,2)(0,2)(0,0) •  (0,0) indica o final da string (todos os coeficientes restantes

são zero - 0)

Page 15: Imagem Estática - Universidade Federal Fluminense

46

Sistemas Multimídia

JPEG

ü  Codificação do valor (value) •  usa o formato (SSS, valor), onde SSS indica o

número de bits necessários para codificador o valor ü  Exemplo: (0,6)(0,7)(3,3)(0,-1),(0,0) ü  Coef. AC Skip SSS Valor

•  0,6 0 3 110 •  0,7 0 3 111 •  3,3 3 2 11 •  0,-1 0 1 0 •  0,0 0 0

Page 16: Imagem Estática - Universidade Federal Fluminense

47

Sistemas Multimídia

JPEG

ü  Codificação de Huffman •  Usada para codificar a saída

das codificações diferencial e por carreira

ü  Para coeficientes DC, o campo SSS é codificado com Huffman •  Decodificador determina sem

dúvidas o primeiro SSS do restante dos bits codificados

ü  Tabela de Huffman default ou específica

Page 17: Imagem Estática - Universidade Federal Fluminense

48

Sistemas Multimídia

JPEG

ü  Exemplo: 12, 1, -2, 0, 1 ü  Valor SSS SSS(Huff.) Valor Bitstream

•  12 4 101 1100 1011100 •  1 1 011 1 0111 •  -2 2 100 01 10001 •  0 0 010 010 •  -1 1 011 0 0110

Page 18: Imagem Estática - Universidade Federal Fluminense

49

Sistemas Multimídia

JPEG

ü  Para coeficientes AC, os campos Skip e SSS são tratados em conjunto (como um símbolo composto) •  Skip varia de 0 a 15 •  SSS varia de 0 a 10

ü  Tabela de Huffman default ou específica (deve ser enviada junto com o bitstream)

Page 19: Imagem Estática - Universidade Federal Fluminense

50

Sistemas Multimídia

JPEG

ü  Exemplo: (0,6)(0,7)(3,3)(0,-1),(0,0) ü  Coef. AC Skip/SSS cód. Huff. Valor

•  0,6 0/3 100 110 •  0,7 0/3 100 111 •  3,3 3/2 111110111 11 •  0,-1 0/1 00 0 •  0,0 0/0 1010 (end of block)

ü  Bitstream: •  100110 100111 11111011111 000 1010

ü  No exemplo: •  30 bits para codificar coeficientes AC, assumindo 7 bits para coeficiente

DC = total de 37 bits •  Suponha que cada pixel da matriz 8x8 original tivesse 8 bits •  Taxa de compressão resultante:

–  512/37 => 13,8:1

Page 20: Imagem Estática - Universidade Federal Fluminense

51

Sistemas Multimídia

JPEG

ü  Construção dos quadros •  Definição da estrutura do bitstream completo de

uma imagem – Quadro (frame) JPEG

•  Estrutura hierárquica

Page 21: Imagem Estática - Universidade Federal Fluminense

52

Sistemas Multimídia

JPEG

Page 22: Imagem Estática - Universidade Federal Fluminense

53

Sistemas Multimídia

JPEG

ü  Primeiro nível (level 1) •  Delimitador de início •  Cabeçalho

–  Tamanho total da imagem em pixels –  Número e tipos dos componentes usados na representação

•  Tons de cinza, RGB, YCrCb

–  Formato de digitalização •  4:2:2, 4:2:0, ...

•  Conteúdo •  Delimitador de fim

Page 23: Imagem Estática - Universidade Federal Fluminense

54

Sistemas Multimídia

JPEG

ü  Segundo nível (level 2) – conteúdo do quadro •  componentes chamados scan •  cabeçalho (scan header) que contém

–  Identidade dos componentes (R, G, B, ...) – Número de bits usados para digitalizar cada

componente – Tabelas de quantização utilizadas para codificar cada

componente

Page 24: Imagem Estática - Universidade Federal Fluminense

55

Sistemas Multimídia

JPEG

ü  Terceiro nível (level 3) ü  Cada componente consiste de:

•  1 ou mais segmentos e cabeçalhos ü  Segmento

•  contém um grupo de blocos 8x8 –  DC, skip/value, skip/value, ..., end-of-block

ü  Cabeçalho (segment header) •  Tabelas de Huffman utilizadas na codificação de cada

segmento ü  Cada segmento pode ser decodificado de forma

independente dos outros •  impede a propagação de erros em outros segmentos

Page 25: Imagem Estática - Universidade Federal Fluminense

56

Sistemas Multimídia

Codificador JPEG

Page 26: Imagem Estática - Universidade Federal Fluminense

57

Sistemas Multimídia

Decodificador JPEG

Page 27: Imagem Estática - Universidade Federal Fluminense

58

Sistemas Multimídia

Decodificador JPEG

ü  1. Decodificador de quadros •  Identifica tabelas utilizadas

ü  2. Decodificação de Huffman •  Usando tabela identificada

ü  3. Decodificação Diferencial (coef. DC) e por Carreira (coef. AC)

ü  4. “Desquantização” •  Usando tabela identificada

ü  5. Transformada de Co-senos inversa ü  6. Construção da imagem final

Page 28: Imagem Estática - Universidade Federal Fluminense

59

Sistemas Multimídia

Decodificador JPEG

ü  Transformada de Co-senos inversa:

Page 29: Imagem Estática - Universidade Federal Fluminense

60

Sistemas Multimídia

JPEG

ü  Descompressão pode ser feita de forma progressiva •  Modo progressivo •  Modo hierárquico

Page 30: Imagem Estática - Universidade Federal Fluminense

61

Sistemas Multimídia

JPEG

ü  Modo progressivo •  Seleção de espectro:

– Primeiro o coeficiente DC e os coeficientes de baixa frequência são enviados para cada bloco; depois os coeficientes de alta frequência

Page 31: Imagem Estática - Universidade Federal Fluminense

62

Sistemas Multimídia

JPEG

ü  Modo progressivo •  Aproximação sucessiva:

–  Primeiro o coeficiente DC é enviado para cada bloco;

–  depois os bits dos outros coeficientes do mais significativo para o menos significativo

–  Técnica mais interessante se imagem tem muita variação (coeficientes de alta frequência altos)

Page 32: Imagem Estática - Universidade Federal Fluminense

63

Sistemas Multimídia

JPEG

ü  Vantagens do modo progressivo: •  envia os coeficientes mais importantes juntos •  Quando recebe os coeficientes mais importantes, já

começa a mostrar a imagem – Efeito: imagem aparece borrada e vai ficando mais

nítida conforme vai chegando o resto

Page 33: Imagem Estática - Universidade Federal Fluminense

64

Sistemas Multimídia

JPEG

ü  Modo hierárquico: •  Filtragem de amostras com redução de resolução

pelo fator 2 em múltiplas dimensões •  Codificação da imagem reduzida •  Gradativamente envia restante das amostras

ü  Efeito no receptor: •  Melhora gradativa da resolução geométrica

ü  Interessante quando dispositivo receptor não tem resolução suficiente para apresentar a imagem •  Basta mandar a imagem reduzida

Page 34: Imagem Estática - Universidade Federal Fluminense

65

Sistemas Multimídia

JPEG

ü  Novo padrão JPEG 2000 ü  ISO/IEC 15444 ü  http://www.jpeg.org ü  http://www.iso.org ü  ISO/IEC 15444-1:2000 - Part 1: Core coding system ü  ISO/IEC 15444-3:2002 - Part 3: Motion JPEG 2000 ü  ISO/IEC 15444-4:2002 - Part 4: Conformance testing ü  ISO/IEC 15444-6:2003 - Part 6: Compound image file

format

Page 35: Imagem Estática - Universidade Federal Fluminense

66

Sistemas Multimídia

Imagem Gráfica (Vetorial)

Profa. Débora Christina Muchaluat Saade

[email protected]

Departamento de Engenharia de Telecomunicações - UFF

Page 36: Imagem Estática - Universidade Federal Fluminense

67

Sistemas Multimídia

SVG

ü  Scalable Vector Graphics - versão 1.1 (jan. 2003) ü  Padrão do W3C (www.w3.org) e ISO/IEC 15948:2003 ü  Linguagem declarativa (XML) para descrição de

gráficos bidimensionais •  Página web SVG (<svg>) ou embutido em XHTML

ü  Linguagem Modular •  Perfil XHTML+MathML+SVG

ü  Visualizadores SVG (plugins) •  Adobe SVG Viewer, Corel SVG Viewer

ü  Editores que exportam no formato SVG •  Adobe Illustrator, Corel Draw

Page 37: Imagem Estática - Universidade Federal Fluminense

68

Sistemas Multimídia

SVG

ü  Características Principais: •  Lida com objetos geométricos (linhas e curvas)

–  Formas básicas: rect, circle, ellipse, line, polyline, polygon •  Símbolos definidos pelo usuário

–  <symbol> •  Inclusão de imagens estáticas (raster)

–  Visualizador deve dar suporte a formatos PNG e JPEG no mínimo

•  Formatação de texto (ou usa folhas de estilo CSS) •  Definição de metadados

Page 38: Imagem Estática - Universidade Federal Fluminense

69

Sistemas Multimídia

SVG

ü  Características Principais: •  Suporte a Animação

–  <animate> •  Interatividade

–  Execução de ações (animações ou scripts) em resposta a eventos como click, mouseover, mousedown...

•  Definição de elos –  <a href=“...” >

•  Definição de alternativas de conteúdo basedas em atributos de teste (usuário e plataforma)

–  <switch>