’’Campionamento e codifica di immagini e suoni’’ Concetto di continuo e discreto La codifica di immagini e suoni Conversione A/D e D/A di un segnale Campionamento, Quantizzazione e digitalizzazione Il teorema di Shannon e la frequenza di campionamento Ricostruzione del segnale campionato: problemi di distorsione Teorema di Fourier e Spettro di un segnale Funzionalità di un calcolatore Trasferimento Elaborazione Controllo Memorizzazione Il calcolatore: modello architetturale 2. Memoria Memorizzazione Memoria 1. Elaborazione Unità Centrale di Elaborazione Elettronica Magnetica Interconnessione Collegamenti (BUS/Cavi) 3. Comunicazione (interfaccia) Periferiche Lo schema di riferimento Schermo Interfaccia ingresso/uscita Tastiera Interfaccia ingresso/uscita Mouse Memoria di massa Interfaccia ingresso/uscita Interfaccia ingresso/uscita Bus dati Bus indirizzi Bus di controllo … Memoria centrale CPU Organizzazione tipica di un calcolatore “bus oriented” CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus Tre tipologie di istruzioni • Istruzioni aritmetico-logiche (Elaborazione dati) – Somma, Sottrazione, Divisione, … – And, Or, Xor, … – Maggiore, Minore, Uguale, Minore o uguale, … • Controllo del flusso delle istruzioni – Sequenza – Selezione semplice, a due vie, a n vie, … – Ciclo a condizione iniziale, ciclo a condizione finale, … • Trasferimento di informazione – Trasferimento dati e istruzioni tra CPU e memoria – Trasferimento dati e istruzioni tra CPU e dispositivi di ingresso/uscita (attraverso le relative interfacce) Elementi di una CPU • • • Unità di controllo – legge le istruzioni dalla memoria e ne determina il tipo. Unità aritmetico–logica – esegue le operazioni necessarie per eseguire le istruzioni. Registri – memoria ad alta velocità usata per risultati temporanei e informazioni di controllo; – il valore massimo memorizzabile in un registro è determinato dalle dimensioni del registro; – esistono registri di uso generico e registri specifici: • Program Counter (PC) – qual è l’istruzione successiva; • Instruction Register (IR) – istruzione in corso d’esecuzione; • … ’’Codifica di immagini e suoni’’ - Campionamento Concetto di continuo e discreto La codifica di immagini e suoni Conversione A/D e D/A di un segnale Campionamento, Quantizzazione e digitalizzazione Il teorema di Shannon e la frequenza di campionamento Ricostruzione del segnale campionato: problemi di distorsione Teoremaa di Fourier e Spettro di un segnale I dati multimediali La realtà è continua Immagini Suoni La codifica delle informazioni è discreta Acquisizione ed Elaborazione di Segnali Segnale: variazione di una grandezza fisica (es. tensione) a cui è associata una informazione Il calcolatore memorizza ed elabora vari tipi di informazioni: numeri, testi, immagini, suoni, filmati, ecc. Occorre rappresentare tale informazione in formato facilmente manipolabile dall’elaboratore Memoria e informazioni INFORMAZIONE ISTRUZIONI REALI DATI NUMERICI INTERI NON NUMERICI CARATTERI ALTRI Rappresentazione mediante opportuna codifica I dati multimediali ALTRI Immagini Vettori Mappa di bit TIFF Filmati Audio MPEG WAV AVI MIDI …….. …….. DWG …….. BMP COMPRESSIONE DEI DATI JPEG GIF …….. Acquisizione ed elaborazione delle immagini Prima che fotografie e immagini possano essere elaborate sul computer, esse devono essere digitalizzate (espresse come numeri zero e uno) tramite un processo chiamato campionamento, quantizzazione e codifica La più piccola unità che compone un'immagine digitalizzata è chiamata pixel (abbreviazione di picture element). Un'immagine digitale è una collezione di pixel. Pixel – Picture element • Le immagini vengono scomposte in griglie • Le caselle di una griglia vengono chiamate pixel • La risoluzione indica il numero di pixel in cui è pixel suddivisa un’immagine •La rappresentazione di un’immagine mediante la codifica a pixel viene chiamata bitmap Un pixel rappresenta in realtà non soltanto un punto dell’immagine, ma piuttosto una regione quadrata coincidente con una cella della griglia Il valore associato al pixel rappresenta la intensità media nella cella Esempio di digitalizzazione Si deve stabilire una convenzione per ordinare i pixel della griglia; assumiamo che i pixel siano ordinati dal basso verso l’alto e da sinistra verso destra. La rappresentazione della figura è data dalla stringa binaria Come si può osservare la ricostruzione è un’approssimazione dell’immagine originaria. Esempio di digitalizzazione La rappresentazione sarà più fedele all’aumentare del numero dei pixel, ossia all’aumentare del numero di quadratini della griglia in cui è suddivisa l’immagine. Codifica delle immagini • Assegnando un bit (1,0) ad ogni pixel è possibile codificare solo immagini in bianco e nero • Per codificare le immagini con diversi livelli di grigio oppure a colori si usa la stessa tecnica: per ogni pixel viene assegnata una sequenza di bit • Per memorizzare un pixel non è più sufficiente un solo bit – Per esempio, se utilizziamo quattro bit possiamo rappresentare 24 = 16 livelli di grigio o 16 colori diversi – Mentre con otto bit ne possiamo distinguere 28 = 256, ecc. L’uso del colore • Il colore può essere generato componendo 3 colori: red, green, blue (RGB) • Ad ogni colore si associa una possibile sfumatura • Usando 8 bit per ogni colore si possono ottenere 256 sfumature per il rosso, 256 per il blu e 256 per il verde che, combinate insieme, danno origine a circa 16,8 milioni di colori diversi (precisamente 16777216 colori) • Ogni pixel per essere memorizzato richiede 3 byte Risoluzione • Il numero di pixel presenti sullo schermo (righe x colonne) prende il nome di risoluzione • Risoluzione tipiche sono 640 x 480 1024 x 768 1280 x 1024 pixel • Esempio: – Per distinguere 256 colori sono necessari otto bit per la codifica di ciascun pixel – La codifica di un’immagine formata da 640 x 480 pixel richiederà 640 x 480 X8 = 2.457.600 bit (307.200 byte ca.300 kByte) Effetti della variazione di definizione Una stessa immagine può essere rappresentata con un numero differente di pixel, per esempio modificando le dimensioni dei pixel, a parità di dimensioni dell’immagine: Grafica bitmap • Le immagini codificate pixel per pixel sono dette immagini in grafica bitmap – Le immagini bitmap occupano parecchio spazio • Esistono delle tecniche di compressione che permettono di ridurre le dimensioni – Ad esempio, se più punti vicini di un’immagine assumono lo stesso colore, si può memorizzare la codifica del colore una sola volta e poi ricordare per quante volte deve essere ripetuta • I formati come GIF, JPEG e PNG sono formati compressi per le immagini • I formati come Postscript e PDF per i documenti DEFINIZIONE DEI COLORI Sistema RGB 1° byte Rosso 255 2° byte verde 255 3°byte blu 255 Colori risultanti Bianco 0 0 0 Nero 255 0 0 Rosso 0 255 0 Verde 0 0 255 Blu 30 30 30 Grigio scuro COMBINAZIONI DI COLORI I componenti fondamentali possono essere il Rosso, Verde e Blu (Red, Green, Blue-> RGB) usati per: produrre luminosità, come nell’esempio sopra visto, dalla cui massima combinazione deriva il bianco (usato, ad esempio, per produrre il colore su monitor) COMBINAZIONI DI COLORI Oppure i componenti fondamentali possono essere il ciano magenta e giallo (CMY) usati per sottrarre luminosità, come nel caso della combinazione CMY (Cyan Magenta Yellow), dalla cui massima combinazione deriva il nero (usato, ad esempio, per produrre delle stampe su carta) Profondità di colore Poiché si utilizzano 3 byte per rappresentare ogni pixel, queste immagini vengono definite a 24 bit Una immagine a colori di 100x100 pixel avrà bisogno di 100 x 100 x 3 byte = 30.000 byte per essere rappresentata Il numero di punti, calcolato come Numero Colonne x Numero Righe, rappresenta la risoluzione di un’immagine (640x480) La risoluzione può venire espressa, però, anche in dpi (dot per inch) (es. 300 dpi) B/N Scala di grigi 1 canale 1 canale 1 bit per canale 8 bit b/n 638 Kbyte 256 toni di grigio 81 kbyte Scala di colore 1 canale 8 bit 256 colori 638 Kb RGB 3 canali, 8 bit per canale (mil di col) 1870 Kb Codifica di immagini in movimento • Un filmato è una sequenza di immagini statiche (dette fotogrammi o frame) • Per codificare un filmato si “digitalizzano” i suoi fotogrammi • Esempio: – 30 immagini ad alta risoluzione (640X480X8) al secondo – 30 immagini/sec x 2457600 bit/imm. = 73.728.000 bit/sec – Un minuto richiederebbe 60 sec x 73.728.000 = 4.423.680.000 bit (5.529.600 byte ca. 5.5 MByte) • Compressione: MPEG (Moving Picture Expert Group), differenza tra fotogrammi • Esempi di altri formati per il video: AVI, MOV,DivX Video ed animazioni Per rappresentare una sequenza di immagini si possono memorizzare tutti i fotogrammi uno dietro l’altro. L’occhio umano ha la proprietà che quando un’immagine viene impressa sulla retina, viene mantenuta alcuni millisecondi prima di svanire. Se una serie di immagini viene proiettata alla velocità di 50 o più immagini/sec, l’occhio non si accorge che ciò che sta vedendo sono immagini discrete. La fluidità del moto e determinata dal numero di immagini diverse per secondo, mentre lo sfarfallio e determinato dal numero di volte per secondo in cui lo schermo e ridisegnato. Video digitali Un video XGA(1024 768) con 24 bit/pixel e 25 immagini/s va trasmesso a 472Mbps! (1024 768) 24 25 471859200bps E’ ovvio che la trasmissione in forma non compressa di materiale multimediale è del tutto fuori questione. Vanno studiate strategie per comprimere l’informazione a nostra disposizione. Le immagini in Movimento • L’occhio umano ricostruisce l’informazione di movimento se riceve una successione sufficientemente rapida di immagini fisse • Cinema: 24 fotogrammi/sec • TV: 25 o 30 fotogrammi/sec • Lo standard MPEG (Moving Picture Expert Group) è sostanzialmente la codifica di ciascun frame fisso, oltre alla codifica di suoni, attraverso tecniche di Compressione dei dati. – senza compressione, 1 min. di filmato a 24 fotogrammi /sec occuperebbe 644MB Compressione Esempi di compressione: Per ridurre la quantità di informazioni del filmato, si può memorizzare il primo fotogramma e, a seguire, registrare solo le modifiche rispetto ai fotogrammi precedenti. E’ inoltre possibile comprimere le informazioni residue ignorando le variazioni di colore così piccole da non poter essere colte dall’occhio umano in un’immagine in movimento. Compressione Compressione senza perdita (lossless) Tali algoritmi sfruttano la ridondanza presente nei dati, rappresentando l’informazione multipla una sola volta ed indicando il numero di ripetizioni oppure tengono conto della frequenza statistica degli elementi dell’informazione. Esempio: il codice di huffman è il tipico codice completamente reversibile Compressione con perdita (lossy). I sistemi di codifica con perdita di informazione sono importanti, perché a volte accettare perdita di informazione può far guadagnare molto in termini di compressione. Esempi di formati di questo tipo sono JPEG, MPEG, MP3, ecc… 3° Salvataggio 2° Salvataggio 1° Salvataggio Formato JPEG (Joint Photographic Experts Group) Si tratta di un formato detto “a perdita di dati”; esso parte dalla constatazione che l’occhio umano percepisce maggiormente una variazione di luminanza piuttosto che una variazione di crominanza. Ogni nuovo processo di compressione del file produce un deterioramento dell’immagine. Codifica dei suoni • Fisicamente un suono è rappresentato come un’onda che descrive la variazione della pressione dell’aria nel tempo (onda sonora) t • Sull’asse delle ascisse viene rappresentato il tempo e sull’asse delle ordinate viene rappresentata la variazione di pressione corrispondente al suono stesso Codifica dei suoni • Si effettuano dei campionamenti sull’onda (cioè si misura il valore del segnale a intervalli di tempo costanti ∆t ) e si codificano in forma digitale le informazione estratte da tali campionamenti t Periodo di campionamento Tcamp ∆t • Quanto più frequentemente il valore di intensità del segnale viene campionato, tanto più precisa sarà la sua rappresentazione • Il numero di campioni raccolti per ogni secondo definisce la frequenza di campionamento fCamp che si misura in Hertz (Hz) Codifica dei suoni • La sequenza dei valori numerici ottenuti dai campioni può essere facilmente codificata con sequenze di bit (quantizzazione) Una approssimazione! t • La rappresentazione del segnale è tanto più precisa quanto maggiore è il numero di bit utilizzati per codificare l’informazione estratta in fase di campionamento Codifica dei suoni (esempio) • Se volessimo codificare la musica di qualità CD dovremmo: – Usare due registrazioni corrispondenti a due microfoni distinti – Campionare il segnale musicale producendo 44100 campioni al secondo (44.1 KHz) – Per ogni campione (che è un numero) si usano 16 bit per codificarlo Campionare a 16 bit vuol dire avere 216 valori da assegnare alla forma d’onda in quel punto (65356) – Per cui, il numero di bit che sarebbero necessari per codificare ogni secondo è pari a: 2 x 44100 campioni x 16 bit/campione = 1.414.200 bit ca.172 kByte • Un brano di circa 3 minuti quindi occupa circa 35 MByte • Per facilitare la trasmissione in rete di flussi multimediali (sia audio e che video) si ricorre ad algoritmi di compressione Riassumendo: per digitalizzare un segnale....... CAMPIONAMENTO: si estraggono ad intervalli regolari dei campioni del segnale. La frequenza con cui si estraggono i campioni è detta frequenza di campionamento (misurata in Hz). QUANTIZZAZIONE: si convertono i valori numerici che rappresentano le ampiezze del segnale (variabili in origine in un intervallo continuo) in un numero finito di valori. CODIFICA: Il segnale, dopo essere stato campionato e quantizzato, per poter essere utilizzato dall’elaboratore, deve ancora essere convertito in digitale, secondo un’opportuna codifica. (8 oppure 16 bit) Segnali audio - Campionamento • Esiste una frequenza di campionamento (detta valore di Nyquist) che garantisce la ricostruzione fedele del segnale. • Teorema Nyquist - Shannon : Il segnale può essere ricostruito completamente se è stato campionato ad una frequenza Fc maggiore del doppio della frequenza della componente del segnale di frequenza più alta fM (Fc >= 2 fM) • Es. l’orecchio umano è in grado di percepire frequenze tra i 20Hz e i 22 KHz la frequenza di campionamento per l’audio (limite di Nyquist) si pone quindi attorno ai 44 KHz. Larghezza di Banda • La larghezza di banda (di una trasmissione, di un segnale o di un canale di comunicazione) è la velocità di trasmissione dell'informazione. •Nel caso delle comunicazioni digitali la banda si misura direttamente in bit al secondo (kbit/s, Mbit/s ecc.), mentre per le comunicazioni analogiche la banda si misura in modo indiretto, ed è data dall'intervallo di frequenze occupato dal segnale: per esempio, una comunicazione telefonica analogica occupa le frequenze che vanno da 300 a 3400 Hz, quindi ha una banda di 3100 Hz (cioè 3400 - 300). • L'intervallo di frequenze è strettamente correlato alla quantità di informazione che può fluire attraverso un canale, in base al teorema del campionamento di Nyquist-Shannon. Banda di un canale e banda di un segnale • Per banda di un canale di comunicazione si intende la sua massima velocità di trasmissione, cioè la massima quantità di informazione che esso può trasmettere nell'unità di tempo (massima banda disponibile). • Per banda di un segnale si intende invece la minima velocità di trasmissione necessaria perché possa essere trasmesso senza errori o distorsione (minima banda necessaria). Il teorema del campionamento di Nyquist-Shannon (1949) definisce il minimo della frequenza di campionamento di un segnale, necessario per evitare distorsioni dello stesso. Dato un segnale, con larghezza di banda finita e nota, la frequenza minima di campionamento di tale segnale deve essere almeno il doppio della sua massima frequenza: Fc >= 2 fM Il campionamento è un passo del processo di conversione analogico-digitale di un segnale. Consiste nel prelievo di campioni (samples) da un segnale analogico e continuo nel tempo ogni t secondi. t è l'intervallo di campionamento, mentre Fc=1 / t è la frequenza di campionamento (es. 1 kHz 1/1.000 s = 1 ms) • Il risultato del campionamento è un segnale con valori discreti (segnale digitale) • Tale segnale sarà in seguito quantizzato e codificato per renderlo accessibile a qualsiasi elaboratore digitale. • Il teorema del campionamento pone un vincolo per la progettazione di apparati di conversione analogico-digitale: se si ha a disposisione un campionatore che lavora a frequenza Fc , è necessario mandargli in ingresso un segnale a banda limitata da Fc /2. In generale un segnale analogico non è limitato in frequenza, ma dovrà essere filtrato per eliminare le componenti di frequenza maggiore di Fc /2, a tale scopo si usa un filtro anti-aliasing (filtro passa basso) Effetto Aliasing Consiste in una sovrapposizione del segnale campionato che rende impossibile l'esatta ricostruzione del segnale originale e tale ricostruzione risulterà distorta. Per questo motivo ogni apparato di conversione analogico-digitale ha un filtro anti-alias (filtro passa basso) a monte del campionatore, che limita lo spettro del segnale di ingresso a Fc >= 2 fM Simulazione di un Segnale sinusoidale a frequenza 27 Hz campionato con differenti frequenze di Campionamento (Sample) fc=37 fs 1.5000 fc=10,5 fs 1.0000 0.5000 37 34 31 28 25 22 19 16 13 10 7 4 1 0.0000 -0.5000 -1.0000 fc=1KHz fc=333 Hz -1.5000 fc=1,8 fs fc=50 Hz fc=110 Hz ..Un errato campionamento ha generato una frequenza differente da quella del segnale (freq. di aliasing) • Il teorema di Shannon-Nyquist e la frequenza di campionamento Dato un segnale continuo e a banda limitata esso è descritto completamente dai suoi campioni, se essi sono presi ad una frequenza almeno doppia rispetto alla frequenza massima del segnale Es: Periodo T=37ms f segnale=1/(37 ms)= 27 Hz Volt 8 bit in ADC DAC clock t [MilliSecondi] Sample Clock f campionamento ? Simulazione di un Segnale sinusoidale a frequenza 27 Hz campionato con differenti frequenze di Campionamento (Sample) fc=37 fs 1.5000 fc=10,5 fs 1.0000 0.5000 37 34 31 28 25 22 19 16 13 10 7 4 1 0.0000 -0.5000 -1.0000 fc=1KHz fc=333 Hz -1.5000 fc=1,8 fs fc=50 Hz fc=110 Hz ..Un errato campionamento ha generato una frequenza differente da quella del segnale (freq. di aliasing) PRODUZIONE DEL SUONO • L’orecchio umano riesce a udire suoni da 20 Hz a 20KHz con una sensibilità maggiore nell’intervallo tra 2 e 4 KHz • (la voce umana varia da 500 Hz a 2KHz) • Per il teorema di Shannon e Nyquist la frequenza di campionamento di un’onda sonora deve essere doppia rispetto alla massima frequenza da riprodurre per ottenere una conversione completa del segnale analogico • Alla qualità audio CD la frequenza di campionamento è di 44.1 KHz (il doppio di 22.05 KHz) • Campionare a 16 bit vuol dire avere 216 valori da assegnare alla forma d’onda in quel punto (65356) • Campionare a 8 bit vuol dire averne solo 256 PRODUZIONE DEL SUONO • Per la voce un campionamento accettabile è di 8 bit a 22 KHz • 10 sec di audio digitale stereo a 44.100 Hz equivalgono a 1.764.000 byte (1,68 Mb) per questo motivo in un Cd audio trovano posto solo circa 70 min di musica • Formati audio: • Wave (.wav) formato nativo di Microsoft Windows • MP3 MPEG(Motion Picture Expert Group) layer 3 Usa un complesso algoritmo di compressione basato sulla fisiologia dell’orecchio (mascheramento) che riduce l’occupazione dei file da un minimo di 12 a1 fino ad un massimo di 96 a 1 • Real Audio (Real Networks) formato per lo streaming audio/video • AIFF utilizzato da Apple in QuickTime • MIDI – Codifica le note e gli strumenti che devono eseguirle – Efficiente, ma solo musica, non voce, scarsa qualità del suono Convertitori Analogici Digitali (ADC) e Digitali Analogici (DAC) Dispositivi di codifica (ADC) Cavo elettrico 1 Trasporta il segnale elettrico analogico fino al ADC Suono onda di pressione dell’aria Analog to Digital Converter Cavo elettrico 2 Trasporta il segnale elettrico digitale verso il computer Microfono Converte il suono in segnale elettrico Analog to Digital Converter Campionamento Segnale analogico Quantizzazione Segnale campionato 10001001010001 Segnale digitale Dispositivi di codifica (DAC) • Esiste anche il processo inverso, che trasforma l’informazione da digitale ad analogica. Nel caso del suono questo compito è svolto dal D.A.C. (Digital to Analog Converter) che trasforma il segnale digitale in segnale elettrico analogico; tale segnale viene successivamente trasformato in onda sonora dalle casse acustiche. Cavo elettrico 1 Trasporta il segnale elettrico digitale verso il DAC Digital to Analog Converter Cavo elettrico 2 Trasporta il segnale elettrico analogico fino alla cassa Cassa Acustica Trasforma il segnale elettrico analogico in suono Suono onda di pressione dell’aria Spettro di un segnale • Il campionamento introduce un aliasing: in pratica il campionamento provoca “duplicazioni” dello spettro del segnale. Se non si rispetta il teorema di Shannon l’aliasing introdotto dal campionamento impedisce la ricostruzione del segnale originale, in quanto due spettri adiacenti si sovrappongono! fc >2 fs ADC fs freq fs fc freq Spettro di un segnale L’effetto di un errato campionamento, nell’ambito del dominio delle frequenze Per un buon funzionamento del campionatore e per evitare aliasing, si introduce un filtro passa basso che limita lo spettro del segnale di ingresso a fc >2 fs fc <2 fs Filtro PB ADC Conversione analogico - digitale - La qualità della conversione.. Segnale in forma numerica + errore di quantizzazione Vin ADC DAC 8 bit Segnale 8 bit 28=256 livelli Esempio: analogico dal • Vin max=3 Volt => Risoluzione 3/256 = 0.01Volt trasduttore • Vin max=10Volt => Risoluzione 10/256 = 0.04Volt Vmax / 2n : intervallo di quantizzazione Segnale analogico ricostruito dal DAC intervallo di quantizzazione Dove n è il numero di bit del campionatore Con risoluzione maggiore di 8 bit avremmo ottenuto un risultato affetto da minor errore! Digitale Analogico Analogico Digitale Bitrate • Nell’ambito multimediale il bitrate rappresenta la quantità di informazione che è memorizzata/trasmessa per unità di tempo. • Tipicamente il bitrate è scelto in modo tale da ottimizzare due parametri contrastanti come la qualità del materiale multimediale e la quantità di banda occupata Audio (MP3) • 32 kbit/s — MW (AM) qualità • 96 kbit/s — FM qualità Video (MPEG2) • 16 kbit/s — Videochiamata • 128 – 384 kbit/s — Videoconferenza • 1 Mbit/s — VHS qualità • 5 Mbit/s — DVD qualità • 15 Mbit/s — HDTV qualità Supporti digitali a tecnologia ottica La scrittura e lettura di un supporto ottico si basa sulla tecnologia laser: Il disco è costituito di un materiale riflettente che presenta delle incisioni (zone opache) sulla sua superficie. Un raggio laser, attraverso un sistema di lenti, viene diversamente riflesso (zone incise o no). Tramite un prisma il raggio riflesso viene deviato su una cellula fotoelettrica che rileva il fascio e produce una sequenza di cifre binarie. Supporti digitali a tecnologia ottica Supporti digitali a tecnologia ottica Supporti digitali a tecnologia ottica Compact Disk (CD) 650 MByte (si utilizza una sola faccia) Digital Versatile/Video Disk (DVD) 9 – 17 GByte (25 volte la capacità di un CD) Sono esteriormente simili (diametro 120 mm e spessore 12 mm) Supporti digitali a tecnologia ottica (CD) Compact Disk – Read Only Memory (CD - ROM) (scrivibile ma non riscrivibile) Compact Disk – Read Write (CD-RW) (riscrivibile n volte) Compact Disk – Audio (CD-Audio) (utilizzato per la musica) Formati file audio (non compressi) Wav Utilizzato su sistemi operativi Microsoft Windows. Valori consentiti: Frequenza di campionamento: 11KHz, 22 KHz o 44 KHz Livelli di quantizzazione: 8 bit o 16 bit Numero di canali: 1 o 2 (stereofonia) Queste informazioni sono contenute nel file, ma restano trasparenti all’utilizzatore. Dimensioni eccessive: milioni di bit per qualche minuto di musica! Formati file audio (non compressi) Au (Audio m-law) Utilizzato su sistemi operativi Sun Microsystem e Mac. Caratteristica principale: m-law encoding La scala dei livelli di quantizzazione sull’asse Y non è lineare ma logaritmica cioè sono utilizzati più livelli di quantizzazione per i segnali a basse frequenze e meno livelli per i segnali ad alte frequenze Approssima meglio l’onda del segnale audio Anche in questo caso: troppi bit per un file di musica! Formati file audio (compressi) •Necessità di compressione per poter minimizzare lo spazio e favorire la distribuzione di musica su Internet •MPEG (Moving Picture Experts Group) si occupa di sviluppo di algoritmi di compressione di file audio e video •Sistemi di compressione di tipo percettivo: si fa riferimento alla percezione umana del suono e si eliminano le informazioni inerenti a quella parte di segnale che l’uomo non è in grado di percepire. •Sono compressioni di tipo lossy cioè il file decompresso non è identico all’originale (perdita di informazioni). Formati file audio (compressi) MPEG Audio: nome che indica tutti gli algoritmi di compressione di file audio Tre livelli di compressione : •Layer I •Layer II •Layer III comunemente riconosciuto come MP3 Ogni livello corrisponde ad una diversa qualità di riproduzione audio: maggiore qualità maggiore complessità ed efficacia dell’algoritmo MP3 Algoritmo di tipo lossy e source encoding (o percettivo): non tanto una ricostruzione fedele del segnale ma una ricostruzione quanto più simile all’originale, anche con forme d’onda diverse . MP3 tende a ridurre il numero di bit di codifica dei campioni (meno di 16 bit) piuttosto che la frequenza di campionamento. MP3 Possibili scelte: •Bassa compressione ed alta qualità (192K – 300K bit per secondo) •Media compressione e media qualità (128K bit per secondo) 12 ore di musica su CD • Alta compressione e bassa qualità (16k bit per secondo) Fine Pulse Code Modulation Campionamento (Hz) Bit Mono/Stereo Occupazione Kb/s 8.000 8 8/ 16 8.000 16 16/ 31 11.025 8 11/ 22 11.025 16 22/ 43 22.050 8 22/ 43 22.050 16 46/ 86 44.100 8 43/ 86 44.100 16 86/172 Spettro di un segnale e l’analisi armonica di Fourier Sviluppo di funzione periodica in serie di FOURIER: • Il teorema di Fourier afferma che una qualsiasi funzione periodica può essere ottenuta sommando un certo numero di funzioni sinusoidali di opportuna ampiezza, frequenza e fase. ( fondamentale + armoniche) • Ad esempio un’onda quadra può essere scomposta in una sommatoria che coinvolge una sinusoide (fondamentale) alla stessa frequenza del segnale e tutte le armoniche dispari di ampiezze decrescenti Video - MPEG • Lo standard MPEG video ente che sviluppa MP3 (Moving Picture Experts Group) . • versioni: MPEG-1 1988 MPEG-2 1990 MPEG-4 1998 Video – Compressione • La compensazione del moto è la principale tecnica di compressione dello standard MPEG. • Sfrutta le somiglianze esistenti tra frame successivi (ridondanza temporale) • trova per ogni macroblocco la sua migliore definione (best match) nel frame di riferimento Video – MPEG 1 La compressione è effettuata rimuovendo: • Ridondanza spaziale compressione dei singoli fotogrammi (JPEG) • Ridondanza temporale: compressione che sfrutta le relazioni tra i diversi fotogrammi, per rimuovere informazioni ridondanti • qualità del filmato paragonabile a quella di un videoregistratore VHS. Video – MPEG 2 • E’ scalabile: prevede diversi profili con diverse qualità adatti ad applicazioni differenti e diversi livelli di compressione per ciascun profilo. • Offre la possibilità di gestire differenti aspect-ratio (tra cui il 16:9 WideScreen) • E’ adatto alla trasmissione streaming. • Mantiene informazioni sull’origine del materiale video Video – MPEG 4 • Introduce il concetto di VOP (Video Object Planes), in cui ogni parte della sequenza video di ingresso viene divisa in un numero di regioni con immagini di forma arbitraria. • Il singolo oggetto audiovisivo può essere sia sintetico che naturale. • Ogni oggetto può essere manipolato dall'utente in ogni sua caratteristica • La codifica di ogni oggetto riporta le sue caratteristiche essenziali Compressione Huffman • Ideato nel 1952 dal matematico D.A. Huffman • Metodo di compressione senza perdita • gli elementi che si ripetono frequentemente sono identificati da un codice breve,gli elementi rari nel file originale ricevono nel file compresso una codifica lunga • è tanto più efficace quanto più ampie sono le differenze di frequenza degli elementi del file originale, Compressione LZW • • • è il risultato delle modifiche apportate nel 1984 da Terry Welch ai due algoritmi sviluppati nel 1977 e nel 1978 da Jacob Ziv e Abraham Lempel, permette di comprimere archivi di dati sfruttando la ricorsivita' delle stringhe relative alle informazioni in essi contenute. Viene creato un dizionario delle stringhe di simboli ricorrenti nel file, costruito in modo tale che ad ogni nuovo termine aggiunto al dizionario sia accoppiata in modo esclusivo un'unica stringa. Esiste un dizionario di partenza costituito dai 256 simboli Video digitali Un’immagine ferma riprodotta a 20 immagini/s non mostrerà movimenti a scatti ma conterrà sfarfallio perché un’immagine decadrà dalla retina prima che appare la successiva. Un film con 20 immagini/sec, ciascuna riprodotta 4 volte di fila, non avrà sfarfallio, ma il moto apparirà discontinuo. Il problema si risolve se si trasmettono 25 immagini/s e vengono poi riprodotte due volte. Con 25 immagini al secondo quanto costa trasmettere in digitale? MPEG Audio (Moving Picture expert Group) Attualmente lo standard, senza compressione, per le registrazioni audio prevede campioni di 16 bit (65.536 “sfumature”) registrati ad una frequenza di 44,1 kHz. Per gestire un secondo di audio di qualità sono necessari circa 1400 Kbit/s! Una minore profondità del campione (8 bit invece di 16) comporta una perdita in termini di dinamica; una riduzione della frequenza di campionamento comporta una perdita nella risoluzione. L’utilizzo della compressione MPEG consente di ridurre a un dodicesimo l’occupazione di memoria dei campioni audio. Essa non intacca né la risoluzione né la dinamica. Elementi di psicoacustica Se si emette un suono ad una determinata frequenza, con una certa energia, l’udito non sarà capace di percepire le frequenze immediatamente prossime anche se queste hanno volumi (cioè energia) appena inferiori. Questo fenomeno è noto con il nome di mascheramento Algoritmo di compressione La compressione si ottiene effettuando la trasformata veloce di fourier sul segnale audio. Lo spettro viene diviso in 32 bande di frequenza ognuna delle quali viene elaborata separatamente. Quando sono presenti due canali stereo, viene anche sfruttata la ridondanza inerente nell’avere due sorgenti audio altamente sovrapponibili. L’audio MPEG può comprimere un CD di rock’n roll fino a 128 kbps senza alcuna perdita di qualità percettibile. Per un concerto di pianoforte sono necessari almeno 196 kbps. Risoluzione di un’immagine Ogni periferica (stampante, scanner, schermo…) che riceve e riproduce immagini ha una specifica risoluzione Risoluzione di 20 dpi 160 dpi La risoluzione spaziale è il più piccolo dettaglio distinguibile in una immagine: il rapporto tra dimensione dell’immagine e numero di punti che utilizziamo per descriverla si chiama risoluzione e si misura in dpi (dots per inch, punti per pollice). 72 dpi 160 dpi Rappresentazioni di immagini più complesse Si codificano i toni di grigio Si associa una codifica di un tono di grigio ad ogni pixel Le immagini a scale di grigio contengono sfumature ma non colori (solo bianco, nero e grigio). Una fotografia in bianco e nero è un'immagine a scale di grigio. Immagini Vettoriali Un'altra forma di grafica su computer viene chiamata grafica vettoriale e si basa su formule numeriche. E’ possibile individuare la presenza di strutture elementari di natura più complessa, quali linee, circonferenze, archi, ecc. Quando si inviano immagini vettoriali al monitor o alla stampante, queste vengono convertite in pixel in base alla dimensione dell'immagine in output. Immagini a colori Definizione dei colori: in ogni punto, per rappresentare un qualsiasi colore dello spettro, è sufficiente definire l’intensità dei tre colori fondamentali (per le immagini a video). Il numero di bit utilizzati per rappresentare il colore di un singolo pixel si chiama PROFONDITA’ DEL COLORE. Disponendo di un byte per ogni colore fondamentale, potremo rappresentare 256*256*256 = 16.777.216 colori. 2 bit 4 bit 8 bit 24 bit Immagini a colori Quindi anche le immagini a colori possono essere memorizzate in forma numerica (digitale) suddividendole in milioni di punti, per ognuno dei quali si definisce il colore in termini numerici. La qualità di un’immagine dipende dal numero di punti (risoluzione) in cui viene suddivisa e dai toni di colore permessi dalla codifica. Le immagini bitmap vengono quindi memorizzate come una lunga sequenza di bit il cui significato dipende dalla particolare codifica adottata. Bitmap e risoluzione Il formato di rappresentazione per punti che abbiamo visto è definito BITMAP (o RASTER). E’ particolarmente adatta per riprodurre, fotografie, dipinti e tutte le immagini per le quali ogni punto dell’immagine è significativo e deve essere descritto da un singolo elemento indipendente. Nel caso in cui una immagine sia destinata alla stampa la risoluzione richiesta è di di 300 dpi. Lo standard usato per il video è di 72 dpi. Immagini vettoriali In tale formato è presente tutta l’informazione necessaria a riprodurre l’immagine, a prescindere dalle dimensioni, pertanto si elimina il problema legato al rapporto tra risoluzione e definizione (per ingrandire o ridurre la riproduzione basta agire sul sistema di coordinate). Evidentemente non si presterà per rappresentare immagini composte da continue variazioni di colore, quali ad esempio le fotografie. Esso si utilizza per immagini più simili a disegni che a fotografie, è possibile definire la figura in termini matematici Mascheramento Mascheramento generato da un tono ad 1 kHz a 60 dB. Si è osservato che il mascheramento copre un range di 100Hz per frequenze inferiori ai 500 Hz, ma cresce velocemente per frequenze oltre i 500Hz. Persistenza del mascheramento: l’energia del tono mascherante non decade immediatamente, ma ha la persistenza di qualche millisecondo. SAMPLE AND HOLD Il Sample and Hold nasce dall’esigenza di campionare il segnale analogico e provvedere a mantenerlo per tutto il tempo della conversione in digitale. Il circuito che realizza tale operazione è costituito da un interruttore e un condensatore. vi v(t) C S/H S/H = 0 T chiuso S/H = 1 T aperto Campionamento del segnale Vi=V-=V+=v(t) Mantenimento del valore v(t) - vi v(t) C S/H Il 2° A.O. fa scaricare lentamente il condensatore durante la fase di Hold I S T I D S D G R S/H IR IC B S/H C E S/H basso BJT interdetto VGS RI R 0 T chiuso S/H alto BJT conduce VGS RI R 0 T aperto La conversione A/D fa corrispondere a ogni campo di valori analogici un dato numerico. Solo per il valore analogico al centro del campo la conversione è esatta. Q=Ax-A* Q= errore di quantizzazione; Ax=grandezza da convertire Sull’asse delle ascisse è riportata la tensione analogica d’ingresso mentre sull’asse delle ordinate è riportato il codice generato in uscita Q(1/2).LSB 4 bit ADC Q varia linearmente all’interno di ogni intervallo: è massimo alle due estremità e nullo al centro Andamento dell’errore assoluto in funzione della grandezza analogica. Conversione A/D a 8 bit Ad esempio al terzo “colpo di clock” del campionatore, viene estratto un campione pari a 2,6 Volt, che nel blocco successivo viene associato al codice 00..011. Si noti l’errore di quantizzazione effettuato! Fine Compressione Huffman • Albero di Huffman - alla base gli elementi più rari - elementi frequenti vicini alla radice - il codice ident. di ogni elemento è, partendo dalla radice, 0 se si va verso il figlio di sinistra e 1 se si va verso quello di destra - es..: b=01