D A T I - cenni dati / segnali analogici dati / segnali digitali dati audio dati video 1 audio / video saltiamo la parte audio 3..35 -> gia' fatto in altri corsi... vediamo la parte vista, video, colore 36..84 2 D A T I - cenni contenuto per la parte dati: misura e conversione da dati o segnali analogici in dati o segnali digitali Teorema del campionamento (Shannon-Nyquist) nozioni su file audio / file video 3 origine dei dati e classificazione digitali / analogici i dati possono essere di tipi molto diversi, una prima classificazione e': dati discreti / continui: es. di dati numerici (digitali) relativi a quantita' discrete: 7 paperette 64 cocinelle 4 origine dei dati e classificazione digitali / analogici ma non sempre e' banale CONTARE i dati: nella figura a sinistra si contano 113 foglie (salvo errori) ... 5 6 dati analogici dati numerici relativi a misure di grandezze fisiche di tipo continuo: la lunghezza del naso della Gioconda Dati analogici Quant'e' alto il Chomolungma?(*) 1849 -> 8840 (British India Survey, triangolaz.da 6 punti a 150 km precisione ± 20 m) 1954 -> 8848 (Cina) (discussione altezze Everest > K2?) 1991 -> 8850 (B.Washburn,US) 1992 -> 8846 ±0.35 Altezza Geoidale (Cina-Italia, tra cui il prof. Poretti di TS, con GPS Leica System) altezza ellissoidale 8823.51 (livello su neve, profondita'neve 2.55m) ____________________ (*)Tibet,Nepal: "Dea madre del mondo"; noto come Everest 7 da dove arrivano i dati 8 i dati possono essere di tipi molto diversi: dati numerici relativi a quantita' discrete numero di studenti presenti in aula, n.ro di automobili parcheggiate in via Valerio, n.ro promossi agli esami di Fondam.di Inform.4, dati numerici relativi a misure di grandezze fisiche di tipo continuo: quanto e' lungo il naso della Gioconda? quanto e' alto il monte Everest ? quanto pesa l'edificio Tutankamen (edif.centr.aule C1)? quanto sono lunghe le rive del mare dell'Italia? (difficile [:-) frattali] ...rive misurate con passo 100m, 1m, 1cm..?) dati 9 nota la differenza tra dati numerici relativi a grandezze continue, analogiche, dati ottenuti da misure (un termometro digitale, un orologio digitale ecc) di grandezze che possono assumere un valore qualunque in un intervallo dato, con lettura "manuale" (lettura per le bollette dei consumi di acqua,gas,corrente) o con una lettura "automatica" (con un convertitore da grandezza analogica a grandezza digitale) e dati derivanti da un conteggio di qualcosa, "digitali" per natura, il cui valore ha un numero di cifre ben delimitato, qui c'e' solo il problema della scelta della codifica del dato ... dati numerici o digitali 10 un calcolatore tratta SOLO dati digitali, ovvero numerici; nota che qualunque dato ottenuto da grandezze misurabili e codificabili si rappresenta in forma numerica ! grandezza fisica -> misura -> segnale/dato analogico -> conversione da segnale/dato analogico in segnale/ dato digitale dati 11 esempio: temperatura -> termometro -> indicazione analogica della temperatura con una grandezza fisica ( tensione elettrica, posizione di una lancetta, della colonna di mercurio ) -> conversione da grandezza ANALOGICA a grandezza DIGITALE dati 12 un suono -> una registrazione digitale (non compressa/compressa, vari standard) un' immagine -> un'immagine digitale (vari standard di formato di codifica delle immagini, dai primi BMP (bit-map, reticolo di pixel memorizzato per righe) ai formati oggi in uso (PICT, GIF, JPEG, TIFF, PDF, ...) un filmato o un video -> una registrazione digitale (da DV video non compresso a video compressi MPGx ...) dati vediamo prima un cenno sulla conversone di segnali da analogico a digitale 13 dati numerici o digitali 14 un calcolatore tratta SOLO dati digitali, ovvero numerici, quindi NEL calcolatore i dati sono SEMPRE digitali, dati di partenza NON digitali, come immagini e suoni, sono elaborati/memorizzati nel calcolatore in forma digitale, e passano due conversioni (dalla sorgente all'utente): 1.a da segnale/dato analogico in segnale/ dato digitale [ADC= analog to digitale converter] (codifica) -> calcolatore/supporto digitale -> 2.a da segnale digitale a segnale analogico [DAC= digital to analog converter] (decodifica e ricostruzione) DAC 15 Il segnale digitale puo' essere trasmesso, memorizzato, copiato piu' volte senza degrado, e mantiene la qualita' di partenza (da cui i problemi di copie pirata, e di codifiche "protette" :-) Un segnale audio o video in forma digitale viene alla fine (per essere asoltato/guardato) riconvertito in forma analogica: un circuito elettronico DAC (digital to analog converter) esegue la conversione inversa; inoltre nota: in genere i segnali digitali sono elaborati (compressi / decompressi) per ridurre le esigenze di capacita' di trasmissione / memorizzazione. dati 16 un segnale (ad es. temperatura, intensita' di suono...) viene trasformato in un insieme di dati digitali con un campionatore ovvero con l' uso di un convertitore ADC (Analog to Digital Converter) vi sono DUE fonti di errore insiti in OGNI conversione Analogico->Digitale: precisione di campionamento quante cifre (o bit) per un valore (un campione) ? frequenza di campionamento quanti valori per secondo? dati: ADC 17 campionamento di un ADC: 1) precisione : quante cifre fornisce in uscita? 2) frequenza di campionamento : quanti valori (campioni) fornisce in unita' di tempo ? in figura il segnale (in rosso) e' digitalizzato con una cifra di precisione (precisione 1/10) a intervalli di tempo di 1/1000 di sec, poi trasformato nella sequenza di dati/cifre riportata sotto 7895340364 i valori sono trasmessi (memorizzati) e alla fine riconvertiti in segnale analogico (ricostruzione) dati analogici / digitali - precisione campionamento 18 alla fine del procedimento c'e' il segnale ricostruito : se, come in figura, la precisione e' modesta e se la frequenza di campionamento e' modesta, allora il segnale ricostruito (in rosso) sara' molto diverso dal segnale originale (in blu) (come in figura); se pero' la precisione dei valori campionati e' buona e se la frequenza di campionamento e' "sufficiente" allora il segnale ricostruito e' "simile" (fedele) all' originale ... vediamo precisione campionamento figura sopra: frequenza di campionamento 1/1000 sec, precisione e' 1/10; (1000 cifre decimali al secondo) - ricostruzione scadente 19 figura sotto: aumento la precisione a 1/20, e aumento la frequenza di campionamento a 1/2000; migliora la rappresentazione del segnale, migliora il segnale ricostruito, ho piu' dati (4000 cifre al secondo); precisione campionamento 20 maggiore * precisione dei valori dei campioni e * frequenza campionamento -->> migliore rappresentazione digitale del segnale, migliore segnale ricostruito: figura sotto: precisione a 40 intervalli e campionamento a 1/4000 di secondo (16 volte piu'dati digitali) nel caso della codifica su CD (PhillipsSony, 1982) del segnale audio si usano 44100 campioni per secondo (*) e 16 bit di livello (valori da 0 a 65000) (*) vedremo la relazione tra segnale e frequenza di campionamento, anche in relazione ai limiti dell'udito e della vista ;-) precisione campionamento: ricostruzione 21 Un segnale campionato memorizzato (o trasmesso) in forma di un certo numero di valori deve poi essere ricostruito (DAC) ricordiamo alcuni aspetti per la ricostruzione: dati di partenza sono una serie di numeri (valori); risultato: una funzione F2 che approssima per una x (o un tempo) generica la funzione F1 (il segnale) di partenza (prima del campionamento) ... altro corso Trasformata di FOURIER 22 e' noto che una funzione f(x) ( con alcune proprieta'... la funzione deve essere derivabile a piacere (infinitamente derivabile) o "analitica" ... vedi corso analisi matematica ;-) ... ) si puo' esprimere come una somma pesata di potenze di x (serie di Taylor) una somma pesata di sinusoidi di x (trasformata di Fourier) una funzione con andamento "dicontinuo" richiedera' un numero infinito di sinusoidi, es. la funzione rettangolo -> ha una trasformata di Fourier con infiniti termini tk tipo: ak*sin(fk*x+wk) Trsformata di FOURIER 23 ... come cambia la ricostruzione di una funzione (periodica) a rettangolo espressa con la trasformata di Fourier con un numero di termini finito: qui, con 4 e con 10 termini Trsformata di FOURIER qui la rappresentazione (ricostruzione) di una funzione a rettangolo espressa con la trasformata di Fourier con un numero di termini 20 e 50: 24 Trsformata di FOURIER Infine la rappresentazione (ricostruzione) di una funzione a rettangolo espressa con la trasformata di Fourier con un numero di termini 100 e 500 : 25 Trsformata di FOURIER 26 molte funzioni sono esprimibili con un numero finito (o infinito) di sinusoidi (somma di seni o coseni, ogni termine tk del tipo ak*sin(fk*x+wk) ) con frequenze delle componenti fk limitate da un limite inferiore e un limite superiore: questi due limiti definiscono l'ampiezza di banda del segnale; due esempi ben noti: banda segnale audio (parlato) telefonico: da 300 a 4000 Hz banda segnale audio (musica) : da 20 a 20000 Hz molti segnali si possono esprimere con componenti di frequenze da 0 a Fmax; Trsformata di FOURIER larghezza di banda B del segnale: e' l'intervallo delle frequenze delle componenti sinusoidali del segnale; segnali esprimibili con una banda di frequenze limitata: segnale con banda da 0 a Fmax (ampiezza di banda B=Fmax) segnale con banda da Fmin a Fmax (ampiezza di banda B=Fmax-Fmin) 27 dati, limiti campionamento 28 teorema di Shannon Nyquist (1949) : per poter trasformare un segnale analogico in una serie di campioni e poi da questi poter ricostruire esattamente il segnale di partenza deve essere fc > 2 * B con: fc e' la frequenza di campionamento e con: B e' la larghezza di banda (il segnale e' decomponibile in componenti sinusoidali con frequenze da 0 a B [trasformata di Fourier]) dati, limiti campionamento 29 ... teorema di Shannon Nyquist (1949) : per poter ricostruire esattamente il segnale di partenza dal segnale campionato deve essere fc > 2 * B (B larghezza di banda, fc frequenza di campionamento) si noti che un segnale esprimibile in sinusoidi da f1 a f2 con f1 maggiore di zero B ha la larghezza di banda f2 - f1 , quindi B non coincide con la frequenza f2 ne segue: per ricostruire fedelmente un segnale audio con frequenze da 20 a 20k devo campionare a almeno 40k dati audio 30 frequenze audio : la banda delle frequenze udibili ? siamo in grado di sentire suoni da 20 Herz a 20.000 Herz (circa - i limiti variano un po' da persona a persona) non siamo in grado di sentire suoni con 7 Hz o con 30k Hz; (appare esagerata la codifica audio a 90k o 180k di campionamento ;-) codifica audio: la qualita' e' data dalla precisione e dalla frequenza di campionamento, e, a pari precis+freq, dal tipo di compressione usato; due esempi noti: telefonia: freq.di campion. 300 - 4kHz, 8bit/campione, bit/sec 64kbps CD freq.di campion. 41,1 kHz, 16bit/campione, bit/sec 1,4Mbps caratteristiche di CD audio standard 31 CD (Philips e Sony,1982), audio non compresso, dati: campionamento a 40,1 kbps (valore ereditato dalla registrazione parte audio sui videoregistratori VHS sistema PAL); precisione 16bit/valore * 2 (stereo) velocita' lettura costante: 1.2-1.4 m/s - (circa 500 giri/m sul bordo interno, circa 200 giri/m sul bordo esterno); Spessore traccia (densita'): 1.6μm - 1.5 μm Diametro 120mm. Spessore disco: 1.2mm. Area registrabile 86.05cm², lunghezza spirale registrabile totale 86.05/1.6 = 5.38km. Con lettura a 1.2m/s, la durata e' 74min o 80min (varia con densita'), ovvero da 650MB a 700MB di dati su CD-ROM. Quasi tutti i lettori di CD tollerano densita' un po' maggiori, r permettono quantita' anche oltre 700MB (con superficie registrabile un po' maggiore). dati audio 32 l'intensita'del suono e' la quantita'di energia portata dall'onda sonora attraverso una superficie unitaria in unita' di tempo; intensita' del suono di riferimento e' I0 = 0.1 watt/metro quadro che corrisponde ad un suono appena udibile (soglia dell'udibile) l'intensita' e' data dal rapporto rispetto questa intensita' di riferimento ( I0 ), espresso in scala logaritmica, e moltiplicato per 10; dB = misura dell' intensita' del suono scelta per avere 100 intervalli tra il min e il max del suono udibile I = 10 * log( I / I0 ) dB (o deci-Bel) nota: l'intensita'del suono cambia con la distanza dalla sorgente del suono: per una sorgente di suono sferica in un ambiente omogeneo l'intensita' del suono diminuisce con il quadrato della distanza: I1/I2 = ( r2/r1)2 ovvero I1 = I2 * ( r2/r1)2 dati audio 33 volore istantaneo o intensita' del suono l' intensita' del suono (udibile) si misura in decibel, su scala logaritmica; alcuni esempi di intensita' di suono: appena udibile = 0 dB (suono appena udibile) molto debole = 10 dB (intensita' 10 volte maggiore) debole = 20 dB (energia 100 volte maggiore di 10dB) parlato normale = 50 dB (energia 100.000 maggiore (*) ) una moto = 90 dB (energia 109= 1.000.000.000 maggiore) un concerto rock = 110 dB (ene.1011maggiore: danno se esposizione prolungata) un cannone = 120-140 dB (en.1014maggiore: dolore / danno immediato) _________________ (*) da I = 10 * log( I / I0 ) dB, 10*log10(100000)=10*5=50 diagramma freqenza-intensita' suono 34 la soglia e il limite dei suoni udibili cambia con la frequenza essa e' minima per le frequenze da 0,5 a 5 kHz, e aumenta per le frequenze sopra i 100 Hz e sotto 8kHz; anche il limite di livello massimo tollerabile cambia con la frequenza, e' sotto i 120 dB per le frequenze tra 2 e 8 kHz. intensita' del suono un misuratore di intensita' del suono non costa neanche tanto ;-) non riporto i limiti di legge dell'intensita' del suono in ambienti diversi... (luogo pubblico aperto, posto di lavoro, sala di lettura di una biblioteca, sala da concerto rock, disco, ...) 35 dati e limiti per le immagini immagini e filmati qualche cenno su: limiti dell'occhio umano codifiche di immagini e di filmati 36 dati e limiti per le immagini 37 per un' immagine interessa: la precisione dell'immagine (quanti pixel per cm) la precisione del colore (quanti colori) la precisione dell'intensita' di luce (quanti valori/bit per la scala dell'intensita' di luce dal nero al bianco) altro: contrasto, luminosita', saturazione colori, ... il tutto in funzione dei limiti della vista dell'occhio: fino a quanto ha senso spingere la qualita' dell'immagine prima di saturare l'occhio? Struttura dell'occhio 1 38 struttura dell'occhio 39 bastoncelli coni dati e limiti per le immagini 40 precisione dell'immagine: l'occhio umano ha un gran numero di sensori (recettori ["pixel"] ) per la luce, di due tipi: i bastoncelli - per la sola intensita' (b/n) "tanti"- 100M i coni - per il colore, "pochi" - 6M i sensori "bastoncelli" rilevano solo l' intensita' (senza colori), sono usati quando l'intensita' della luce e'bassa (visione notturna o scotopica) sono molto piu' sensibili e piu' numerosi (100-120 milioni !! di recettori), hanno una distribuzione "circa" uniforme sulla retina (per un angolo di piu' di 1000 gradi); la densita' e' un po' maggiore a circa 20 gradi dal centro di vista (si vede un po'meglio di notte se..) dati e limiti per le immagini 41 i coni: l'occhio ha un numero minore di sensori (recettori) per la luce diurna, differenziati per il colore, circa 6-7 milioni, (per la loro forma detti coni) a distribuzione non uniforme: piu' di un terzo di tutti i coni e' concentrato nel punto di vista (fovea), dove la sensibilita' e' massima; dalla retina parte una fascia di circa 1 milione di neuroni verso il cervello, porta tutta l'informazione raccolta dai oltre 100M bastoncelli + coni dati e limiti per le immagini 42 distribuzione dei coni e dei bastoncini: la macula o fovea, zona piu'sensibile, (2,5 mm) corrisponde a circa 1,5 gradi del cono visivo ("circa 3 lune piene"); al centro della fovea la densita' dei coni e' circa 200.000 coni/mm2 (da 150 a 250k) e questo da' la precisione massima della nostra vista, (circa 1/120 di grado) ai bordi della fovea la densita' scende a 50.000 coni, per tutto il resto della retina la densita' e' di 5.000 coni/mm2 ovvero 30-40 volte minore rispetto il centro! l'occhio umano vede circa 15 milioni di pixel MA: a densita' variabile, dati e limiti per le immagini: risoluzione 43 La risoluzione (precisione) dell'occhio umano e' dell'ordine di mezzo minuto di grado (limite da 0,47min a 1,5min), cioe' 1/120 di grado - valore valido solo per il centro di vista (cono di 1,5 gradi); ==>> dettaglio ancora discernibile a distanza di 1 metro: triangolo lato d=1 m, angolo a = 6.28/(360*120) = = 1,454E-4; sin(a)=a=1,4E-4 = 0,14mm circa !!! ampiezza del cono di vista sono circa 160 gradi orizzontali e circa 120 gradi verticali (nota: i limiti variano individualmente ! c'e' qualcuno che riesce a vedere le fasi di venere...) 44 colori un breve cenno ai colori (da Aristotele al rinascimento all ' ottocento ad oggi) 45 dati e limiti per le immagini: colori i coni della retina (meno sensibili alla luce rispetto ai bastoncini), sono di tre tipi, con sensibilita' diverse per frequenze di luce (colore) diverse questo permette la visione dei colori ! in figura i grafici di sensibilita' dei tre tipi di coni alle diverse freqenze di luce cioe' ai diversi colori; 46 dati e limiti per le immagini: colori la sensibilita' ai colori e' diversa: piu' grande per il rosso, poi per il verde, meno per il blu; l'occhio umano e' in grado di percepire qualche migliaio di tonalita' di colore, e quindi 24 bit/pixel appaiono ragionevoli; 47 dati e limiti per le immagini: colori I bastoncelli sono molto piu' sensibili per luce debole (si attivano con pochi fotoni), ma sono di un solo tipo, e quindi "vedono" solo la luminosita' (c'e' una sola curva di sensibilita' alla luce in funzione della frequenza della luce stessa) -> la visione notturna e' in bianco e nero la sensibilita' dei bastoncelli massima e' alla frequenza luce di circa 500 nm 48 colori spettro visibile: (nano metri) da 380-400 (violetto-blu) a 700-800 (rosso-scuro) colori 49 sotto 380: ultra violetti, raggi x, raggi gamma; sopra 800: infrarossi, microonde,onde tv, onde radio nota: i colori di tutte le figure sono approssimati (cioe' falsati !) dalla resa dello schermo! colori 50 colori spettro visibile: da 380-400 (violetto-blu) a 700-800 (rosso scuro) Sistema (convenzionale) Munsell prevede 13 colori(hue=tono) base,(rosso, rosa, arancio, marrone, giallo, oliva, verde, blu, viola, porpora, bianco, grigio, nero), da cui sono derivati 34 colori composti, come rosso marrone, rosso grigio, rosso arancio ... fino al porpora rosso, poi derivati altri con gradazioni di luminosita' e di saturazione ... ATTENZIONE: nei diagrammi dei colori sono spesso aggiunti i colori dal violetto al rosso, (per chiudere il cerchio dei colori), qui in figura indicati con le percentuali violetto / rosso Con semplice mescolanza (blend) da programma OpenGL in figura, nove quadrati sovrapposti con colori puri (RGB) poi colori mescolati a due a due (RG, GB, BR) e a tre a tre (RGR, GBG, BRB) 51 colori RGB mescolati a 6 livelli, con somma delle intensita' == 6 float cr[28]= {6,5,5,4,4, 4,3,3,3,3, 2,2,2,2,2, 1,1,1,1,1, 1,0,0,0,0, 0,0,0}; float cv[28]= {0,0,1,0,1, 2,0,1,2,3, 0,1,2,3,4, 0,1,2,3,4, 5,0,1,2,3, 4,5,6}; float cb[28]= {0,1,0,2,1, 0,3,2,1,0, 4,3,2,1,0, 5,4,3,2,1, 0,6,5,4,3, 2,1,0}; for( int i=0; i<28; i++) { r= cr[i]/6.0; v=cv[i]/6.0; b=cb[i]/6.0; // intens.da 0 a 1 xa=x1+i*dx28; xb=xa+dx28; my_Rect(xa,h1, xb,h4, r,v,b, aa); } // for 52 53 una matrice di 16 x 16 colori, disegnata con il ciclo: for(int i=0;i<=16;i++){ for(int j=0;j<=16;j++){ r=(16.0-i)/16.0 *(16.0-j)/16.0; v= i/16.0 *(16.0-j)/16.0; b= j/16.0; xa=x1+i*dx16; xb=xa+dx16; ya=h1+j*dy16; yb=ya+dy16; my_Rect(xa,ya, xb,yb, r,v,b, 1.0); }//for j=assey(strisceorizz) }//for i=assex(striscie vert) nota l'effetto "a scalino" sui bordi dei rettangolini (si puo'eliminare...) dal Johannes Itten il pittore Itten nel 1960 pubblico' un libro "Kunst der Farbe" - Arte del Colore - dove definisce il cerchio dei colori (colori additivi, in stampa), partendo dai tre colori primari (additivi) rosso giallo e blu, che mescolati danno il verde (bl+gia), il viola (bl+ro) e l'arancio (ro+gia), che ancora mescolati danno i dodici colori principali del cerchio di colori, come in figura 54 qui il degrado dei colori e'doppio, dello scanner e poi dello schermo... tavola 12x12 colori Itten fig.15 da Itten, pag. 42, fig. 15 (12 x 12 y=chiaroscuro e x=colori) da fare ... 55 definizione di CYM controllo colori CYM (cyano, magenta, yellow) 56 il cerchi dei colori dell'editor ... nel caso di un semplice editor semigrafico (qui powerpoint) il "menu" dei colori e' questo, con controllo luminosita' a cursore (da nero a massima luminosita') 57 colori diagramma CIE 1976 del sistema dei colori nel 1931 e' stato definito uno standard inter-nazionale di colori (tipografia, fotografia, ecc) che e' rimasto quasi immutato nello standard del 1976 58 colori 59 l'occhio vede piu' colori di quanti ne puo' dare un'immagine prodotta con varie tecniche (stampa, schermo, proiezione) - come mostrato nel diagramma a fianco; sistema visivo Dall'occhio umano (100M bastoncini, 6M coni, altrettanti neuroni della retina, piu' il canale di trasmissione (circa 1M neuroni) del nervo ottico=>preelaborazione) si arriva al cervello che elabora i segnali ottici per fornire un' immagine "aggiustata"; es: il ritratto a blocchi molto grandi di colore da vicino non fornisce alcuna imagine, se guardato da lontano si vede un viso (siamo nel 2004) 60 preelaborazione dell'immagine del sistema visivo e illusioni ottiche 61 immagine completa, a scala piu' piccola, si interpreta meglio.. vedi il sito di illusioni ottiche (esempi di come l' occhio aggiusta le immagini) di Michael Bach, Univ.di Friburgo, D, illusioni ottiche le illusioni ottiche sono dovute all'attivita' (automatica) di pre-elaborazione dell'immagine, qui a fianco una delle piu' note (un po' modificata per un effetto maggiore) (dal sito Optical Illusions di M. Bach, Univ. di Friburgo, Germania) 62 preelaborazione e illusione ottica sul sito Optical Illusions di M. Bach, (Univ. di Friburgo, Germania) si trova un elenco delle varie preelaborazioni del sistema visivo dell'occhio umano, e come conseguenza diversi tipi di illusioni ottiche vedere ... 63 compressione un cenno alla compressione dei dati 64 codifica suoni, immagini, filmati 65 L'argomento della codifica di suoni, immagini e filmati e' troppo vasto per poter essere trattato in fondam.di inform.; (sara' trattato in corsi successivi) rimane da ricordare alcuni formati di file audio, immagini e video che oltre la codifica dell'informazione di partenza prevedono abitualmente anche una compressione dei dati (di due tipi principali: compressione fedele, che permette la ricostruzione dell'originale senza perdite, e compressione con perdita, piu' o meno "accettabile", che NON permette la ricostruzione esatta dell'originale) compressione 66 Con opportuni algoritmi di compressione si puo' codificare un insieme (grande) di dati con meno bit: se vogliamo conservare l'originale non alterato, si ha il limite della compressione quando elimino tutta la parte ridondante: al limite, tanti bit quanto e'il contenuto di informazione se invece si ammette " un po' " di perdita di qualita' (suono / immagine / filmato) allora si puo' comprimere ancora, con metodi che eliminano le parti "marginali" (quelle che il nostro udito o la nostra vista recepiscono di meno) in questo caso non c'e' un netto limite ... compressione 67 es. semplice: codifica compressa di simboli ripetuti piu' volte: memorizzo il simbolo e poi il numero di volte che il simbolo va ripetuto ("RLE" run length encoding) "testo con ********* nove asterischi" diventa"testo con [esc]*9 asterischi" (uso un carattere speciale [esc] ) oppure "testo con ***9 asterischi" (ripeto 3 volte il carattere che poi e' seguito dal numero di ripetizioni) questo schema e' usato nel GIF, va bene per immagini con parti estese dello stesso colore (piatte), con poca tessitura a grana fine compressione 68 un'altro esempio sono i codici a lunghezza variabile (es.noto [e antico]: il codice telegrafico di Morse), anno 1835 circa ... un esempio di codifica di simboli a frequenze diverse con codici a lunghezza variabile e' il codice Huffmann, dove i simboli che sono piu' frequenti hanno un codice breve, i simboli meno frequenti hanno un codice lungo; non si riporta il procedimento di codifica ... CLUT 69 Codifica di un'immagine: una tecnica di risparmio di spazio di codifica e' data dall' uso della "tavolozza di colori" o color palette, (Color Look-Up Table): Immaginiamo di usare 8 bit per colore (intensita' colore a 256 livelli), per i tre colori Red Green Blue) per un pixel ho 24 bit, ovvero per ogni pixel ho una scelta tra 16 milioni di colori. Ma un'immagine ad es. a 1200x800=960.000 pixel ha meno di un milione di pixel e quindi l'immagine ha sicuramente meno di un milione di colori; CLUT 70 tavolozza di colori, color palette, Color Look-Up Table: invece di 24 bit per pixel (24bit=16M colori ... questo schermo ;-) uso solo 8 bit per pixel, limito il numero dei colori diversi a 256, questi 256 colori diversi sono codificati a 24 bit nella tavolozza; specifico in una tabella di 256 elementi (la CLUT) quali colori uso, ogni colore della CLUT e'codificato a 24 bit e poi memorizzo per ogni pixel non il colore (24bit) ma l'indice del colore nella tavolozza (8 bit) (schema della VGA, anni '80) - invece di memorizzare 0,96Mbyte x24 bit=2,88 M byte ho 0,96 Mbyte ... compressione 71 - algoritmi di compressione - a seconda del campo di applicazione (immagini di vario tipo, segnali audio, filmati di vario tipo) esistono vari algoritmi di compressione. Un algoritmo molto usato e' la codifica LZW di Lempel Ziv Welch (Unix 1984, GIF87, JPG, ...), e' oneroso in termini di compressione (costruisce delle tabelle di frequenze di simboli e anche di sequenze di simboli che si ripetono (stringhe), e codifica un numero al posto della stringa; molto meno oneroso in termini di decompressione compressione 72 - formati di dati compressi - esistono molti formati di dati compressi per motivi storici, di proprieta' (GIF proprieta'di una ditta, MPG proprieta' di un consorzio.., altri pubblici..) di tipo di algoritmo di compressione, di tipo di dato da comprimere... a seconda del campo di applicazione audio: mp3 (parte del MPEG-1 a livello 3) immagini: formati TIFF, JPEG, MPG, video: DV, MPG-2, MP3, MP4 un esempio di codifica di immagine codifica immagine a colori: precisione dell'immagine (dimensione del raster) precisione dei colori (numero bit per colore) segue un esempio semplice 73 rappresentazione di immagini esempio di immagine con diverse risoluzioni: * sequenza di immagini con risoluzione decrescente; 1) 640x480 pixel (VGA) con 16M di colori (24 bit per pixel) 74 rappresentazione di immagini 2) risoluzione ridotta da 72 pix/pollice con fattore 4: abbiamo un' immagine a 160x120 pixel 16M di colori (24 bit/pixel) 75 rappresentazione di immagini 3) risoluzione ridotta da 72 pix/pollice con fattore 10: abbiamo un' immagine a 64x48 pixel 16M di colori (24 bit/pixel) 76 rap presentazione di immagini 4) risoluzione ridotta da 72 pix/pollice, fattore 20 : abbiamo un' immagine a 32x24 pixel, 16M di colori (24 bit/pixel) l'immagine e' riconoscibile solo a stento.. 77 rappresentazione di immagini 2.o es.: riduco il numero di bit per pixel, cioe' il numero di colori rappresentabili, come cambia l'immagine: a) qui con 16M colori (24 bit per pixel - "true color") e 640x480 pixel; 78 rappresentazione di immagini b) qui con 256 colori (8 bit per pixel, es. codifica GIF) - la differenza quasi non si vede 79 rappresentazione di immagini c) qui con 16 colori (4 bit per pixel) - si comincia a vedere l' effetto del dithering o della retinatura tipo stampa 80 rappresentazione di immagini d) qui con 4 colori (2 bit per pixel) 81 rappresentazione di immagini e) qui con 2 colori ovvero bianco/nero (1 bit per pixel), - ma nota: con i toni grigi resi con griglie di punti piu'o meno densi (dithering) 82 dithering un cenno sul dithering o retinatura 83 dithering (*) tecnica per rendere i toni di grigio con solo due colori (bianco e nero): sostituisco a una zona (un rettangolino) di colore grigio una zona a griglia di bianco/nero (varie tecniche/algoritmi) qui resa di immagine in bianco/nero 84 senza uso di dithering dither verb 1 be indecisive : he was dithering about the election date. 2 Computing: display/print an image without sharp edges so that there appear to be more colors in it than are really available; [adj: dithered bit maps]; noun 1 informal indecisive behavior : after months of dither they had still not agreed. 2 [sing.] a state of agitation : buses are jammed and everyone is in a dither over taxis. 85 immagine originale jpg 216x130 bianco/nero senza dither, 4x4 ordered dithering reticolo 216x130 (16 toni, MA con reticolo 864x520 4 volte piu'grande la tecnica di retinatura per rendere toni intermedi e' nota in tipografia da molto tempo... 4x4 dither con matrice b/n con dithering (algor. ordinata, dimensione Floyd- Steinberg) reticolo 216x130 reticolo 216x130