Informazione binaria - Informatica e Programmazione
Transcript
Informazione binaria - Informatica e Programmazione
Informazione binaria: – suoni, immagini, sequenze video – Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Tipologie di codici • Per la rappresentazione di: – caratteri alfabetici e testi – valori logici – numeri naturali – numeri interi relativi [val assoluto e segno, complemento a due] – numeri “reali” [virgola fissa e virgola mobile] – suoni, immagini e sequenze video • Codici per la rilevazione e correzione di errori • Codici di compressione (senza | con perdita) Docente: M. Giacomin Informatica e Programmazione – Università di Brescia 2 La digitalizzazione rappresentazione anche approssimata tramite sequenze di bit • Voce • Suoni 0010010100 • Immagini Nel calcolatore • Filmati Informazione “continua” Docente: M. Giacomin Codifica digitale Elementi di Informatica e Programmazione – Università di Brescia 3 Un esempio semplice 5V Sensore di temperatura (1 valore) 0V L3 11 L2 10 L1 01 L0 00 Quantizzazione • Ma in generale la grandezza varia anche in un dominio, p.es.: - suono: valori (di volume) nel tempo - immagine bidimensionale: valori (colori) nel piano • Necessario campionamento Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 4 Note ai lucidi precedenti • Problema: codificare in modo digitale una grandezza fisica (es. un suono) i cui valori sono (generalmente) infiniti e appartengono ad un intervallo continuo. • Soluzione: processo di digitalizzazione, o conversione analogico-digitale. Comprende due attività: – Campionamento: se la grandezza varia nel tempo (es. volume di un suono) o nello spazio (es. colore di un’immagine) selezione di un insieme finito di valori, ad intervalli costanti (nel tempo o nello spazio) – Quantizzazione: discretizzazione di ciascun valore campionato: approssimazione con uno dei valori previsti dalla codifica Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 5 CODIFICA DI SUONI Codifica digitale: 10 10 00 01 11 11 01 Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 6 Note al lucido precedente • Nel caso del suono: - campionamento nel tempo - quantizzazione in ampiezza • Parametro del campionamento: - Frequenza di campionamento (Hz): campioni al secondo Es: FC = 5 Hz significa acquisire 5 campioni al secondo - Periodo di campionamento: intervallo tra campioni successivi TC = 1/FC (nell’esempio: TC=0.2 sec) • Parametro della quantizzazione: numero di bit dedicati alla codifica di un campione Es: con 2 bit codifico 4 livelli (4 valori diversi) con 8 bit codifico 256 livelli (256 campioni) Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 7 Rappresentazione dei suoni nei CD audio • Segnali audio: onde analogiche à campionamento + quantizzazioneà valori digitali Frequenza di campionamento fc = 44.1 kHz (44.100 campioni) per i 2 canali (frequenze udibili dall’orecchio umano fino a circa 22 kHz) 16 bit/campione (2 byte per campione) à 65536 livelli di quantizzazione (65536 valori diversi per campione) • Dimensione richieste Nbit = F(durata, fc, bit/campione) Nello standard CDDA (CD Digital Audio) 70 minuti di registrazione richiedono: 70 x 60 x 44.100 x 2 x 2 byte ≈ 750 MByte Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 8 Dal mondo reale (analogico) al calcolatore (digitale) DIGITALIZZAZIONE (campionam. & quantizz.) … scheda audio memorizzazione, eventuali elaborazioni… Dal calcolatore (digitale) al mondo reale (analogico) 0010010100 Nel calcolatore Docente: M. Giacomin CONVERSIONE DIGITALE-ANALOGICA scheda audio riceve i valori digitali e ricostruisce il segnale analogico Elementi di Informatica e Programmazione – Università di Brescia 9 Alcuni formati audio • WAVE: .wav, dimensioni elevate (corrisponde – con un certo grado di approssimazione – a quanto visto nei lucidi precedenti) • MP3 (MPEG-1 Layer 3): grande diffusione su Internet. Utilizza tecniche di compressione per ridurre le dimensioni (vedi poi). MPEG nasce da un gruppo di lavoro di standardizzazione • MIDI (Musical Instrument Digital Interface): .mid, i file memorizzano non suoni ma comandi (es. le note musicali di un particolare strumento) che vengono inviati ai dispositivi MIDI per riprodurre i suoni, occupano molto meno spazio dei .wav. Es: tastiera musicale + calcolatore permettono di suonare un brano su tastiera che viene automaticamente trascritto in notazione musicale in un file midi che può poi essere anche modificato Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 10 CODIFICA DI IMMAGINI Maggie Cheung dal film “Hero” di Zhang Yimou (2002) Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 11 Campionamento Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 12 Quantizzazione Per ogni pixel un certo numero di bit es. 3 byte (colori) Codifica bitmap (raster) di immagini immagine bitmap (o raster): rappresentata come matrice di pixel • Risoluzione: numero di pixel orizzontali X verticali • Ad ogni pixel è riservato un certo numero di bit: - immagine in bianco e nero: 1 bit (bianco/nero) - immagine in scala di grigi: livello di grigio dal bianco al nero Es: 4 bit à 16 livelli di grigio 8 bit à 256 livelli di grigio - immagine a colori: ogni codifica corrisponde a un colore Es: 8 bit à 256 colori 24 bit à 224 = 16M colori (più di 16 milioni) Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 14 Codifica dei colori RGB • Ogni colore è rappresentato da (un vettore di) 3 componenti: - quantità di: rosso (Red) / verde (Green) / blu (Blu) • Con 3 byte per colore: la quantità di ogni colore primario è data da un valore tra 0 e 255 (rappresentato da una sequenza di bit a partire da 00000000 fino a 11111111) R=25, G=72, B=78 R=90, G=85, B=12 R=255, G=255, B=255 Docente: M. Giacomin R=0, G=0, B=0 Elementi di Informatica e Programmazione – Università di Brescia 15 ESERCIZIO Calcolare le dimensioni di memoria di un’immagine a colori RGB di risoluzione 800*600. Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 16 ESERCIZIO Calcolare le dimensioni di memoria di un’immagine a colori RGB di risoluzione 800*600. Soluzione 800* 600 * 3 bytes = 144 * 10000 bytes = = 1,44 * 106 bytes ≈ 1,4 MB [ 1,37 MB facendo i conti più precisi] Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 17 Immagini bitmap (o raster): ingrandimento e “sgranatura” Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 18 Codifica vettoriale di immagini Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 19 Note al lucido precedente • Immagini rappresentate tramite un insieme di elementi grafici (linee, rettangoli, ellissi, archi e curve) • Memorizzazione parametri (es. coordinate numeriche) che specificano forma e posizione: minore memoria (es. un cerchio solo centro e raggio, un segmento le coordinate degli estremi) • Necessaria un’operazione di rendering (rasterizzazione) che, a partire dalla descrizione matematica, produca l’immagine raster • Programmi di tipo draw (programmi di grafica vettoriale): es. Corel Draw, CAD, programmi di grafica tridimensionale • Vantaggi: – Controllo accurato di linee e colori – Ingrandimento, riduzione, rotazione senza perdita Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 20 Formati di file bitmap • BMP: formato standard per MS Windows, 24 bit per pixel, .bmp. • TIFF (Tagged Image File Format): alta qualità (32 bit per pixel), 16 milioni di colori (24 bit) + ulteriori proprietà, dimensioni file molto grandi, .tif, adottato da scanner e macchine fotografiche • Altri formati compressi (vedi poi): GIF (Graphic Interchange Format), JPEG (Joint Picture Experts Group), JPEG 2000 Formati di file vettoriali • DXF, DWG (adottati da Autocad) • WMF (Windows Metafile) • CDR (Corel Draw), AI (Adobe Illustrator) Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 21 Formati “misti” • Formati standardizzati orientati alla produzione di documenti destinati a stampa e visualizzazione: – Documenti in formato PS (Postscript) – l’applicazione GSview (Ghostview) legge il formato postscript, di fatto un linguaggio di programmazione che include comandi “grafici” – Documenti in formato PDF (Portable Document Format, formato di documento portabile) • Permettono di rappresentare: - testo - immagini bitmap - immagini vettoriali Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 22 CODIFICA DI SEQUENZE VIDEO • In teoria, una sequenza video è semplicemente una sequenza di fotogrammi (immagini): - campionamento nel tempo (successione di fotogrammi) - ciascun fotogramma rappresentato come immagine: campionamento nello spazio e quantizzazione • In pratica, le dimensioni risulterebbero troppo elevate. Facendo un conto “a spanne”, se un’immagine occupa 1 MB con 25 fotogrammi al secondo: - 25 MB al secondo - 25 x 60 MB al minuto = circa 1,5 GB al minuto! Tecniche di compressione specifiche per le sequenze video Docente: M. Giacomin Elementi di Informatica e Programmazione – Università di Brescia 23