Sei sulla pagina 1di 18

Rendering

Il rendering pu essere definito come linsieme delle procedure che permettono di conseguire il massimo grado di realismo nella percezione visiva di una scena tridimensionale. La descrizione della scena, effettuata mediante strutture dati opportune, deve includere: la geometria, la forma, e la disposizione degli oggetti le caratteristiche superficiali di colore, caratteristiche ottiche e tessiture ombre e illuminazione

Livelli crescenti di verosimiglianza della raffigurazione eidomatica. Alcune operazioni/algoritmi standard: proiezioni ortogonali fil di ferro rimozione delle linee nascoste rimozione delle superfici invisibili o Ray casting o Z-buffer modelli di illuminazione locali o Lambert o Phong o modello completo ombreggiature e ombre trasparenza tessiture ed effetti superficiali riflessioni a specchio modelli di illuminazione globali o ray tracing o radiosit

I metodi di simulazione numerica del campo ottico hanno il limite di operare sul versante della modellistica fisico matematica, e trascurano gli aspetti fisiologici e psicofisici, ad esempio la capacit di cogliere per adattamento le zone dombra, la capacit di filtrare colori dominanti, la percezione contestuale delle caratteristiche del colori, le illusioni ottiche, ecc., ossia tutto ci segue dalla presenza di complesse elaborazioni di strutture come retina e sistema corticale del cervello. proiezioni ortogonali fil di ferro: la forma geometrica descritta mediante linee di contorno rimozione delle linee e superfici invisibili: determinazione della visibilit o meno di spigoli o superfici nascoste da altri oggetti rispetto alla direzione di osservazione, o metodo z-buffer: limmagine, tracciata pixel per pixel, mantiene la profondit dei pixel gi tracciati per poterli confrontare con quelli da tracciare. Lalgoritmo z-buffer presuppone due elementi (che abbiamo gi incontrato): un frame buffer con una tabella contenente linformazione di profondit dei singoli pixel associazione univoca di ogni punto degli oggetti della scena a un pixel del piano di proiezione (schermo), rasterizzazione o metodo ray casting: dal centro di proiezione si dipartono tutti i raggi verso i pixel dello schermo e si determina la possibile intersezione con gli oggetti della scena, maggiore complessit computazionale rispetto allo z-buffer per la necessit di esplorare lintero spazio immagine 1

Modelli di illuminazione locali: Intensit luminosa Modello di Lambert Iv [lm / sr] luce riflessa in tutte le direzioni dagli oggetti con dipendenza angolare di tipo coseno (rispetto alla normale alla superficie).

I modelli locali considerano linterazione tra la luce prodotta dalle sorgenti e gli oggetti della scena singolarmente presi senza considerare linterazione tra di essi o la latmosfera generale. Osservazione: In questo modello la luminanza riflessa da un elemento di area infinitesimo risulta costante: la luminanza costante. Un modello leggermente pi articolato introduce un contributo di luce ambientale uniforme, non lambertiana, per ottenere immagini meno contrastate dove il pedice a sta per ambientale e l per lambertiana. Il modello di Phong include unulteriore elaborazione: c un contributo di luce riflessa con dipendenza spaziale opportuna attorno alla direzione di riflessione speculare Una sorgente estesa pu essere modellata come una superficie fittizia riflettente la luce irradiata da una sorgente puntiforme secondo la specularit di Phong Il modello locale completo include i contributi del modello di Phong con in pi: numero arbitrario di sorgenti, attenuazione, nebbia e altri possibili effetti (descritti nelle slide successive). Lattenuazione (effetto nebbia) modellabile semplicemente con un coefficiente di attenuazione katt, inversamente proporzionale al quadrato della distanza. Per cui il colore da attribuire a un pixel una media pesata con un fattore di nebbia f compreso tra 0 e 1. Ombre proiettate: le sorgenti di luce, puntiformi o estese, a distanza finita o infinita, proiettano ombre degli oggetti di una scena sulle superfici vicine. Numerose le tecniche adottate: calcolo delle superfici in ombra per ogni sorgente e successiva proiezione delle superfici dal punto di osservazione creazione di volumi virtuali, coni dombra dei vari oggetti e successiva intersezione col frustum di visione (tronco di piramide che contiene la scena visibile dallosservatore)

Ombreggiatura smussata
Si attenua leffetto di resa a facce piane delle superfici curve mediante interpolazione opportuna del livello di illuminazione allinterno della facce. La trasparenza un altro importante effetto che pu accrescere il grado di realismo di una scena. legge di Snell visione attraverso oggetti (semi)trasparenti.

Tessiture ed effetti superficiali


tecnica efficace e di grande realismo visivo, spesso in grado anche di compensare i limiti e le approssimazioni del modello di illuminazione uno dei problemi: proiettare un disegno rettangolare o un insieme pi o meno regolare di colori su superfici curve bump texture: applicazione di una matrice di valori di perturbazione rispetto alla normale a una superficie, trattata come una texture, per simulare effetto buccia darancia 2

riflessione a specchio, environment map la scena proiettata sulla superficie del dominio visivo e riproiettata sulla superficie delloggetto riflettente.

Modelli di illuminazione pi rigorosi (spesso integrati con gli effetti descritti per il modello locale) Ray tracing o richiami ottica geometrica o caratteristiche del ray tracing o aspetti positivi e negativi Radiosit o metodo a elementi finiti o aspetti positivi e negativi

Ray tracing
An improved illumination model for shaded display, Turner Whitted: uno dei primi modelli (80), adottava un modello locale analogo a quello di Phong. To accurately render a two-dimensional image of a threedimensional scene, global illumination information that affects the intensity of each pixel of the image must be known at the time the intensity is calculated. In a simplified form, this information is stored in a tree of rays extending from the viewer to the first surface encountered and from there to other surfaces and to the light sources. A visible surface algorithm creates this tree for each pixel of the display and passes it to the shader, that traverses the tree to determine the intensity of the light received by the viewer. Consideration of all of these factors allows the shader to accurately simulate true reflection, shadows, and refraction, as well as the effects simulated by conventional shaders. Anti-aliasing is included as an integral part of the visibility calculations. Basi del Ray tracing Generating Rays Intersecting Rays with the Scene Lighting Shadowing Reflections

Forward Ray-Tracing: simulate light rays from light source to eye. Backward Ray-Tracing: trace rays from eye instead, do work where it matters.

Modello ad albero
Da ogni nodo si dipartono due rami, riflessione e trasmissione, le foglie sono terminazioni dei raggi, sullo sfondo o sulle sorgenti di luce, una volta che lintero albero, che descrive la storia dei pixel sullo schermo, stato generato, si pu ripercorrerlo a ritroso per applicare il modello di illuminazione. Ray parametric form: ray expressed as function of a single parameter (t) [fov: field of view] Il raggio ombra al di l di un oggetto non trasparente serve a determinare la possibilit che venga proiettata uneventuale ombra da un oggetto interposto rispetto a quella sorgente. Caratteristiche del ray tracing: il costo computazionale cresce rapidamente col numero di raggi. I risultati sono spesso appariscenti ma a volte freddi e artificiosi; meglio per illuminare esterni piuttosto che interni. Il cambio del punto di vista implica un ricalcolo complessivo. Tuttavia il Ray Tracing adatto per il calcolo parallelo: vari processori possono dividersi le aree da raffigurare portando il tempo di calcolo al 3

tempo richiesto da un singolo processore per una singola immagine. Non facile da applicare in tempo reale, come nella realt virtuale.

Radiosit
Affronta il problema dellilluminazione mediante un bilancio dellenergia luminosa scambiata da ogni singola superficie elementare degli oggetti che costituiscono la scena. Ogni superficie caratterizzata da determinate propriet di emissivit, riflettivit e assorbimento alle diverse lunghezze donda. Il metodo base della radiosit presuppone alcune ipotesi semplificative: Superfici opache: assenza di trasmissione allinterno del materiale Superfici grigie: indipendenza dalla lunghezza donda Superfici lambertiane: energia riflessa uniforme in tutte le direzione Emissivit uniforme: lenergia propria emessa uniforme in tutte le direzioni Trasparenza del mezzo: latmosfera della scena trasparente

Il calcolo, in generale pesante, costituito per lo pi da inversione di matrici di grandi dimensioni. La radiosit un approccio adatto ad applicazioni di realt virtuale, in tempo reale, perch se la geometria della scena non cambia lalgoritmo non va ricomputato: indipendenza dal punto di vista. Pi adatto agli interni che agli esterni. Parametri dellalgoritmo: Radiosit B: illuminanza di uscita (lezione colore), espressa in lumen/m2, lincognita del problema. Emissivit E: espressa in lumen/m2, lenergia emessa in modo autonomo dalla superficie. Riflettivit : coefficiente compreso tra 0 e 1 che effettua un media pesata tra luce riflessa specularmente e luce riflessa per diffusione (modello di Cook e Torrance). Fattore di forma F: frazione di luce che lascia una superficie e arriva ad unaltra, dipende solo dalla geometria ed compreso tra 0 e 1. E il modo (geometrico) con cui si vedono due superfici, e tiene conto dellattenuazione spaziale proporzionale al quadrato della distanza. Lenergia uscente da ogni superficie la somma dei contributi proprio e riflesso dalla luce che arriva da tutte le altre superfici se le faccette (patch) sono piccole la radiosit in esse costante. Il calcolo dei fattori di forma, parte computazionalmente critica, va effettuato una sola volta se la geometria della scena non cambia, o comunque va aggiornata ai soli oggetti in movimento nel caso di animazione 3D. Successivamente al calcolo della radiosit si pu applicare unombreggiatura smussata alle diverse facce, se la mesh grossolana. Mesh adattativa: raffinamento progressivo in base a criteri di individuazione di variazioni rapide di radiosit (gradiente) Illuminazione progressiva: la soluzione del sistema di equazioni pu essere effettuato (matematicamente) per approssimazioni successive, questo corrisponde (fisicamente) ad unilluminazione progressiva della scena.

IL SEGNALE AUDIO
Il segnale audio, a differenza delle immagini fisse, presuppone unevoluzione temporale, e quindi una scala di tempi. Cos come il colore, un attributo essenziale del messaggio trasferibile da un oggetto multimediale. Esistono due tipi principali di suono, musica e parlato: ad essi si orientano le principali tecniche di produzione audio e gli algoritmi di compressione. 4

Il suono unonda elastica (ha bisogno di un mezzo per propagarsi) longitudinale (la perturbazione avviene parallelamente alla direzione di propagazione); la perturbazione che viaggia sul mezzo consiste, fisicamente, in un susseguirsi di pressioni e depressioni. Per la sua esistenza sono, dunque, necessari una sorgente (corpo vibrante) e un mezzo elastico di propagazione (aria, acqua, ecc..). Caratteristiche fisiche: il periodo ( T ): lintervallo di tempo necessario per compiere una vibrazione completa. Si misura in secondi ( s ). Frequenza ( f ): il numero di vibrazioni complete che avvengono in un secondo. Si misura in hertz (Hz). La lunghezza donda la distanza percorsa dallonda in un periodo. Perci, se "v" la velocit di propagazione, = v * T oppure = v / f. Lampiezza dellonda rappresenta lo spostamento massimo delle molecole daria che oscillano intorno alla posizione di equilibrio al passaggio della perturbazione acustica. Allaumentare di questo spostamento aumenta la forza con cui le molecole colpiscono la membrana timpanica e, quindi, lintensit del suono che percepiamo. Quello che percepiamo come suono una serie di compressioni e decompressioni dell'aria che ci circonda. Queste variazioni di pressione causano vibrazioni del timpano che, tramite gli organi dell'orecchio medio e interno, trasmette i corrispondenti impulsi nervosi al cervello. I suoni acuti corrispondono a vibrazioni veloci del timpano, mentre i suoni bassi sono dovuti a vibrazioni pi lente. La psicofisica tratta i metodi per la determinazione del grado di sensibilit degli organi di senso e la misurazione delle sensazioni, come ad esempio: laltezza di un suono oppure la pesantezza che deriva dal sollevare un oggetto. La psicofisica si occupa dello studio dei rapporti quantitativi che legano gli stimoli fisici alle risposte dellorganismo da essi provocate. Il sistema percettivo umano lo strumento di misura in grado di fornire risposte che possano essere sistematicamente analizzate e che facciano da tramite per una quantificazione dellesperienza sensoriale (Baird e Norman, 1978) Psicoacustica: mentre i meccanismi per i quali le vibrazioni acustiche dell'ambiente aereo esterno vengono tradotte in impulsi nervosi sono discretamente conosciuti, cos come quelli della conduzione di questi dai recettori periferici al cervello, non altrettanto si pu dire dei meccanismi che trasformano gli impulsi in sensazioni coscienti. Il carattere della presente trattazione impone comunque di circoscrivere il discorso agli aspetti pi tipicamente musicali della percezione sonora e, cio, alle modalit secondo le quali il sistema uditivo umano valuta le grandezze acustiche. Tale campo di indagine, che si riferisce al comportamento dei meccanismi fisiologici e psicologici che intervengono nella percezione uditiva, prende il nome di psicoacustica ed un capitolo della psicofisica. Il dominio della psicoacustica si pu suddividere in due diversi campi di osservazione: la capacit dell'udito di valutare le caratteristiche fisiche dei suoni quella di coglierne le variazioni.

Sia in un caso che nell'altro fondamentale il concetto di soglia, termine coi quale in biologia e psicologia si intende genericamente il valore minimo di intensit di stimolazione necessaria perch si verifichi una certa risposta biologica o psicologica. Quando, in psicofisica, l'interesse rivolto a determinare la differenza tra stimoli percepibili e stimoli non percepibili si parla di soglia assoluta; quando, invece si vuole determinare la minima variazione apprezzabile, si parla di soglia differenziale. Il nostro orecchio, proprio come locchio, per fortuna non perfetto e questo un grande vantaggio. Infatti la sensibilit uditiva diversa da zero in un range tra 20 Hz e 20 kHz. In prima analisi la sensibilit diversa alle diverse frequenze, com possibile dedurre esaminando il prossimo grafico. Nella pratica, tuttavia, pi che il valore assoluto della variazione interessa il rapporto percentuale di questa con il valore dell'intensit dello stimolo iniziale, come, del resto, enunciato dalla legge di Weber: "uno stimolo deve essere aumentato di una frazione costante del suo valore perch la differenza cominci a diventare percepibile". 5

Soglia di udibilit
Questo grafico stato tracciato nel seguente modo: una persona viene posta in una stanza rivestita di materiale fonoassorbente e si varia l'ampiezza e la frequenza di un tono a partire da 1 KHz. Quando la persona avverte il tono, si traccia il punto sul grafico corrispondente alla ampiezza per quella specifica frequenza. Otteniamo in questa maniera l'andamento in frequenza della soglia di udibilit. L'orecchio umano non in grado di percepire suoni all'interno delle aree azzurre e rosse.

Dal grafico emerge che l'orecchio umano maggiormente sensibile alle frequenze comprese fra 2 e 4 KHz, che richiedono pochissimi dB per essere percepite. Non un caso che l'intervallo fra i 2 e i 4 KHz sia quello massimamente usato dalla nostra voce. Ovviamente possiamo gi usare questa caratteristica dell'orecchio a nostro vantaggio eliminando dallo spettro del segnale in analisi quelle componenti spettrali non udibili dall'orecchio medio. In sostanza si tagliano le alte frequenze e le bassissime frequenze. In generale, siccome l'orecchio a queste frequenze perde sensibilit e selettivit, si pu ridurre la quantit di informazione trasmessa in questa parte di spettro. Un suono pi intenso sembra avere una frequenza pi bassa rispetto ad un suono debole, in particolare questo effetto si ritiene valere per le note basse. Allo stesso modo, toni pi articolati sembrano avere frequenza minore di toni puri alla stessa frequenza. La percezione di un suono che circondi lascoltatore si pu riprodurre con la modalit stereo, due tracce registrate in posizioni e distanze diverse rispetto alla sorgente, se lo stesso suono inviato alle orecchie, la sorgente sembrer puntuale e dritta davanti a se. Il diagramma della soglia di udibilit stato tracciato facendo variare una sola armonica, cio un singolo tono. Ma che succede se di toni ve ne sono due? Il nostro orecchio in grado di distinguerli sempre? Oppure in alcuni casi uno dei due viene mascherato dall'altro?

Il mascheramento audio
La persona di cui prima si trova sempre nella solita stanza silenziosa. Stavolta viene diffuso un tono alla frequenza di 1KHz, detto tono maschera, tenuto fisso a 60dB (leggi volume alto). Ripetiamo il discorso di prima sulla soglia di udibilit di un secondo tono, detto tono di test. Quello che emerge che avvicinandoci sia da sinistra che da destra al tono maschera, dobbiamo alzare il volume del tono test per riuscire a distinguerlo. Oltre i 4 Khz e al di sotto degli 0.5 le cose tornano a posto, per notiamo che nell'intorno di 1KHz i due toni sono praticamente indistinguibili a meno di non alzare pesantemente il volume del tono test. In sostanza, una frequenza 'debole' pu essere benissimo mascherata, cio risultare inudibile, da una frequenza anche lontana qualche centinaio di Hz, se quest'ultima molto forte, cio con una intensit alta. Se abbiamo pi toni tenuti fissi a volumi alti, per esempio a 60 dB e a frequenze fisse di 0.25, 1 , 4 e 8 KHz la risoluzione del nostro orecchio peggiora sempre pi perch per avvisare il segnale del tono test a ben 1KHz di lontananza dal segnale tenuto fisso a 4 KHz, il segnale del tono test deve raggiungere i 40dB! Se non vi fosse stato il tono maschera a 4 KHz sarebbero bastati un paio di dB. Il fenomeno appena descritto sfruttabile per eliminare componenti spettrali che, essendo troppo vicine a suoni forti, non risultano udibili all'orecchio umano. Finora abbiamo parlato del mascheramento in frequenza. Esiste per un altro tipo di mascheramento, ed quello temporale . Supponiamo di avere al solito due toni, uno forte e l'altro, che vicino in frequenza, piuttosto debole. Sappiamo gi che il nostro orecchio sente solo il tono pi forte che si comporta cos da tono maschera. Ora, se improvvisamente questo tono maschera cessa di esistere, avvertiamo subito il tono pi debole o impieghiamo un po di tempo per avvertirlo? Chiaramente la seconda, perch la membrana del nostro timpano deve assestarsi... Il problema : quanto tempo 6

impieghiamo? Dipende: Se il tono maschera ci assorda, il nostro orecchio impiegher molto prima di riuscire a sentire il tono pi debole anche dopo che il tono forte morto. Al solito, c' chi queste misurazioni le ha gi fatte: Il tono test, di 1KHz, viene disattivato all'istante zero: esso manteneva un valore fisso di 60dB. Se il nostro test tone ha un'ampiezza di 40 dB, bastano 5 ms per avvertirlo; se di soli 20dB, ne occorrono quasi 20 di millisecondi perch risulti avvertibile.

Cosa succede se abbiamo pi toni a diverse frequenze e alcuni di questi muoiono? Iin altri termini, come si fondono le maschere temporali e quelle in frequenza? La prossima figura molto chiarificatrice

L' effetto complessivo del mascheramento che molti toni non saranno mai udibili perch collocati nel dominio della frequenza e del tempo troppo vicino a toni forti. Tenendo conto della sensibilit dell'orecchio e del fenomeno del Masking Audio quindi possibile eliminare dallo spettro del segnale una quantit molto alta di informazioni inutili, perch non udibili dall'orecchio umano. Questi sono i fenomeni Psico-Acustici su cui si basano i moderni algoritmi di compressione audio come MP3, AAC, etc.

Convertitori ADC-DAC
Il segnale audio per sua natura un segnale analogico. La trasformazione di un segnale analogico in digitale (numerico) avviene tramite due operazioni: il campionamento e la quantizzazione. Il campionamento consiste nella estrazione dei valori quantitativi del segnale a intervalli di tempo regolari, cio la scelta del numero di intervalli in cui dividere un campione nellunit di tempo. Es. 44.100 Hz intervallo di campionamento della qualit CD. La quantizzazione loperazione che approssima gli stessi valori ai livelli consentiti dalla scala. Segnale analogico: un segnale continuo nel tempo che pu assumere tutti gli infiniti valori della grandezza fisica osservabile, (sia essa una tensione, una corrente, una temperatura o altro...) contenuti tra un minimo relativo ed un massimo relativo. La funzione continua nel dominio, anchesso continuo il tempo una grandezza continua ed sempre possibile che fra due istanti comunque vicini fra loro si trovi un istante intermedio in cui il generatore di segnale produca un segnale di valore finito. In aggiunta, non esistono generatori di potenza infinita e quindi non possibile generare un segnale che presenti una variazione finita in un tempo nullo: anche il pi rapido transitorio reale presenta una evoluzione del segnale che risulta continua. Segnale digitale: un segnale che all'interno di un determinato range pu assumere solo un numero discreto (numerabile) di valori, i quali: 1) sono definiti solamente in corrispondenza di prestabiliti istanti e fra un istante ed il successivo essi risultano "non definiti", 2) possono assumere solamente un prestabilito numero di valori e passano, senza continuit, da un valore all'altro "saltando" gli eventuali valori concessi che si dovessero trovare compresi fra questi

Segnali Analogici VS Segnali Digitali


Maggiore reiezione ai disturbi rispetto ai segnali analogici

Migliore elaborazione: mediante microprocessori e microcalcolatori senza richiedere appesantimenti dell'hardware circuitale. Le operazioni non sono esenti da incertezza a causa dei troncamenti delle approssimazioni introdotte dalla codifica utilizzata dal microprocessore per il trattamento dei dati. Si pu ricorrere a codifiche intero, reale a singola o doppia precisione, ecc., tali da ridurre le incertezze introdotte in modo da renderle compatibili con gli scopi prefissati. Memorizzazione pi fedele e stabile (su memorie RAM oppure su dispositivi di memoria di massa a supporto magnetico. La codifica usata quella binaria e permette di garantire una stabilit del dato nel tempo e la sua reiezione pressoch totale ai disturbi.)

La Conversione Analogico-Digitale
Schema generale di un sistema di DSP (processore di segnale digitale) e di campionamento dati

FASI DELLA CONVERSIONE 1) campionamento - discretizzazione del tempo 2) quantizzazione - discretizzazione della ampiezza 3) codifica - uso di parole binarie per esprimere il valore del segnale Campionare un segnale equivale ad acquisire una successione temporale di valori costituita dalla successione dei valori istantanei assunti dal segnale in corrispondenza di particolari istanti di campionamento (per segnali lentamente variabili possibile campionare il segnale acquisendo il valore medio valutato su intervalli opportuni di tempo che si succedono con frequenza fs) Campionamento di segnali analogici

CRITERIO DI NYQUIST
Un segnale avente una larghezza di banda pari ad fmax deve essere campionato ad una frequenza fs > 2fmax altrimenti linformazione contenuta nel segnale sar persa. Se fs < 2fmax presente il fenomeno dellALIASING. TEOREMA DEL CAMPIONAMENTO: se la trasformata di Fourier di un segnale a(t) nulla per tutte le frequenze maggiori di una data frequenza fmax , allora il segnale continuo a(t) pu essere univocamente ricavato dall acquisizione di infiniti valori campionati. Infiniti campioni separati da un intervallo inferiore a 1/2fmax.

10

Principio di funzionamento
Se la linea S-H assume un livello tale da rendere il gate del FET positivo rispetto a source e drain, la tensione vc(t) ai capi della capacit C risulta seguire l'andamento della vx(t) . In questa situazione la carica elettrica Q immagazzinata nella capacit di memoria C risulta essere in ogni istante t direttamente proporzionale al valore di vx(t): Q(t) = C vx(t). Nell'istante i-esimo di campionamento ( t = i Tc ) in cui si desidera acquisire un campione di vx(t) basta portare la linea S-H ad un potenziale negativo rispetto a source e drain: in questo modo il FET risulta interdetto. La carica immagazzinata sulle armature di C non pu pi modificarsi dato che gli unici percorsi attraverso i quali si potrebbe avere una circolazione di cariche sono costituiti dal FET interdetto (impedenza idealmente infinita) e dall'inseguitore di tensione (impedenza di ingresso idealmente infinita). Inseguitore di tensione: consente di disaccoppiare la sorgente del segnale dall'utilizzatore. In una connessione diretta sorgente/utilizzatore la sorgente si trova a dover erogare una corrente non nulla per effetto della impedenza di ingresso non infinita dell'utilizzatore. Se il generatore fosse ideale, se cio avesse impedenza di uscita nulla, la erogazione di corrente non avrebbe alcun effetto sul valore della tensione che costituisce il segnale. Il generatore invece reale ed ha impedenza di uscita non nulla pertanto il consumo altera in modo che potrebbe essere non trascurabile il valore della tensione rilevata dall'utilizzatore. CMRR finito una piccola frazione del valore della tensione di modo comune (media fra il valore del potenziale verso massa dell'ingresso invertente e del potenziale verso massa dell'ingresso non invertente) contribuisce al valore della tensione di uscita out in V =V Quale architettura scegliere? The most popular ADC architectures available today are successive approximations (sometimes called SAR because a successive approximations (shift) register is the key defining element), flash (all decisions made simultaneously), pipelined (with multiple flash stages), and sigma-delta (), a charge-balancing type. All A/D converters require one or more steps involving comparison of an input signal with a reference. Figure 1 shows qualitatively how flash, pipelined, and SAR architectures differ with respect to the number of comparators used vs. the number of comparison cycles needed to perform a conversion. La conversione richiede un certo tempo che dipende da diversi fattori: la risoluzione del convertitore; la tecnica con la quale viene eseguita la conversione; la velocit massima dei componenti elettronici utilizzati nel convertitore.

Il tempo di conversione necessario per una particolare applicazione va correlato con la velocit di variazione del segnale da convertire, oltre che con la precisione che si desidera eseguire

DISTORSIONE SISTEMATICA: ERRORE DI LINEARITA


Scostamento massimo del centro intervallo misurato dal centro intervallo teorico. Accanto ai problemi di quantizzazione mostrati, problemi di campionamento possono introdurre rumore aggiuntivo nella ricostruzione successiva del segnale. In particolare, per il segnale audio le variazioni nella temporizzazione dei campioni determina la presenza di Jitter , ossia drift degli intervalli di campionamento: alle elevate frequenze di campionamento audio, vengono tollerati soltanto piccoli shift temporali, di solito inferiori a 200 ps (200 x 10-12 secondi).

11

Il rapporto segnale rumore richiesto per una qualit audio sufficiente molto minore nel caso numerico rispetto a quello analogico: 10-15 dB contro i 40 dB tipici della telefonia analogica. Questo perch nellanalogico c un decisore con una soglia e quindi rigeneratori, non semplici ripetitori o amplificatori come nellanalogico.

Riproduzione ad Alta Fedelt


I CD (Compact Disk) in commercio, utilizzano una riproduzione ad Alta Fedelt. In essi il suono viene campionato a 44.100 Hz (intervallo di campionamento), mentre la quantizzazione viene fatta con 65.536 livelli, ovvero 16 bit (ma in alcuni casi addirittura 24 bit, con notevole richiesta di accuratezza nellHardware ADC). Facendo un po di conti si ha un flusso di 705.600 bit/secondo. Essendo il segnale presente nei CD in modalit stereo (la stereofonia si ottiene registrando il suono in due tracce differenti), si Si pu vedere quanto i file audio abbiano dimensioni notevoli: un minuto di registrazione occupa circa 10 MegaByte. Se il suono da combinare con video pu essere necessario ricampionare il segnale: alcune applicazioni video infatti non supportano elevate frequenze di campionamento per laudio. In genere, comunque, i 44.1 kHz sono supportati. Ad ogni modo, con questi ordini di grandezza impossibile che i suoni campionati possano essere trasmessi sulle normali linee telefoniche in tempi ragionevoli. Spesso sottomultipli di 44.1 kHz vengono usati laddove vincoli di banda sono stringenti: ad esempio 22.05 kHz e 11.025 kHz sono comunemente usati per laudio e la voce diffusi tramite Internet. E evidente lesigenza di compressione opportuna dei dati.

Operazioni sul segnale audio


La standardizzazione del formato audio, legata allo sviluppo di Internet, meno definita rispetto ad altre tipologie di dati, come la computer grafica: ad es. le piattaforme MacOS, Unix e Windows hanno diversi formati di file audio (AIFF, AU e WAV). LMP3 si diffuso come standard eseguibile dalle piattaforme pi rilevanti: pi che un formato una tecnica di codifica e compressione audio, per cui gli MP3 possono essere memorizzati in altri tipi di file, e.g. QuickTime pu includere tracce Mp3 e i Flash movies utilizzano MP3 per comprimere i suoni associati ai video. QuickTime include il codec AAC per audio di qualit elevata. LAAC anche considerato parte dello standard MPEG4. Lequivalente radio di Internet utilizza i formati menzionati. Esistono diversi pacchetti software orientati allaudio musicale (come MIDI, oppure applicazioni Open Source), alcuni dei quali richiedono supporti hardware specifici. Nel seguito si descrivono, in termini generali, alcuni principi e operazioni tipiche nella manipolazione audio. Come criterio generale, quando richiesto un compromesso tra qualit e numero di bit, opportuno, se proprio si deve scegliere, ridurre la frequenza temporale dei campioni piuttosto che laccuratezza numerica nel campionamento dei singoli campioni. Nota: tipicamente i microfoni dei PC raccolgono molto rumore dai dispositivi circostanti, meglio utilizzare dispositivi di acquisizione indipendenti. Editare un segnale audio significa combinare, tagliare, arrangiare, incollare, spostare ecc.,diversi frammenti audio, modificare durata, frequenza, tempo, produrre effetti sonori particolari, ecc. E necessario operare sulla base di una linea temporale (data la natura temporale dei suoni).

Caratterizzazione spettrale
Lanalisi spettrale del segnale audio pu essere effettuata facendo scorrere una finestra temporale e calcolando lo spettro che compete ad ogni singola finestra: evoluzione dello spettro nel tempo. Unimportante operazione costituita dalla riduzione del rumore, basata su due soglie combinate: il suono devessere superiore a un certo livello di intensit, 12

ma anche superiore per un certo lasso di tempo minimo a una determinato livello.

Riduzione del rumore


A volte, soprattutto quando il segnale audio sottocampionato (il minimo 8 bit), si introduce un rumore bianco intenzionale fittizio, equivalente a una sorta di dithering. Cos facendo il segnale fluttua rapidamente tra i livelli di quantizzazione invece di effettuare salti netti e definiti: il rumore introdotto meno intrusivo di quello di quantizzazione: segnale quantizzato + rumore intenzionale Altre operazioni: filtri per rimuovere sibili da microfono filtri per rimuovere (o aggiungere..) fruscii da giradischi effetti di riverbero per simulare il suono allinterno di una stanza (pi o meno ampia a seconda dei tempi di ritardo impostati): suono meno freddo e pi realistico equalizzazione, enfatizzazione di bassi ecc. time stretching e pitch alteration: necessari a volte anche per sincronizzare audio e video. filtri per far passare i suoni alti (high pass) filtri per far passare i suoni bassi (low pass), notch filter: rimuove singole frequenze

Codifiche per modelli


Le codifiche per modelli sono tecniche legate ad una particolare sorgente sonora (ad esempio la voce) che si tenta di emulare tramite un modello pi o meno semplificato. Speech compression: le corde vocali e la gola hanno delle ben precise caratteristiche fisiche, il loro comportamento sar quindi predicibile sulla base di un modello. Queste codifiche rappresentano una scelta ottimale per la compressione della voce, tanto che vengono utilizzate nella telefonia mobile (GSM) e anche su Internet. Per questi segnali audio non detto che sia opportuno ritenere che non vi siano variazioni brusche da un istante al successivo. Quindi la DPCM (differential pulse code modulation), adottata per i segnali video non sempre adeguata. LADPCM (adaptive differential pulse code modulation) tiene conto del tasso di variazione dei campioni per attribuire ad essi un numero maggiore o minore di bit. LPC e CELP: le due principali tecniche di compressione del parlato. La LPC (Linear Predictive Coding) ['76] una tecnica utilizzata esclusivamente ai fini della compressione spinta della voce (vocoder). Comprime cos tanto che la voce di qualsiasi persona finisce per assomigliare a quella prodotta da un computer! Il funzionamento a grandi linee il seguente: si fa utilizzo di un modello per cui riconosciuto il tipo di elemento (una vocale, il silenzio, una consonante etc.), si trasmette il codice associato prelevato da una tabella di riferimento. Quindi si usa un modello matematico di traccia vocale per rappresentare la voce e si inviano i parametri del modello piuttosto che i campioni del suono. Il vantaggio un bit-rate bassissimo: si pu arrivare a soli 2.4 Kbit al secondo (fattore di compressione: 1:26 !). CELP: dato che col sistema LPC molto spesso non si riconosce nemmeno l'identit dell'interlocutore, si sviluppato negli anni successivi il Code Excited Linear Predictor (CELP) ['84] che fa uso della LPC ma migliora un po la qualit poich trasmette anche l'informazione sull'errore associato alla codifica LPC. Questo tipo di codifica molto usata in vari ambiti: nei telefonini GSM sotto forma di Enhanced

13

FullRate (EFR) da 12.2Kbps, grazie alla sua flessibilit viene anche utilizzata spesso nella trasmissione della voce via Internet (Audio-Videoconferenza). La qualit buona e il bit-rate minimo raggiungibile risulta comunque molto basso: 4.8Kbit al secondo (ratio 1:13). In tema di codifica, in generale bisogna fare unimportante distinzione: Codifica di sorgente: scopo ridurre la ridondanza dovuta soprattutto alla correlazione che influenza successioni di simboli emessi. Codifica di canale: scopo opposto a quello di prima, introdurre correlazione in un flusso di bit inizialmente incorrelato... perch mai? Per consentire lindividuazione, o addirittura la correzione di errori, dovuti a rumore nel canale di trasmissione (termico, interferenze, non linearit, ecc.). Concetto di distanza minima d di un codice [n,k,d]: la differenza minima tra i bit di due parole di n bit, n e k sono la lunghezza di ogni parola inviata e delleffettivo numero di bit di informazione. La banda richiesta aumenta di un fattore n/k. Codifica e compressione del segnale audio I principi di compressione validi e utilizzabili per le immagini non sono necessariamente adatti al caso dei suoni: ad esempio determinate alte frequenze, legate a rapide variazioni del suono, possono recare con s un elevato contenuto informativo, diversamente delle alte frequenze di variazione spaziale delle immagini, quindi bisogna usare criteri diversi per decidere quali informazioni scartare. LMp3, ovvero Mpeg1 layer 3 (layer significa strato), un formato audio digitale compresso, tale da poter essere scaricato velocemente da internet.

MP3
Inizialmente l'Mpeg Audio era considerato una sorta di pecora nera degli standard a causa della complessit dell'algoritmo di codifica e a causa della mancanza di piattaforme hardware sufficientemente veloci per sopportarne il funzionamento. Qualche anno fa, per, grazie a finanziamenti di privati, in un centro di ricerche tedesco, il Fraunhofer Institute, un gruppo di lavoro riusc nell'intento di sviluppare un nuovo enconder Mp3 e, naturalmente, il relativo decoder. Il nuovo algoritmo di codifica dell'Mp3, detto anche di "Perceptual Coding", agisce in modo tale da selezionare dall'immagine sonora le frequenze "migliori", estrapolarle e "indirizzarle" all'orecchio. L'individuazione delle frequenze "migliori" avviene in base ai risultati degli studi di psico-acustica ottenuti al Fraunhofer Institute (gli studi di psicoacustica iniziarono nel 1987). Questo algoritmo sfrutta quindi la ridondanza informativa (elimina le informazioni superflue) ma soprattutto le teorie della psicoacustica: quindi i limiti in frequenza dellorecchio umano vengono utilizzati per togliere delle tracce che tanto non verrebbero percepite. Questo fenomeno noto come mascheramento. Mascheramento Simultaneo: si presenta quando sono presenti contemporaneamente due suoni vicini in frequenza ma di intensit differente. In tal caso il suono pi debole viene mascherato dal suono pi forte. Nel processo di codifica, quindi, il suono pi debole viene completamente scartato. La compressione Mp3 utilizza tre tipi di mascheramento : Post-Mascheramento: si presenta quando c' una improvvisa variazione di volume nel suono. Si sperimentato che quando si ha il passaggio da un volume alto a un volume basso il cervello impiega alcuni millisecondi per elaborare il suono proveniente dalle orecchie e che i millisecondi che seguono tale cambiamento non vengono percepiti. Ovviamente l'informazione non percepita viene scartata. 14

Pre-Mascheramento: un fenomeno analogo al precedente e si ha quando il volume passa da un livello basso a un livello alto. In tal caso gli ultimi millisecondi del livello basso non vengono percepiti in quanto il cervello trascura il livello basso per dedicarsi a quello alto.

Altro metodo di riduzione codificare con un minor numero di bit alcune zone del segnale passando velocemente da una codifica con 16 bit a una con 8 bit o con 4 bit, in particolare, il segnale originale viene analizzato e diviso in sottobande di frequenza: se la differenza tra bande contigue al di sopra di una certa quantit, la banda di livello pi basso non viene codificata (mascheramento simultaneo); se la differenza tra bande contigue compresa tra determinati livelli, il segnale della banda pi bassa viene codificato con un minor numero di bit.

Lo standard MPEG fornisce tre livelli di compressione di complessit crescente Layer 1. L'algoritmo MP1 divide il segnale in 32 bande di frequenza e applica i concetti di mascheramento. Non molto efficiente nella compressione. Layer 2. MP2 un miglioramento di MP1 e usa tecniche pi raffinate nel filtraggio del segnale in bande di frequenza e nell'esclusione di parti per mascheramento. Layer 3. MP3 il modello pi complesso. Con un rapporto di riduzione di circa 10:1 riesce a mantenere una qualit ottima nella riproduzione di brani musicali di qualit CD. I file codificati con il layer 2 e il layer 1 sono leggibili dai lettori per il layer 3 ma non viceversa (retrocompatibilit).

LAYER - COMPRESSIONE - Kb/S IN STEREO


Layer I 1 : 4 384 Kb/s adotta esclusivamente il metodo di eliminazione delle frequenze mascherate, derivato dagli studi di Psico-acustica. Ci significa che esso elimina quelle frequenze che vengono nascoste dietro ad altre pi grandi. Layer II DA 1: 6 A 1: 8 256 Kb/s --- 192 Kb/s adotta metodi di filtraggio del segnale audio molto pi spinti rispetto al primo modello. E stato migliorato il metodo della scelta e della eliminazione delle frequenze non necessarie. Codificando a 160 Kb/s si ottiene un buona qualit di suono; a 192 Kb/s risulta difficile notare la differenza dall'originale; a 256 Kb/s anche i pi fanatici ascoltatori saranno soddisfatti. Layer III DA 1:10 A 1:13 128 Kb/s --- 112 Kb/s il pi complesso modello MPEG per laudio. Non solo adotta filtraggi pi massicci rispetto al Layer II, ma utilizza anche un codec complesso (Huffmann). Codificando il segnale a 112 Kb/s si ottiene un suono sufficientemente buono; a 128 Kb/s si molto vicini alloriginale; a 160 Kb/s e a 192 Kb/s, non possibile percepire differenze con loriginale. possibile adottare bit rate inferiori, essenzialmente per streaming. Il 128 Kb/s paragonabile in qualit allFM radio

Algoritmi di compressione come MPEG 1-Layer 3


permettono di conservare la qualit sonora del CD riducendo la quantit di dati fino ad 1/12 rispetto agli altri formati. Ci rende possibile lo scambio ed il reperimento di brani Mp3 in rete. Il compressore MP3, utilizzando le curve di sensibilit di Fletcher e Munson, riduce la dimensione del file audio eliminando le frequenze che non vengono percepite dall'orecchio umano.

L 'algoritmo di codifica composto di diversi step che possono essere cos riassunti: 15

1) Si usano dei filtri per dividere il segnale audio che campionato con una certa frequenza, ad esempio di 44.100 campioni al secondo, in 32 sottobande, per ognuna delle quali sono noti i parametri di mascheramento nel tempo e in frequenza. 2) Per ognuna delle sottobande, viene calcolata l'entit del mascheramento causata dalle bande adiacenti. 3) Se la potenza in una sottobanda sotto la soglia di mascheramento, allora non viene codificata in uscita l'informazione che essa trasporta, poich sarebbe inudibile. 4) In caso contrario, occorre calcolare il numero di bit necessari per rappresentare l'informazione della sottobanda facendo attenzione che in questo procedimento, per sua natura approssimante e dunque rumoroso, il rumore introdotto stia sotto la soglia. 5) Infine, formare il flusso di bit (bitstream) in uscita. Il diagramma a blocchi della codifica MP3 pu essere cos schematizzato: Con quanti bit quantizzo? La teoria dell'informazione mi dice che per ogni bit di quantizzazione utilizzato aumento di 6 dB il rapporto segnale/rumore. Siccome non devo scendere sotto il limite di mascheramento (punto 4 dell'algoritmo) che di 15 dB, posso usare al minimo 3 bit per quantizzare i dati. Se usassi meno di tre bit, otterrei un rumore di quantizzazione troppo alto che verrebbe avvertito compromettendo la qualit finale. Questo era il modello di base, valido per i tre layer dell'MPEG; l'MP3 introduce invece alcune migliorie, che si pagano in termini di risorse di sistema impiegate. In sostanza si tratta di effettuare una operazione che consenta di migliorare la risoluzione in frequenza per ognuna delle sottobande. Questa operazione consente di suddividere ognuna delle 32 sottobande in ulteriori 6 (short) o 18 (long) sottofrequenze, secondo un processo noto come filtraggio sottobanda (sub-band filtering). Si agisce sui coefficienti della trasformata coseno che le rappresentano. Il modello psico-acustico decider quali coefficienti devono passare in uscita e quali no, sulla base del calcolo del mascheramento temporale e sul fatto che alcuni di questi sono ridondanti. I coefficienti "sopravvissuti" contengono le informazioni necessarie alle varie frequenze e devono ora essere organizzati in uscita. Vengono ordinati passando dalla frequenza pi bassa a quella pi alta. Poich la massima informazione contenuta in bassa frequenza, i coefficienti di bassa frequenza sono pi numerosi di quelli in alta frequenza. Ed infatti i puristi lamentano la scarsa efficienza dell'MP3 per la riproduzione delle alte frequenze. L'intero intervallo viene diviso in tre parti (frequenze basse, medie e alte). Ognuno di questi intervalli viene codificato a parte secondo lalgoritmo di Huffmann, che uno degli algoritmi basilari nella teoria della informazione. Ai suoni pi frequenti, verranno associati pochi bit, a quelli meno frequenti invece un numero maggiore di bit. L'algoritmo ottimizzato per ognuno dei tre intervalli. A questo punto i dati vengono inviati in uscita sotto forma di pacchetti contenenti un codice per la correzione dell'errore che rende il sistema pi robusto agli eventuali errori che si possono presentare durante il trattamento del file. Il fattore di compressione che tipicamente si ottiene quello di 1:11 (128Kbit/s), per cui possibile immagazzinare un minuto di musica in poco meno di un megabyte.

I Limiti della tecnologia Mp3


Se vogliamo comprimere un file audio nel formato Mp3 cercando di mantenerne pressoch inalterata la qualit originale, dobbiamo utilizzare un bit rate pari a 128 Kbps. Se utilizzassimo bit rate inferiori, ad es. i 64 Kbps, la qualit audio del file Mp3, degrada significativamente. Questo accade perch minore il bit rate, meno numerose sono le frequenze analizzate e codificate nel file Mp3 risultante. Ad un bit rate pari a 128 Kbps, l'algoritmo di compressione (Perceptual coding) analizza e codifica tutta la banda di frequenze udibili dall'orecchio umano, che pari a circa 20 Khz. In questo caso non c perdita di informazioni audio: 16

la qualit del file Mp3 quasi indistinguibile da quella di un Cd audio; la grandezza del file Mp3 compresso "relativamente elevata": non dimentichiamo infatti che il livello di compressione 12:1 ed ad un bit rate pari a 64 Kbps, l'algoritmo di compressione analizza e codifica una banda di frequenze che oscilla tra 0 e 10 Khz circa (vedi figura n.2) quindi, molto al di sotto delle capacit uditive dell'orecchio umano, che si spingono, lo ricordiamo, fino a circa 20 Khz. In questo caso: vengono perse importanti informazioni audio e la qualit del file Mp3 degrada notevolmente: il brano suona "ovattato" e sembra "perdere di profondit". Inoltre la grandezza del file Mp3 compresso notevolmente minore rispetto a quello ottenuto con la codifica a 128 Kbps, ma vista la perdita di qualit audio, questo non rappresenta un vantaggio. Come superare quindi questi limiti, cercando di ottenere un Mp3 di alta qualit ma di dimensioni ancora pi ridotte? MP3PRO levoluzione diretta dellMP3 e permette un fattore di compressione quasi doppio dellMP3 a parit di qualit sonora. Lo standard MPEG-2 ha introdotto lAdvanced Audio Coding (AAC), incorporato anche nellMPEG-4: utilizza tecniche addizionali e pi complicate implementazioni, lAAC a 96 Kb/s ritenuto superiore allMP3 a 128 Kb/s, codec usato per distribuzione audio su iTunes.

MIDI - MIDI files - General MIDI


Il MIDI (Musical Instruments Digital Interface) l'unione di un linguaggio di comunicazione e una normativa di specifiche hardware, che permette a strumenti musicali elettronici, controller, computer e altre apparecchiature, di comunicare tra loro consentendo l'organizzazione e l'automazione di sistemi e prodotti musicali complessi. MIDI provides a way of representing music as instruction describing how to produce notes, instead of as recording the actual sound. MIDI provides a standard protocol and hardware interface for communicating between electronic instruments, such as synthesizers, allowing instruments to be controlled by hardware or software sequencer. A computer can control instruments through a MIDI interface. There must be a software that can interpret the instructions and some means of producing sound, corresponding to the appropriate instruments. In other words, playing MIDI files requires an instrument that understands MIDI instructions (messages): a computer, equipped with suitable hardware and software, can be such an instrument itself. MIDI files are a means of communicating music: they do not contain audio but text, then can be more compact than directly digitalized sound. An addendum MIDI standard, the General MIDI, specifies 128 standard voices (for example: piano, violin, applause, ecc.), reproduced by proper sound synthetizers. Malgrado la progressiva migrazione verso gli strumenti informatici, i sequencer digitali basati sull'elettronica sono ancora indispensabili componenti per alcuni strumenti musicali come i sintetizzatori e le drum machine. per un dato di fatto che, progressivamente, soprattutto grazie alla maggiore velocit dei processori per pc, all'integrazione AUDIO-MIDI e al continuo sviluppo di nuovi algoritmi per plug-in, l'utilizzo di sequencer software stia soppiantando quello di apparecchiature hardware, permettendo il controllo di tutte le fasi della creazione artistica in un vero e proprio "studio virtuale" in ambiente pc. ll sequencer un dispositivo hardware o software, utilizzato nel campo musicale, che permette di creare e riprodurre delle sequenze di segnali di controllo, per comandare uno strumento elettronico. A differenza di un registratore audio, dove sono le forme donda di un suono a essere memorizzate, nel sequencer non viene memorizzato alcun segnale audio, solo quello di controllo. Si pu immaginare un sequencer come una "mano elettronica" automatica e programmabile che suona strumenti e regola pulsanti e potenziometri di sintetizzatori e processori audio. Il sintetizzatore uno strumento per la generazione di musica, attraverso un musicista o un sequencer. E possibile generare imitazioni di strumenti musicali reali o creare suoni non esistenti in natura. Si possono avere anche sintetizzatori software, che assolvono a questo compito interamente a livello software (cio non manualmente) e quindi, generando audio a partire da una sequenza di suoni predeterminata (audio editing). 17

Sintesi additiva
Partendo dal presupposto per il quale il timbro caratteristico di un dato strumento prodotto dalla fondamentale pi una determinata distribuzione delle armoniche, possibile ricreare un suono naturale partendo dalla somma di un certo numero di frequenze fondamentali (segnali sinusoidali) e distribuendole nello spettro sonoro. Tale tecnica, pur permettendo teoricamente di poter riprodurre qualsiasi suono esistente, in realt di estrema complessit; infatti, laddove la sintesi sottrattiva agisce su un consistente numero di armoniche, gi patrimonio del segnale grezzo originale, qui abbiamo la necessit di controllare un numero elevatissimo di fondamentali. Si tratta pertanto di una tecnica complessa, che non ha incontrato molto successo nella produzione industriale di strumenti musicali elettronici.

Sintesi sottrattiva
Da un generatore di segnale con elevata produzione di armoniche (ad esempio onda quadra, onda triangolare, dente di sega, etc) si interviene con un sistema di filtri allo scopo di modificare il timbro e quindi la forma d'onda. Esempi di sintesi sottrattiva si possono ritrovare anche negli strumenti musicali tradizionali dove la selezione del timbro ottenuta in maniera meccanica tramite la cassa armonica come nella chitarra o nel violino. I filtri possono essere realizzati con tecnologia analogica (reti RC o componenti discreti) oppure nel dominio digitale tramite dsp.

18