Compressione dei dati. Appunti di Sistemi A cura del prof. Ing. Mario Catalano



Documenti analoghi
Informazione binaria:

Compressione di dati: testi, immagini, suoni e video

La codifica di sorgente

Compressione di dati: testi, immagini, suoni e video. B. Cipolla

Corso di Informatica

Compressione di dati: testi, immagini, suoni e video. B. Cipolla

La codifica di sorgente

Abbiamo visto nella lezione precedente che le immagini possono essere compresse in vari modi, per ridurne l'occupazione di memoria (su disco o rete)

Backup dei dati. Archiviazione di sicurezza dei dati e ripristino degli archivi

Informazione binaria: Codici per la rilevazione e correzione di errori Codici di compressione

La codifica dell informazione

Suono digitale. Ø Un secondo di musica stereo richiede 44'100 campioni di 16 bit (2 byte) ciascuno per due canali, quindi 176'400 byte.

La codifica dell informazione. Rappresentazione binaria. Rappresentazione posizionale in base 10

LE IMMAGINI DIGITALI 3 formati. Università IUAV di venezia

Tutti i dispositivi di un elaboratore sono realizzati con tecnologia digitale

IMMAGINE Immagini raster Fondamenti

che si ripete n volte, con n molto grande. Determinare il rate ottenuto dalla codifica LZ77, usando i parametri:

Codifica dell Informazione

1.2d: La codifica Digitale dei caratteri

Codifica dell Informazione

Analogico vs digitale

Modulo informatica di base 1 Linea 2

Capitolo 3 Compressione sorgenti statiche

Università degli Studi di Cagliari Facoltà di Scienze Corso di Laurea in Matematica

Laboratorio di Informatica

Informatica di Base 1 Linea 1

Codifica/Compressione multimediale

Corso di Informatica

Rappresentazione di immagini a colori. Rappresentazione dei colori. Rappresentazione dei colori LA RAPPRESENTAZIONE DELL INFORMAZIONE - II

Introduzione alla codifica entropica

Esistono delle trasformazioni standard fra i diversi formati che abbiamo discusso

Prof. Pagani corrado LA CODIFICA DELLE INFORMAZIONI FORMATI DEI FILE

Tecnologie Multimediali a.a. 2018/2019. Docente: DOTT.SSA VALERIA FIONDA

Informazione multimediale

Codifica Immagini Fisse

Le immagini digitali

CODIFICA DI SORGENTE. Schematizzazione generale sistema di comunicazione

L'Informazione e la sua Codifica. Maurizio Palesi

Sommario. Lempel-Ziv coding e varianti Run-length encoding. 1 Introduzione. 2 Codifica mediante predittori (Lossless JPEG, PNG, ecc.

Codifica CCITT Fax. Introduzione Codifica monodimensionale Codifica bidimensionale. Codifica CCITT Fax. Codifica JBIG2

Tecniche di compressione senza perdita

UNIVERSITÀ DEGLI STUDI DI TRIESTE

Nozioni di grafica sul calcolatore. concetti di base

Capitolo 1. Salvataggio dei dati. Prof. Mauro Giacomini Pearson Addison-Wesley. All rights reserved

Codifica di Huffman e Lempel-Ziv-Welch A L B E R T O B E L U S S I A N N O A C C A D E M I C O /

OHLQIRUPD]LRQLQRQQXPHULFKH

La codifica video. Per comprendere il procedimento di rappresentazione digitale di un filmato prendiamo come modello una pellicola cinematografica:

Codifica di Huffman e Lempel-Ziv-Welch

INFORMATICA GENERALE E BASI DI DATI PER ARCHIVI AUDIOVISIVI (PRIMO MODULO) Claudio Piciarelli A.A. 2013/2014

Codifica dell informazione. 11/2/2014 Informatica applicata alla comunicazione multimediale Cristina Bosco

Nozioni basilari sull audio digitale (2)

COMPRESSIONE DATI. 1. Introduzione

Altre organizzazioni

Formati e compressioni

Sistemi di Elaborazione delle Informazioni

Aosta Formati di file immagine. Quick tutorial per scegliere il formato giusto per ogni output. Diapositiva 1 di 13

Elaborazione dell informazione. Elaborazione dell informazione. Rappresentazione dei numeri INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

CODIFICA DI CARATTERI

Sistemi di Elaborazione delle Informazioni 6 CFU

Tecnologie Multimediali a.a. 2017/2018. Docente: DOTT.SSA VALERIA FIONDA

Organizzazioni indicizzate

UNIVERSITÀ - OSPEDALE di PADOVA MEDICINA NUCLEARE 1. Lezione 5: Formati di immagine: JPEG. D. Cecchin, F. Bui FORMATO GRAFICO JPEG

La codifica delle immagini

Sistemi di Elaborazione delle Informazioni 6 CFU

Introduzione alla progettazione grafica

Rappresentazione binaria. Laboratorio di Informatica. Calcolatori digitali. N: numeri naturali. La codifica binaria. I primi 16 numeri binari

Rappresentazione dell'informazione

Segnale analogico. Analogico vs digitale. Segnale digitale. Trasformazione da analogico a digitale

CODIFICA DI CARATTERI

Codifica dei coefficienti AC

4.3: La Codifica dei Suoni e dei Video

La codifica del testo

INFORMATICA GENERALE

Corso di Informatica

Numeri interi. Laboratorio di Calcolo Paola Gallo

INFORMAZIONE E CODIFICA PROF. MAURIZIO NALDI ABILITÀ INFORMATICHE

Sistemi di Elaborazione delle Informazioni

L informazione e la sua codifica. Prof. Maurizio Naldi A.A. 2015/16

Corso di Informatica

LABORATORIO DI INFORMATICA

Il concetto di informazione

Compressione di Immagini.

Compressione Delta mediante l algoritmo LZSS

Codifiche corrispondenza biunivoca

Codifica dei caratteri ASCII ESTESO. Codifica delle immagini. Codifica immagini bitmap

Modulo 1: Le I.C.T. UD 1.3d: La Codifica Digitale dei Video

La codifica. dell informazione. Tipi di informazione

Codifica di Huffman e Lempel-Ziv-Welch

Il suono digitale. Concetti di base

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

1.3d: La Codifica Digitale dei Video

Concetti Introduttivi. Rappresentazione delle informazioni

Immagini Digitali Immagini digitali

Linguaggi ed Applicazioni mul1mediali

Laboratorio di Informatica. delle informazioni. Pagina 1

Tipi di Informazione

Transcript:

Compressione dei dati Appunti di Sistemi A cura del prof. Ing. Mario Catalano

Compressione di dati Cosa significa comprimere i dati? Eliminare l'informazione ridondante, in modo da poter rappresentare lo stesso documento con un minor numero di bytes.

Vantaggi e svantaggi della compressione dei dati Risparmio della spazio quando si memorizzano i file; Risparmio di tempo all invio del file. Tempo impiegato per comprimere e decomprimere un file; il file compresso non è usabile direttamente, per usarlo si deve decomprimere; il file compresso è più fragile. Alcuni errori di trasmissione possono alterarne il contenuto.

Formati di file compressi (i più conosciuti) Zip Rar 7Z Jar Ace Arj ISO (per immagini di CD o DVD)

Tecniche di compressione Si dividono in due categorie: Compressione dati lossy (con perdita di informazione); Compressione dati lossless (senza perdita di informazione). Osservazione: La percentuale di compressione ottenibile dipende: 1. dall algoritmo utilizzato 2. dalla propensione dei dati a essere compressi università ca'foscari di Venezia - corso di sistemi di elaborazione delle informazioni

Comprimere un testo (loseless) Nei computer i caratteri vengono codificati usando il codice ASCII "American Standard Code for Information Interchange", cioè "Standard americano per lo scambio di informazioni": codice di 8 bit per ogni simbolo ad esempio: 01100001 in binario rappresenta la lettera a. Un file di 100 caratteri quindi occuperà sempre 800 bit (8 bit * 100 caratteri = 800) sia esso composto da 100 caratteri differenti piuttosto che da 100 identici.

Comprimere un testo (loseless) Visto che in tutti i file testo alcuni caratteri appaiono con una frequenza maggiore di altri non avrebbe senso assegnare a questi un codice composto da un numero inferiore di bit in modo da risparmiare spazio nella codifica? Codifica di Huffman È un algoritmo di usato per la compressione dei dati, basato sul principio di trovare il sistema ottimale per codificare stringhe a seconda della frequenza relativa di ciascun carattere.

Compressione di Huffmann La lunghezza di ogni parola del codice non è identica per tutti i simboli: i simboli più frequenti (che appaiono più spesso) sono codificati con delle piccole parole di codice, mentre i simboli più rari ricevono dei codici binari più lunghi. Si parla allora di codifica a lunghezza variabile (in inglesevlc per variable code length)

Esempio di compressione Huffman Vogliamo comprimere un file testo contenente la stringa: CIAO_MAMMA In un normale file testo, ogni lettera è rappresentata da 8 bit codificati rispettando il codice ASCII. Il nostro file salvato sarà composto così da 80 bit. Per prima cosa è necessario contare la frequenza di ogni lettera nella nostra stringa: C(1) I(1) A(3) M(3) O(1) _(1) Codifichiamo A e M con sequenze di 2 bit e gli altri con sequenze di 3 bit; ad esempio: A=10, M=11, C=000, I=001, O=010, _=011 Ottengo un testo compresso di 24 bit, invece di 80!

Compressione a dizionario è basata sull'idea di rimpiazzare, in un file, occorrenze di stringhe ripetute con puntatori a precedenti copie. La compressione è dovuta al fatto che la lunghezza di un puntatore è in genere più piccola della lunghezza della stringa che è rimpiazzata.

Compressione a dizionario Maggiori sono le ripetizioni di occorrenze di stringhe nel file da comprimere, maggiore è il grado di compressione raggiunta. Quindi, una delle attività dell'algoritmo di compressione è trovare la stringhe che si ripetono. Quest'attività è svolta inserendo il file in un buffer di dati, chiamato dizionario. La velocità dell'algoritmo dipende dalla struttura dati utilizzata per implementare il dizionario, dall'algoritmo utilizzato per trovare i match tra le stringhe del file prese in considerazione e le stringhe presenti nel dizionario.

Compressione a dizionario (LZW) La famiglia degli algoritmi a dizionario, ha molte varianti, la principale è detta LZW ed è la base del formato ZIP. Essa ha il vantaggio di comprimere in modo semplice ed efficiente tipi di dati eterogenei, come testo, immagini, database, ecc. È possibile applicare questo tipo di compressione non solo a testo, ma a qualunque sequenza che si ripete.

Compressione RLE (RLE = run length encoding) Si sostituiscono le sequenze di bit con un codice che indica il valore ripetuto e quante volte si ripete nella sequenza. Funziona bene quando i dati da comprimere sono scomponibili in lunghe sequenze di valori identici ripetuti.

Un esempio (?) Esempio: "A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A" (600 bytes) "300 volte `A ' " (13 bytes)

Compressione RLE Sia M (messaggio da comprimere) una configurazione di bit costituita da: 253 bit posti a 1, seguiti da 118 bit posti a 0, seguiti da 87 bit posti a 1 E più compatto rappresentare in binario 253 x 1, 118 x 0, 87 x 1 11111101111101100010101111 ad esempio dedicando 8 bit alla cardinalità e 1 bit al simbolo per ciascun blocco rispetto ad elencare i 458 bit.

Compressione Lossy Per comprimere dati come il suono o le immagini, dove una perdita di qualità potrebbe non essere notata viene usata la compressione lossy. Gli algoritmi di compressione lossy quindi, sacrificano parte dei dettagli contenuti, ad esempio in un'immagine, in favore di un maggiore rapporto di compressione. Solitamente tali differenze non risultano percettibili, in quanto la parte di informazione persa è comunque quella che l'utente non avrebbe notato. Eliminando, perciò, alcuni dettagli di un'immagine non la deterioreremo. è bene sottolineare che una compressione lossy comporta una perdita permanente di dati.

JPEG (Joint Photographic Experts Group) JPEG è il primo formato compresso Lossy. I meccanismi di compressione risultano particolarmente adatti ad immagini contenenti un elevato numero di colori per la memorizzazione di immagini fotografiche o di disegni molto sfumati. Negli altri casi, come cartoon, forniscono risultati generalmente peggiori di altri formati, sia in termini di qualità sia di dimensione dei file. JPEG, non usa un metodo fisso di compressione. E' possibile scegliere il grado di compressione che si desidera applicare a un'immagine, determinando in questo modo anche la qualità dell'immagine. Più si comprime un'immagine, più se ne riduce la qualità.

JPEG: come funziona Si può applicare solo alle immagini raster (cioè alle fotografie). Per diminuire la dimensione dell'immagine, JPEG elimina alcuni pixel, che verranno poi ricostruiti (non esattamente uguali) in fase di decompressione. JPEG tuttavia è stato progettato in modo tale che i pixel eliminati siano quelli meno percepibili per l'occhio umano il quale è più sensibile alle piccole variazioni di luminosità che alle piccole variazioni di colore. Così se JPEG trova due pixel vicini di minima variazione di luminosità li conserva, ma se trova due pixel vicini di minima variazione di colore ne tiene uno solo.

Altri formati Lossy e Codec MP3, WMA, MPC, OGG per l audio MPEG, DivX per il video Operano nel loro settore con una tecnica simile a JPEG (tralasciano informazioni che apparentemente non servono) I codec sono parti software che dicono al sistema quali algoritmi applicare alle immagini per codificarle o decodificarle.

Codec Praticamente tutti i codec moderni sono lossy, perdono parte dell'informazione cercando di ottenere il massimo di compressione possibile. Nel caso degli ultimi codec sviluppati si è visto un progressivo interesse nei confronti delle tecniche cosiddette psicovisuali quelle cioè che studiano il modo in cui il cervello percepisce le informazioni da un video in movimento. Sfruttando queste caratteristiche del cervello alcuni sviluppatori hanno inserito nei loro codec degli algoritmi che si occupano di gestire i bit di informazione in modo più preciso, dedicando maggiore precisione di codifica per le aree dell'immagine che il cervello percepisce maggiormente e sottraendo dati a tutte quelle zone dell'immagine che non sono riconosciute dal cervello, ad esempio comprimendo di più le scene veloci con immagini sfumate oppure quelle completamente buie in cui il cervello umano non è in grado di estrapolare dettagli. Con questo metodo pesantemente lossy per i dati, ma impercettibile per gli umani, gli sviluppatori sono riusciti a fare un ulteriore salto in avanti nella qualità e nel grado di compressione delle immagini in movimento.