convertire mpeg divx
Transcript
convertire mpeg divx
Dispense del corso di Elettronica Ls Prof. Guido Masetti Conversione Analogico-Digitale e Digitale-Analogico 1 Elaborazione numerica Le problematiche evidenziate, suggeriscono la necessità di sviluppare tecniche di rappresentazione dell'informazione e tecniche di elaborazione, che siano immuni o meno sensibili alle problematiche evidenziate. In primo luogo è necessario ridurre i gradi di libertà temporali del segnale, spostandosi da un dominio tempo continuo a un dominio tempo-discreto. In questo modo l'elaborazione dell'informazione può essere svincolata dall'elaborazione del segnale fisico e realizzata tramite sistemi di calcolo tempo discreti (es: calcolatore elettronico). 2 Conversione Analogico Digitale I segnali di interesse applicativo, spesso ottenuti tramite sensori, sono nella maggior parte dei casi analogici e l'informazione da essi trasportata e contenuta nella forma d'onda del segnale stesso. E' pertanto necessario definire una trasformazione che permetta di ottenere un segnale tempo-discreto e discreto nei valori a partire da un segnale analogico. Tale operazione deve essere reversibile rispetto ad alcuni parametri di qualità. 3 Conversione Temporale: campionamento La conversione di un segnale reale analogico continuo nei valori e tempo continuo S(t) in un segnale tempodiscreto e discreto nei valori è realizzata tramite l'operazione di campionamento S t S n = S nT s T s = tempo di campionamento 1 fs= Ts = frequenza di campionamento 4 Campionamento Matematicamente il campionamento ideale di un segnale può essere rappresentato come la convoluzione del segnale stesso con una delta di Dirac ripetuta periodicamente S n = ∫ S t t−nT s dt Fisicamente viene realizzata tramite un circuito elettronico denominato campionatore, che nel caso di campionamento ideale, può essere pensato come un interruttore ideale con tempo di commutazione nullo, che si chiude frequenza fs . S t Ts Sn 5 Campionamento Ts = 10 μs fs = 100 kHz 6 Trasformata discreta di Fourier Sfruttando la proprietà di dualità della trasformata di Fourier è possibile definire la trasformata di una successione tempodiscreta Sn in cui Ts è l'intervallo tra due termini: ∞ S p f = ∑ S n e− j2 nf T S n=−∞ S n =T ∫f j2 nfT S p f e df S S La trasformata è periodica per dualità con periodo 1/T = fS. 7 Segnali tempo-discreti Essendo periodica, la trasformata di una successione, può essere ottenuta come ripetizione periodica di una funzione S f , trasformata di Fourier del segnale S(t): 1 S p f = T ∞ k S f ∑ T k =−∞ In generale esistono infinite funzioni S f che danno come ripetizione periodica la funzione S p f . Per dualità S p f deve essere la trasformata della sequenza ottenuta campionando S(t) con passo T: S n =S nT n∈ ℤ 8 Campionamento di una funzione Un campionamento con intervallo T nel dominio dei tempi corrisponde pertanto a una ripetizione periodica nel dominio delle frequenze con periodo 1/T = fs. campionamento S t Sn S f S p f ripetizione periodica 9 Teorema del campionamento di Shannon Se S(t) ha spettro nullo al di sopra di una frequenza fm, l'operazione di campionamento con fs > 2fm, è invertibile, ovvero esiste una corrispondenza biunivoca tra S(t) e Sn. campionamento S t Sn S f S p f ripetizione periodica 10 Campionamento: invertibilità Pertanto, se la frequenza di campionamento fs non è sufficientemente elevata, si avrà una ripetizione periodica con sovrapposizione dello spettro del segnale (aliasing). 11 Campionamento: invertibilità Tale sovrapposizione fa si che la sequenza di origine non sia più univocamente determinabile e causa quindi una perdita di informazione. In particolare, le frequenze superiori a fs / 2 non sono rappresentate correttamente, poiché “sporcate” (distorte) dalle componenti che si sovrappongono ad esse. 12 Teorema del campionamento di Shannon L'operazione di campionamento temporale di un segnale S(t) passa basso con spettro nullo per | f | > fm è reversibile se la frequenza di campionamento fs soddisfa la relazione f s ≥ 2f m Per soddisfare il teorema di Shannon è pertanto necessario individuare l'intervallo di frequenze utile del segnale da convertire, scegliere una frequenza di campionamento fs adeguata e filtrare il segnale in modo da eliminare qualsiasi componente spettrale avente frequenza f > fs / 2. 13 Campionamento Il flusso informativo di un segnale campionato, denominato simbol rate (Rs), è quindi tanto più elevato quanto più la banda del segnale stesso è elevata. Dualmente, l'occupazione di banda di un segnale tempo- discreto sarà proporzionale al Rs del segnale stesso. Alcuni esempi: Segnale telefonico: Banda = [300, 3400 Hz] - fs = 8 kHz Segnale Audio CD: Banda = [20, 20000 Hz] - fs = 44.1 kHz Segnale Ecografico: Banda = [1, 20 Mhz] - fs = 45 MHz 14 Campionamento: invertibilità Il campionamento è quindi teoricamente una operazione completamente invertibile se soddisfatte le condizioni del teorema di Shannon. Il campionamento viene effettuato tramite circuiti elettronici reali e quindi soggetti ai problemi tipici dei circuiti analogici. La reale efficienza dell'invertibilità dell'operazione di campionamento dipende quindi dalle prestazioni dei circuiti. 15 Discretizzazione della dinamica: quantizzazione La seconda operazione che deve essere effettuata è la trasformazione del segnale tempo-discreto continuo nei valori ottenuto tramite il campionamento, in un segnale discreto nei valori, avente L livelli possibili. Tale trasformazione è denominata quantizzazione. Essa è una elaborazione di tipo non lineare e consiste essenzialmente nell'assegnare ad ogni campione del segnale campionato un simbolo dell'alfabeto scelto, secondo una legge di quantizzazione Q( . ) Sn =Q S n 16 Quantizzazione: legge di quantizzazione I1 SMIN I2 S1 2 S I3 3 S IL Sn SMAX L simboli L S 17 Quantizzazione: inversione Tale operazione, indipendentemente dalla funzione di quantizzazione scelta, causa una perdita di informazione e pertanto non è invertibile. E' necessario definire un parametro di qualità che permetta di quantificare la quantizzazione. perdita di informazione causata dalla Le prestazioni di una legge di quantizzazione sono valutate tramite il rapporto segnale-rumore di quantizzazione (SQNR) 2 n 〈S 〉 SQNR= 2 〈 S n−S n 〉 18 Quantizzazione L'obiettivo è quello di minimizzare il numero di simboli utilizzati per la quantizzazione della dinamica del segnale, una volta fissato il parametro di qualità SQNR. Per realizzare ciò è necessario adattare la legge di quantizzazione alle caratteristiche del segnale. 19 Quantizzazione uniforme La più semplice legge di quantizzazione è quella uniforme. In questo caso la dinamica del segnale viene divisa in L intervalli di uguale dimensione. A ciascun intervallo viene associato uno degli L simboli. 1 S SMIN S L Sn SMAX 20 Quantizzazione uniforme Il rapporto segnale rumore di quantizzazione, supponendo che l'errore di quantizzazione sia uniformemente distribuito su ciascun intervallo di quantizzazione, è in questo caso SQNR[dB] = 10log10 SQNR = 4.7720log10 L−F c [dB] F c [dB] = Fattore di cresta in dB Esempio: nel caso di una linea telefonica digitale PCM sono utilizzati 256 livelli di quantizzazione. Ipotizzando che il segnale abbia dinamica con statistica uniforme (Fc = 3) si ottiene un SQNR di 48 dB. 21 Quantizzazione uniforme: problemi Una legge di quantizzazione uniforme fornisce buone prestazioni nel caso in cui la dinamica abbia statistica uniforme. I segnali reali hanno statistica molto variabile e spesso non occupano tutta la dinamica a disposizione. Una riduzione della dinamica del segnale provoca una diminuzione drastica del SQNR, rendendo la quantizzazione inaccettabile. 22 Quantizzazione uniforme: problemi Supponendo che la dinamica del segnale si riduca risultando uniformemente distribuita sull'intervallo [-aSmax, aSmax], dove a<1, si osserva la seguente riduzione dell SQNR del segnale quantizzato a 2(dB) 0 -10 -20 -30 SQNR (dB) 48 38 28 18 23 Quantizzazione non uniforme Per migliorare e rendere accettabile il SQNR del segnale quantizzato con quantizzazione uniforme nel caso di riduzione della dinamica del segnale, necessario aumentare il numero di livelli di quantizzazione. Aumentare il numero di livelli significa aumentare il numero di simboli dell'alfabeto e quindi il flusso informativo. Per migliorare il SQNR, senza aumentare il numero di livelli di quantizzazione è necessario passare ad una codifica non uniforme. 24 Quantizzazione non uniforme Per realizzare una quantizzazione non uniforme è necessario applicare una compressione di dinamica al segnale, mediante un blocco di elaborazione non lineare, seguito da un blocco di quantizzazione uniforme. TN Sn C( . ) Tn Q( . ) unif T n SN C( ) = legge di compressione 25 Quantizzazione non uniforme Una volta quantizzato il segnale è possibile eliminare la distorsione causata dalla legge di compressione, applicando la relazione inversa. Sn C( . ) Tn Q( . ) unif T n C (.) -1 Sn Quantizzazione non uniforme 26 Quantizzazione non uniforme Una quantizzazione non uniforme può essere realizzata con tecniche digitali, evitando circuiti non lineari caratterizzati da scarsa precisione e scarsa stabilità, impiegando una quantizzazione uniforme molto fine, seguita da una logica di raggruppamento di livelli. Sn SMIN SMAX S 1 S2 S 3 S 4 S5 S6 S7 27 Scelta della legge di compressione Nel caso in cui la statistica del segnale di ingresso non sia nota o sia variabile, la legge di compressione C( . ) deve essere scelta in modo da rendere indipendente il SQNR da tali variazioni. Tale condizione può essere ottenuta utilizzando la seguente legge di compressione C S = A ln ∣S∣⋅sign S Tale legge di compressione non è però invertibile e presenta una singolarità nell'origine. 28 Scelta della legge di compressione Per tali ragioni, nella realtà applicativa, con modalità diverse a seconda dell'applicazione si adotta una funzione definita a tratti, con raccordo lineare e continuo per piccoli valori di | S | 29 Scelta della legge di compressione Esempio: negli standard telefonici digitali europei ed americani si utilizzano rispettivamente due leggi di compressioni di questo tipo, denominate A-law e μ-law. A - law μ - law C S = M S A∣S∣/ S MAX signS 1ln A 1ln A∣S∣/ S MAX MS sign S 1ln A 0≤ ∣ S ∣ S MAX ≤ 1 A 1 ∣ S ∣ ≤1 A S MAX ln 1∣S∣/ S MAX C S =M S sign S ln1 30 Confronto delle prestazioni Prestazioni della quantizzazione uniforme e non uniforme con legge di compressione μ-law e A-law, rispetto alla riduzione di dinamica di un segnale vocale, quantizzato su 256 livelli. a 2(dB) 0 -10 -20 -30 -40 SQNR (dB) Q unif 48 38 28 18 8 SQNR (dB) Q μ-law 38 37,9 37,6 36,5 33,8 SQNR (dB) Q A-law 38,2 38,2 38,2 37,8 32,1 31 Quantizzazione ottima Nel caso in cui la statistica della dinamica del segnale sia nota a priori, ma non uniforme, per ottenere il minimo errore di quantizzazione, la legge di quantizzazione deve essere scelta in modo da minimizzare l'errore medio quadratico di quantizzazione. Tale condizione può essere ottenuta scegliendo le soglie che individuano gli intervalli di quantizzazione e i livelli di quantizzazione secondo le regole di Loyd-Max 32 Regole di Loyd-Max 1) Il livello di quantizzazione deve essere il baricentro dell'intervallo rispetto alla distribuzione di probabilità del segnale: i ∫t S − S p S dS = 0 ti i−1 2) Le soglie devono essere nel punto medio tra un livello di quantizzazione e quello successivo: S i S i1 ti = 2 ti-1 ti+1 ti S i−1 S i 33 Codifica Le operazioni di campionamento e di quantizzazione definite permettono di ottenere un segnale tempodiscreto e discreto nei valori, a partire da un segnale tempo-continuo e continuo nei valori. Tale operazione è reversibile a meno di una degradazione della qualità del segnale quantificata dal SQNR. Per essere elaborati da un calcolatore elettronico, i campioni del segnale ottenuto devono essere codificati in una rappresentazione binaria. 34 Codifica Tale operazione consiste nell'associare a ciascuno degli L livelli di quantizzazione, una stringa binaria {b1,.....,bm} di opportuna lunghezza m. i S 1 Cod m {b , .... , b }i Affinché tale codifica sia reversibile il numero di bit deve essere tale da soddisfare la relazione m ≥ log 2 L 35 Convertitore Analogico-Digitale Complessivamente quindi, un convertitore composto da tre blocchi fondamentali: AD è campionatore > frequenza di campionamento fs; quantizzatore > livelli di quantizzazione L; codificatore > numero di bit di codifica m = log2L ; S t Ts Sn Q( . ) Sn 1 od Cod m {b , .... , b }n ADC 36 Convertitore Analogico-Digitale Altri parametri di qualità del convertitore sono: Rapporto segnale rumore + distorsione del convertitore Distorsione armonica totale introdotta Larghezza di banda Dinamica dell'ingresso analogico Tempo di conversione Throughput rate (simbol rate di uscita) 37 Convertitore Analogico-Digitale 38 Segnali Numerici: esempi Segnale audio Hi-Fi: Banda = [20 – 20000], fs= 44.1 kHz, m = 16 bit BR = 44100*16 = 705600 bit/s = 705.6 kbit/s File audio MP3 con qualità media BR = 64/96 kbit/s Segnale vocale telefonico: Banda = [300 – 4000], fs= 8 kHz, m = 8 bit BR = 8000*8 = 64000 bit/s = 64 kbit/s Segnale vocale GSM (RPE-LTP vocoder) BR = 13 kbit/s Segnale vocale UMTS (PDC half rate vc) BR = 2 kbit/s 39 Conversione DA: decodifica Il primo passo da compiere per realizzare una conversione Digitale-Analogico è decodificare il segnale binario, invertendo la codifica precedentemente realizzata nella conversione Analogico-Digitale: 1 m {b , .... , b }n Dec Sn 40 Conversione DA: decodifica Poiché l'operazione di quantizzazione realizzata durante la conversione AD non è reversibile, il passo successivo alla decodifica è quello di convertire la sequenza tempo discreta in un segnale tempo continuo, continuo nei valori. Se le ipotesi del teorema del campionamento sono verificate, il passaggio da segnale tempo discreto a segnale tempo continuo avviene in maniera esatta, o comunque con precisione dipendente dalla sola qualità dei circuiti utilizzati. Per realizzare tale passaggio è necessario creare, tramite una elaborazione, un collegamento tra una sequenza tempo discreta e un segnale tempo continuo. 41 Conversione DA: modulazione Come già visto in precedenza, matematicamente tale corrispondenza è realizzata dal segnale PAM: I t = ∑ S n g t−nT n dove in questo caso il periodo di ripetizione dell'impulso g(t) coincide con il periodo di campionamento (T = Ts). Fisicamente tale operazione può realizzata tramite un formatore di impulsi, ossia un circuito in grado di generare segnali fisici aventi (con buona approssimazione) lo stesso andamento dell'impulso g(t). 42 Conversione DA: modulazione Ci domandiamo ora quali elaborazioni devono essere realizzate per affinchè il segnale I(t) coincida con il segnale originale S(t), in base all'impulso di modulazione scelto. Per fare ciò trascuriamo inizialmente l'errore introdotto dalla quantizzazione ponendo: Sn≈S n ⇒ I t = ∑ S n g t−nT s n 43 Conversione DA: modulazione Consideriamo poi la trasformata di Fourier del segnale così ottenuto, che per le proprietà di linearità e di convoluzione risulta essere f G I f = S f nf S ∑ TS n Complessivamente il segnale PAM ottenuto presenta quindi uno spettro che coincide con la ripetizione periodica dello spettro del segnale campionato S(t) moltiplicato per lo spettro dell'impulso di modulazione g(t). 44 Conversione DA: modulazione 45 Conversione DA: filtraggio Per ottenere lo spettro del segnale S(t), e quindi il segnale stesso, è necessario: filtrare il segnale PAM con un filtro passa basso avente frequenza di taglio opportuna; filtrare il segnale all'uscita del filtro passa-basso con un filtro avente come funzione di trasferimento T G-1( f ) in modo da eliminare la distorsione causata dall'impulso modulante. I t LFP TG (f) -1 S t 46 Conversione DA: filtraggio In realtà il segnale all'uscita del convertitore DA è stato ottenuto a partire dai campioni quantizzati. Pertanto, in assenza di altre imperfezioni dovute ai circuiti utilizzati, il segnale ricostruito è differente da quello originale a causa della quantizzazione. 1 m {b , .... , b }n Dec Sn g(t) I t LPF T G1 ( f) S t DAC 47 Conversione DA: rumore di quant. L'errore di ricostruzione, quantizzazione, vale: detto anche rumore di e t = I t −I t = ∑ S n−S n g t −nT s n = ∑ e n g t −nT s n Pertanto all'uscita del convertitore il segnale errore sovrapposto al segnale utile S(t) sarà t = T ∑ e n ht−nT s n dove h(t) è la risposta impulsiva del filtro passa-basso. 48 Conversione DA: rumore di quant. Si può verificare che il rapporto segnale rumore di quantizzazione all'uscita del convertitore DA vale 2 2 〈 Sn 〉 〈 S t 〉 = = SQNR 2 2 〈 t〉 〈 S n−S n 〉 ossia coincide con il SQNR all'uscita del quantizzatore. Il rapporto segnare rumore di quantizzazione all'uscita del convertitore può essere migliorato limitando rigorosamente la banda del rumore di quantizzazione a quella del segnale utile [0, fm]. 49 Elaborazione digitale del segnale S(t) ADC ELAB. DAC y(t) = T [S(t)] fs, M bit In un sistema di elaborazione digitale il comportamento di un qualsiasi sistema è modellato tramite semplici operazioni di tipo aritmetico (somma e prodotto) e di tipo logico (and, or, not). 50 Elaborazione digitale del segnale ELAB. S(t) ADC UC DAC y(t) = T [S(t)] fs, M bit MEM L'efficienza del sistema di elaborazione dipenderà oltre che dalla qualità dei convertitori AD e DA, dalle risorse di calcolo del sistema di elaborazione (memoria, velocità) 51 Vantaggi dell'elaborazione digitale Separazione tra progetto del circuito di elaborazione e progetto delle tecniche di elaborazione; Maggiore robustezza nei confronti del rumore e delle interferenze; Insensibilità circostante; al cambiamento dei parametri dell'ambiente Maggiore flessibilità e riconfigurabilità degli apparati di elaborazione; Possibilità di realizzare elaborazioni non realizzabili tramite tecniche analogiche; 52 Svantaggi dell'elaborazione digitale Maggiore occupazione d'area dei circuiti di elaborazione; Maggiore consumo di potenza da parte dei circuiti di elaborazione; Limitazioni di calcolo dovute all'uso di aritmetica finita; Difficoltà nel realizzare operazioni non lineari; Ritardo di elaborazione non trascurabile; 53 Architetture di elaborazione In base ai requisiti di costo del sistema, velocità e complessità di elaborazione, è possibile adottare diverse architetture per la progettazione di sistemi di elaborazione digitale: sistemi software con hardware di calcolo general purpose; sistemi di calcolo hardware special purpose (DSP); sistemi di calcolo hardware progettati ad hoc (FPGA); 54 Settori applicativi AUDIO: Audio Musicale Hi-Fi Cd Codifica audio: MP3, WMA, ACC, MPC,.... Elaborazione audio musicale IMMAGINI/VIDEO: Codifica immagini: Tiff, Gif, Jpg, Jpg2000,... Codifica video: MPEG, DivX, WMV,.... Elaborazione dell'immagine ed elaborazione video AUTOMAZIONE e ROBOTICA: sistemi di automazione industriale sistemi di sorveglianza (es: controllo del traffico veicolare) intelligenti (es: riconoscimento di oggetti, controllo di sistemi qualità) 55 Settori applicativi TELECOMUNICAZIONI: Comunicazione fissa digitale: PCM, ADSL,.. Comunicazione mobile digitale: GSM, GPRS, UMTS,... Sistemi wirless a corto raggio: BlueTooth, ZigBee, WiFi,.... Broadcasting audio e video: DAB, DVBS, DVBT, DVBH,... BIOMEDICA: Tecniche di elaborazione per sistemi di imaging diagnostici Tecniche di diagnostica assistita o automatizzata Tecniche di hearing aids (es: apparecchi acustici) 56