78
Memorizzazione delle immagini Metodi e Formati

Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Memorizzazione delle immagini

Metodi e Formati

Page 2: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Dati bitmap

Insieme di valori numerici che specificano i colori dei singoli pixel

Page 3: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Linearizzazione per righe

Page 4: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Formati e file grafici

• Come si registrano i dati ? Quale formato utilizzare ? GIF, JPEG, ecc.

• Ciascun formato si preoccupa di definire – quali sono le informazioni necessarie – in che modo vengono memorizzate

Page 5: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Il formato raw

• elenco dei valori numerici di ciascun pixel

• file che permette di ricostruire l’immagine

• Sembra un modo semplice ed universale per descrivere un’immagine

Page 6: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Problemi con il raw format

• Chi legge il file non conosce … – le dimensioni in pixel dell’immagine – quanti bit per pixel – cosa rappresenta il valore numerico (intensità

luminosa, valore di colore, ecc.)

• quando inizia o termina un pixel?• quando inizia o termina una linea?

Page 7: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

File grafici: esigenza di un formato0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 00000000000

0000000000

0000000000

1111111100

1 1 1 2 1 1 1 1 0 0000

000000000

000000000

000000000

0 0 0 0 0 0 0 00 0 0 0 0 0 0 0

1111111

1111111

2222222

1222211

11

1111

1222

111111

21

11111 1

11

11

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4120

345678901

Immagine Quantizzata

Immagine

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 2 1 1 1 1 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0000 0 0 0 0 0 0 0 0 0 0 0 0000 0 0 0 0 0 0 00 0 0 1 0001 1 21 1 111 0 0 0 1 0001 1 22 1 12 1 0 0 0 1 0001 1 22 12 1 10 0 0 1 0001 1 22 2 1 11 0 0 0 1 0001 1 22 12 1 1 0 0 0 1 0001 1 21 1 1 110 0 0 1 0001 1 21 1 1 11

Bitmap

15 x 12

Rendering (20 x 9) Rendering (15 x 12)

Page 8: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

File grafici con formato esplicito

• Esistono più di 200 formati di file grafici

• Parametri– profondità di pixel – palette (esistenza e tipo)– compressione dati (esistenza e tipo)– formati utilizzabili su una o più piattaforme– formati per applicazioni specifiche

Page 9: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

File bitmap

• I formati bitmap variano molto nei dettagli ma condividono la stessa struttura generale

• Un file bitmap è organizzato– componenti base – componenti specifiche

Page 10: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Componenti di base

• intestazione (header)• dati bitmap • coda (footer) (non sempre presente)

HEADER

DATI BITMAP

HEADER

DATI BITMAP

FOOTER

Page 11: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Componenti specifiche

• la palette dei colori• la tabella delle scan-line• la tabella di correzione dei colori• l’indice delle bitmap (immagini multiple)

Page 12: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

File bitmap

FOOTER

HEADER

PALETTE

INDICEBITMAP

DATI BITMAP 1

DATI BITMAP 2

DATI BITMAP N...HEADER

DATI BITMAP

PALETTE FOOTER

HEADER

PALETTE

TABELLASCAN-LINETABELLA

CORREZIONECOLORI

DATI BITMAP

Page 13: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Header (Intestazione)

• Informazioni sui dati bitmap all’inizio del file

• Campi fissi comuni:– identificatore del formato– linee per immagine, pixel per linea– bit per pixel, canali di colore– tipo di compressione– origine X e Y dell’immagine– spazio utilizzato

Page 14: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Organizzazione dei dati bitmap

• Dati bitmap parte più consistente di un file con formato bitmap

• Esistono due metodi per organizzare i dati dei pixel di un’immagine:– organizzazione di tipo scan line– organizzazione di tipo planare

Page 15: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Organizzazione scan-line

• Immagine formata da una o più scan line

• scan line = dati che rappresentano i pixel

• dimensione dei pixel x pixel per scan line àpunto di inizio di ogni scan line

Page 16: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Pixel organizzati in una scan line

Scan line 0Scan line 1Scan line 2

.

.

.

Pixel 0 Pixel 1 Pixel 2 Pixel 3

...

Page 17: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Organizzazione di tipo planare

• Dati dell’immagine in due o più piani

• Immagine a più colori: tre blocchi di dati bitmap (un blocco per ogni colore primario)

• Blocco costituito da righe, come scan line

• Blocchi contigui o sparsi nel file

Page 18: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Dati di pixel organizzati in piani

...

..

...

...

.

Piano blu............

Piano verde............

Piano rosso

Page 19: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Compressione delle immagini digitali

Page 20: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Esempi di ridondanza dei dati

Page 21: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Diagrammi a blocchi della compressione

Page 22: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Meccanismi di compressione dati

• simmetrici/asimmetrici

• lossless/lossy

• adattativi/non-adattativi

Page 23: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Forme comuni di compressionedei dati bitmap

• RLE (Run Length Encoding)• LZW (Lempel-Ziv-Welch)• CCITT (variante del metodo di Huffman)

• Uso di trasformata DCT (Discrete Cosine Transform, usato in JPEG)

Page 24: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

RLE

Page 25: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Metodo Run Length Encoding

Si adatta a qualsiasi tipo di dato

• in genere non raggiunge rapporti di compressione molto buoni

• ma è veloce da eseguire

Page 26: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Metodo RLE

• Sequenza di elementi (codifiche di pixel) uguali detta run• run “codificato” con due byte: numero + codice

– Sequenza AAAAAAAAAAAAAAA (15 volte la lettera A) …– … codificata come <15, A>

• Codifica RLE detta packet RLE• Si genera un packet ad ogni cambiamento di carattere

– Sequenza AAAAAAbbbXXXXXt …– … codificata come <6,A><3,b><5,X><1,t>

Page 27: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Codifica/Decodifica RLE

Codifica• Si genera un packet ad ogni cambiamento di carattere

– Sequenza AAAAAAbbbXXXXXt …– … codificata come <6,A><3,b><5,X><1,t>

Decodifica• Per ogni coppia <#c,p>, si genera una sequenza di p

lunga #c – Sequenza <6,A><3,b><5,X><1,t> …– … decodificata come AAAAAAbbbXXXXXt

Page 28: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Applicazione di RLE (BMP)

• Tipico di immagini binarie, con lunghi run

• Varianti del metodo prendono in considerazioni pixel adiacenti su linee diverse

Page 29: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

LZW

Page 30: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Compressione dati: metodo Lempel-Ziv-Welch

• metodo molto diffuso (compress, pkzip, gzip, ecc.)

• lavora su tutti i tipi di dati

• veloce in compressione e decompressione

• metodo a sostituzione o a dizionario

Page 31: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Metodo LZW

• Immagine come sequenza di dati

• Si identificano pattern (sottostringhe o sottosequenze) e ricercati nel dizionario

• Se non presenti, si costruisce un codice per il pattern e si aggiunge al dizionario

•• Se presente, il codice viene scritto nell’output del file

compresso

Page 32: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Esempio di compressione LZW input: 010121010100000000

• Prima fase: identificazione dei pattern (si cerca il pattern più lungo non ancora in dizionario)0 1 01 2 10 101 00 000

010121010100000

abcdefgh

• Seconda fase: codifica della stringa a b c d e f g h h

Page 33: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Esempio di codifica LZW

………………………… 39 39 126 126 …… 39 39 126 126 …… 39 39 126 126 …… 39 39 126 126 …………………………

Page 34: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Esempio di codifica LZW

………………………… 39 39 126 126 …… 39 39 126 126 …… 39 39 126 126 …… 39 39 126 126 …………………………

Page 35: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Metodo di Differencing

• Si usa per rendere i dati “meglio comprimibili”

• Soprattutto per immagini con variazioni continue di colore …– pixel adiacenti variano molto poco – si memorizza la differenza tra valori adiacenti – riduzione della quantità di info

Page 36: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Metodo di Huffman

• Info di natura statistica (frequenza con cui si presentano determinate sequenze)

• Codificare sequenze – più frequenti con “parole corte”– meno frequenti con “parole lunghe”

Page 37: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Esempio: Huffman

• Input 11100011 01101110 10011000 01101110 01101110 11001011

– Sottostringa Frequenza Codifica– 01101110 35 % 11– 10011000 25 % 10– 01010100 20 % 01– 11100011 12 % 001– 00001000 5 % 0001– 11001011 3 % 0000

– Output compresso: 001 11 10 11 10 0000

Page 38: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Applicazione di Huffman

Page 39: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Compressione e formati

Page 40: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Formati di file grafici

• Adobe Photoshop• Microsoft BMP • CGM• EPS• GIF• JPEG – JFIF• Macintosh Pict

• Microsoft RIFF (.AVI, .WAV)

• MPEG• PDF• PNG• QuickTime• TGA• TIFF

Page 41: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

GIF (Graphics Interchange Format)

• Tipo: Bitmap• Colori: da 1 a 8 bit (da 2 a 256 colori)• Compressione: LZW• Piattaforme: Macintosh, Windows, Unix• Formato di uso generale: ben definito, ben documentato,

molto diffuso, supportato da numerose applicazioni• Sviluppato dalla Compuserve Inc.

– ne ha definito le specifiche nel 1987– ha aggiunto nel 1989 nuove funzionalità – esistono due versioni del formato (GIF87a e GIF89a)

Page 42: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

GIF Interlacciate

• Interlacciamento = suddivisione del fotogramma in linee numerate che vengono poi lette in un ordine stabilito, diverso da quello sequenziale

• Bozza dell’immagine, che si affina sempre più

Page 43: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

GIF animate

• È possibile costruire delle animazioni “componendo” una sequenza di immagini

codificate come GIF

• Esistono diversi programmi che permettono di costruire queste animazioni– http://www.mindworkshop.com/alchemy/gifconcl.html– Livelli di Photoshop o GIMP

Page 44: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

TIFF (Tagged Image File Format)

• Tipo: Bitmap• Colori: da 1 a 24-bit• Compressione: RLE, LZW, nessuna, ma anche

JPEG e JPEG 2000• Piattaforma: Macintosh, Windows, Unix• Formato bitmap molto versatile• Sviluppato da Aldus• Possibilità di memorizzare più immagini nello

stesso file

Page 45: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

PNG (Portable Network Graphics)

• Formato standard potente e versatile (W3C)• Motivazione: royalty su LZW, uso di LZ77

(compressione efficiente, differenza e predizione)

• completa portabilità su tutti i sistemi• Full coloro + trasparenza (alpha-channel)• metodo di interlacciamento molto efficace• codici di autocontrollo per verifica di dati

trasmessi

Page 46: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Adobe Photoshop

• Formato utilizzato dal programma Photoshop• Tipo bitmap• Più modelli di colore (RGB, CMY, ecc.)• Compressione: Nessuna, RLE• Sistemi: Macintosh, Windows• Utilizzo: Applicazione Adobe Photoshop

Page 47: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

PDF (Portable Document Format)

• Tipo: Metafile – rappresenta documenti 2-D in modalità indipendente

da risoluzione e dispositivo– Contenitore per immagini compresse (es. JPEG)

• Piattaforme: quasi tutte• Creato da Adobe. • Può essere considerato una sorta di evoluzione

del formato Postscript (alcune versioni standard) • È più efficiente nella memorizzazione

Page 48: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

TGA

• Formato diffuso (spesso chiamato Targa)• Utilizzato originalmente su stazioni grafiche

dedicate alla gestione di immagini digitalizzate direttamente da segnali video

• Colori: 8-bit, 16-bit, 24-bit, 32-bit• livelli di grigio e colori• Compressione: RLE, nessuna

Page 49: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Microsoft RIFF (.AVI, .WAV)

• Tipo: Multimedia• Colori: 24-bit• Compressione: RLE, audio, video• Piattaforma: Windows• Utilizzo: RIFF formato comune nativo di

Microsoft Windows• Serve per memorizzare informazioni audio,

video e grafiche in applicazioni multimediali

Page 50: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Quick Time

• Tipo: dati audio/video• Compressione: RLE, JPEG, altri• Piattaforma: Macintosh, Windows• Applicazioni; QuickTime• Utilizzo: memorizzazione e scambio di

informazioni in ambiente Macintosh e Windows

Page 51: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Compressione basata su trasformata

Page 52: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Block coding con trasformata

Page 53: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Dimensione sotto-immagini

Page 54: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Blocking artefact

Page 55: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Funzioni base Fourier

http://www.cs.unm.edu/~brayer/vision/fourier.html

8 orizzontali

32 verticali

4 orizzontali 32 orizzontali0 orizzontali

0 ve

rtica

li

16 v

ertic

ali 2 verticali

Page 56: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Funzioni base DCT (n=4)

Page 57: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Periodicità implicita

DFT

DCT

Page 58: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Allocazione dei bit

Page 59: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Codifica zonale/soglia

Page 60: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

JPEG

Page 61: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

JPEG(Joint Photographic Expert Group)

• Uno standard

• JFIF = JPEG File Interchange Format

• Più formati grafici utilizzano la tecnica JPEG – JFIF – TIFF, versione 6

Page 62: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Compressione JPEG

• Si applica sia a immagini a colori a 24 bit che a immagini a livelli di grigio

• Particolarmente indicato per immagini di tipo fotografico

• Non adatto a variazioni brusche di intensità e colore delle immagini artificiali (contorni netti)

Page 63: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Vantaggi JPEG

• elevati fattori di compressione senza perdita di qualità

• diversi livelli di qualità

Page 64: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

JPEG

• Rapporto di compressione C dipende dal contenuto dei dati (tipicamente da 20:1 a 25:1)

• Controllo qualità variabile mediante parametro Q

• JPEG non ideale con immagini con grandi zone dello stesso colore

Page 65: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Passi compressione JPEG

• Trasforma l’immagine in uno spazio di colori ottimale• Downsampling sulle componenti di crominanza• Applica la DCT (Discrete Cosine Transform) ai blocchi di

pixel per rimuovere i dati “ridondanti”• Quantizza ogni blocco di coefficienti DCT usando una

funziona ottimizzata per l’occhio umano• Codifica i coefficienti risultanti con uno dei metodi di

Huffman

Page 66: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

1. Trasformare lo spazio dei colori

• Si parte da qualsiasi modello di colore (RGB, CMY, ecc.).

• Si arriva al modello luminanza/crominanza (YCbCr)

• Occhio più sensibile alla luminanza (Y) rispetto alla crominanza (CbCr)

Page 67: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

2. Downsampling sulle componenti di crominanza

• Più pixel per il canale Y, meno pixel per Cb e Cr

• Esempio: immagine di 1000x1000 pixel– 1000x1000 pixel per (Y) – solo 500x500 pixel per Cb e Cr

– Totale: 6 valori, 4 di luminanza e 1 per ogni canale di crominanza (invece di 12)

Y Y

Y Y

CrCb

Page 68: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

3-4-5 DCT, quantizzazione e codifica

• Immagine è divisa in blocchi di 8x8 pixel

• Ad ogni blocco si applica la DCT: si rappresentano le variazioni di colore nei blocchi

• Si rimuovono le variazioni piccole (alte frequenze)

Page 69: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Esempio: immagine 8x8

[Wikipedia]

Page 70: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Traslazione di livello-2k-1, k numero di bit

-128

Dati centrati su 0 [−128,127]; si riduce la gamma dinamica per la trasformata DCT

Page 71: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Trasformata DCT, n=8

Page 72: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Matrice di quantizzazione

Page 73: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Diverse normalizzazioni

Page 74: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Coefficienti scalati e troncati

Page 75: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Sequenza a zig-zag

Page 76: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Animazione DCT

By Hanakus - Own work, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=12624397

Page 77: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –
Page 78: Metodi e Formativincenzo/TecDigSuoImm12/Slide/1617_05...File grafici con formato esplicito • Esistono più di 200 formati di file grafici • Parametri – profondità di pixel –

Originale (TIFF o GIF) JPEG buona qualità JPEG bassa qualità