UNIVERSITY POLITEHNICA of BUCHAREST DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY POLITEHNICA of BUCHAREST DEPARTMENT OF COMPUTER SCIENCE Transmisia datelor multimedia in retele de calculatoare Compresia audio I Conf. Dr. Ing. Costin-Anton Boiangiu <Costin. Boiangiu@CS. PUB. RO>
Cuprins 1. 2. 3. 4. 5. 6. Debitul de informatie al surselor audio Motivatia compresiei vorbirii Motivatia compresiei audio Compresia vorbirii Compresia audio Criterii de perfomanta in codarea vorbirii
Debitul de informatie al surselor audio � Clasele de semnale audio sunt: � semnalele generate de vorbirea umana pentru canale telefonice � vorbirea de banda larga � semnalul audio de banda larga � Fiecare dintre ele difera prin: � banda � gama dinamica (dynamic range) � calitatea asteptata a ascultatorului (destinatarului) � Calitatea vorbirii de banda telefonica (cca. 3 KHz) este acceptabila pentru telefonie si o serie de servicii de video-telefonie � Benzi mari (7 KHz pentru vorbirea de banda larga) sunt necesare pentru imbunatatirea inteligibilitatii si naturaletii vorbirii � Reprezentarile audio de banda larga (fidelitate mare), incluzand necesitatile audio multicanal, necesita benzi de cel putin 20 KHz
Debitul de informatie al surselor audio �Formatul numeric conventional as semnalelor audio este dat de modulatia in cod a impulsurilor (PCM= Pulse Code Modulation) Frecventa [Hz] Frecventa de esantionare (Rata esantionarii) [KHz] PCM [bit/ esantion] PCM rata de inf [Kb/s] Vorbire telefonie 300 -3400 8 8 64 Vorbire de banda larga 50 -7000 16 8 128 Audio banda medie 10 -11000 24 16 384 Audio banda larga 10 -22000 48 16 768
Debitul de informatie al surselor audio �Formatul pentru CD(Compact disc) este standardul de facto al reprezentarii audio numerice �Cu rata de esantionare de 44. 1 KHz, debitul de informatie pentru un semnal stereo pentru un CD este: 2 x 44. 1 x 16 x 1000 = 1. 41 Mb/s �Este necesar un antet (overhead) semnificativ pentru codul de linie, care transforma cei 8 biti de informatie in 14 biti, (pentru sincronizare si corectia erorilor) =>49 de biti pentru fiecare esantion audio de 16 biti =>debitul stereo total este 14. 1 x 49 / 16 = 4. 32 Mb/s
Debitul de informatie al surselor audio �Comparatie intre diferitele debite ale CD-ului cu cele ale unei benzi audio digitale (DAT = digital audio tape) Debitele pentru CD si DAT (Semnal stereo, esantionat cu 44. 1 KHz; DAT esantionat la 32 KHz si 48 KHz) Dispozitiv de memorare Rata audio [Mb/s] Over-head [Mb/s] Rata binara totala Compact disc CD 1. 41 2. 91 4. 32 Digital Audio Tape (DAT) 1. 41 1. 67 3. 08
Codarea vorbirii vs. codarea semnalului audio � Codarea audio implica: � rate de esantionare mai mari � o rezolutie in amplitudine mai buna � gama dinamica mare � variatii mari in spectrul de putere � reprezentare stereo si multicanal � calitate mai buna � Codarea vorbirii si codarea audio sunt similare in sensul ca ambele se bazeaza pe proprietatile perceptiei audio umane � Vorbirea poate fi codata foarte eficient prin utilizarea unui model de producere a sunetului, pe cand semnalele audio nu se preteaza la aceasta metoda � In algoritmii de codare curenti se folosesc patru tehnologii de baza: � codarea perceptuala (perceptual coding) � codarea domeniului de frecventa (frequency-domain coding), � comutarea ferestrelor (window switching) � alocarea dinamica a bitilor (dynamic bit allocation)
Motivatia compresiei audio �Fie o melodie cu durata de 1 minut �In conditii de calitate CD, semnalul audio: �este esantionat cu frecventa de 44. 1 KHz (deci, 44100 esantioane/secunda) �este semnal stereo �are 16 biti pe esantion �In format binar (wav), rezulta un necesar de memorie (sau de stocare) de: 44. 100 esantioane / s * 2 canale * 16 bit / esantion * 60 s = 84. 672. 000 biti = 10, 584 MBytes
Motivatia compresiei audio �O melodie modesta de cateva minute, de exemplu 3 -4 minunte, va ocupa un spatiu de 10, 584 Mbytes * 3 -4 min. = 31. 752 – 42. 336 MB �Pentru un album cu 10 melodii rezulta un necesar 10 melodii * 40 MB = 400 MB ceea ce este cam mult pentru majoritatea utilizatorilor obisnuiti
Motivatia compresiei audio �Daca se considera problema transmiterii pe un canal internet a unei singure melodii, pe o conexiune cu viteza de 64 Kbit/s, este necesar un timp de [10, 584 MBytes * 8 bit/Byte] / [64 Kbit/s * 60 s/min ] = 22. 05 min ceea ce este iarasi destul de mult pentru un utilizator obisnuit �Utilitarele de compresie a semnalelor audio realizeaza rapoarte de compresie de pana la 10 ori, fara pierderea calitatii subiective a semnalului, astfel incat timpul transmiterii se poate reduce la 2 min, ce poate fi acceptabil
Motivatia compresiei vorbirii �Codarea vorbirii este un aspect important al telecomunicatiilor moderne �Codarea vorbirii = procesul de reprezentare numerica a semnalului vorbire �Obiectivul de baza al codarii vorbirii este de a reprezenta semnalul vorbire: � cu un numar mic de biti � cu mentinerea unui nivel de calitate suficient pentru refacerea vorbirii originale � cu un grad de dificultate rezonabil
Motivatia compresiei vorbirii �Un numar mic de biti inseamna: �o banda mica necesara transmisiei �mai putina memorie pentru memorare �Desi in sistemele de comunicatie cu fir sunt disponibile benzi foarte mari de frecventa (ex. cablul optic), in comunicatiile fara fir si cele prin satelit banda este limitata �Comunicatiile multimedia si alte aplicatii bazate pe vorbire necesita voce reprezentata numeric �Algoritmii de codare aplica metode sofisticate pentru reducerea redundantei
Motivatia compresiei vorbirii � Semnalul vorbire este un semnal analogic s(t) esantionat la o frecventa de esantionare ts ≥ 2 fmax, unde fmax este frecventa maxima din spectrul semnalului s(t) � Semnalul discret va fi notat cu s(n) � Acest semnal este apoi codat prin diverse scheme de codare cum sunt PCM sau codare predictiva � In codarea PCM (Pulse Coded Modulation) : � semnalul discret este cuantizat in 2 N nivele � fiecare esantion s(n) este reprezentat pe R biti � Cuantizorul poate fi � � uniform sau neuniform (cuantizatoarele neuniforme utilizeaza mai putini biti pe esantion, asa cum sunt cuantizoarele cu lege sau A, ce folosesc numai 8 biti pe esantion) scalar sau vectorial � Un cuantizor tipic foloseste 8 sau 16 biti pe esantion
Motivatia compresiei vorbirii � In codarea predictiva codorul considera un grup de esantioane, la un moment dat, extrage o serie de coeficienti ce modeleaza esantioanele considerate, converteste coeficientii in simboluri binare si le transmite pe canal � Se obtine astfel o reprezentare compacta cu mai putini biti � Decodorul reconstruieste semnalul vorbire din parametrii transmisi, asa cum se prezinta in urmatoarea figura (Schema de baza pentru un sistem de transmisiune audio cu codare-decodare)
Tehnici de compresie a vorbirii in domeniul timp �Motivatie: �reducerea timpului necesar unui utilizator pentru a asculta un mesaj, prin cresterea capacitatii de comunicare a urechii �reducerea cantitatii de date in vederea minimizarii spatiului de memorare si a benzii de transmisie a mesajelor vorbite �Compresia in timp a vorbirii poate fi utilizata intr-o varietate de aplicatii incluzand instruirea, ajutorarea celor cu deficiente auditive si pentru interfetele om-calculator �Ex. : Studiile au aratat ca ascultarea de doua ori a materialelor redate cu o viteza dubla este mult mai eficienta decat ascultarea mesajelor la viteza normala
Tehnici de compresie a vorbirii in domeniul timp �Compresia temporala este utilizata in: �prezentarea mesajelor in sistemele de mail vocal �ajutorarea persoanelor cu deficiente majore de vedere �sistemele de recunoastere a vorbirii cand formele de intrare sunt normalizate la o lungime standard �Vorbirea comprimata in timp este referita ca: �accelerata �comprimata �cu scara de timp modificata �cu viteza marita �cu timp modificat
Vorbirea rapida �Rata de vorbire normala in Engleza este intre 130 si 200 cuvinte pe minut (wpm) �Cand se vorbeste repede, vorbitorul schimba ne-intetionat atributele relative ale vorbirii relativ la durata pauzelor, durata vocalelor consonante etc. �In general, vorbitorii pot comprima vorbirea lor pana la 70%, limitarea fiind din cauza limitarilor fiziologice
Schimbarea vitezei �Schimbarea vitezei este similara cu redarea unei casete la o viteza mai mare sau mai mica �Metoda poate fi reprodusa digital prin schimbarea ratei de esantionare in timpul intoarcerii casetei �Metodele nu sunt prea folosite intrucat produc un efect nedorit al modificarii frecventei proportional cu schimbarea vitezei de redare, cauzand o scadere a inteligibilitatii
Sinteza vorbirii �Cu o voce pur sintetica este posibil sa se genereze vorbire la diverse rate ale cuvintelor �In mod curent sintetizoarele text-vorbire pot produce rate de pana la 550 wpm �Acest lucru se obtine prin reducerea selectiva a fonemelor (phoneme) si a duratei pauzelor �Tehnica este puternica, in particular pentru ajutorarea persoanelor cu dizabilitati, dar nu este relevanta in raport vorbirea inregistrata
Eliminarea pauzelor (Silence Removal) �Cea mai simpla metoda consta in utilizarea energiei sau mediei amplitudinii, combinata cu pragurile de timp �Alte metode utilizeaza masuratori de trecere prin zero sau parametrii LPC �De exemplu tehnica TASI (Time Assigned Speech Interpolation) este utilizata pentru a dubla capacitatea cablurilor telefonice transoceanice �Tehnica DSI (Digital Speech Interpolation) este similara dar se lucreaza in totalitate in domeniul digital �DSI/TASI doresc sa conserve banda sistemului
Esantionare neuniforma �Principiul metodei este prezentat in urmatoarea figura �Daca intreruperile se fac la intervale regulate, largi portiuni din semnal se pot sterge fara a se afecta inteligibilitatea
Esantionare neuniforma �O alta tehnica prezentata in figura urmatoare (C): segmentele semnalului vorbire sunt alternativ indepartate si retinute �Durata fiecarui interval de esantionare trebuie sa fie cel putin egala cu a unui formant (pitch) (15 ms) dar trebuie sa fie – de asemenea – mai mica decat lungimea unui fonem
Esantionarea cu prezentare dihotonica (Sampling with Dichotic Presentation) �O varianta interesanta a metodei de esantionare este obtinuta prin redarea semnalului esantionat standard unei urechi si a materialului „indepartat” celeilalte urechi �Sub aceasta conditie „dichotic” inteligibilitatea si propuntierea cresc �Desi initial exista o slaba dificultate in intelegerea mesajului, adaptarea este imediata �Raportul de compresie creste pana la 50% prin pastrarea intregii informatii din semnalul original
Esantionarea cu prezentare dihotonica �Cuantizarea numerica pe un numar mare de biti conserva formele de unda, in sensul ca semnalul de la iesire este apropiat de semnalul de la intrare, ca forma de unda �Diferenta formelor de unda, de la iesire si de la intrare constituie criteriul eroare pentru proiectarea circuitului de cuantizare �Cand cuantizarea se realizeaza cu numar mic de biti (numar mic de simboluri binare), in proiecatrea codorului trebuie sa se includa informatie despre producerea si perceptia semnalelor audio, astfel incat semnalul de iesire poate sa difere mult de semnalul de intrare, insa efectul acestora asupra urechii umane sa fie acelasi
Esantionarea cu prezentare dihotonica �In principiu, un algoritm de codare eficienta a sursei va: �indeparta componentele redundante ale sursei de semnal prin exploatarea corelatiilor dintre esantioane. (codare entropica) �Indeparteaza componentele care nu sunt percepute de urechea umana � Irelevanta se manifesta ca o amplitidine ne-necesara sau ca o rezolutie in frecventa � Portiunile de semnal care sunt mascate nu trebuie transmise. (codare perceptuala)
Compresia audio bazata pe modelul perceptiei audio (Perceptual coding) � Schema de baza a unui codor-decodor audio, bazat pe model, este prezentata mai jos � Se remarca existenta a doua piese de baza la partea de codare: � Un bloc pentru transformarea semnalului intr-o reprezentare care modeleaza precis sursa � Un model care modeleaza acusto-fiziologic (psihoacustic, in engleza) aparatul auditiv � � Acesta furnizeaza o aproximare a mecanismelor de perceptie ale urechii umane Cele doua blocuri (transformari) determina marimea reducerii ce poate fi obtinuta prin procesul de codarea
Compresia audio bazata pe modelul perceptiei audio (Perceptual coding) �In etajul de reprezentare al semnalului are loc reducerea redundantei semnalului �In codarea vorbirii, un model fizic al tractului vocal este folosit pentru definirea parametrilor vorbirii �Acesti parametrii, impreuna cu informatia reziduala, sunt codati. In timp ce aceasta tehnica permite obtinerea unor rapoarte de compresie foarte mari, nu este foarte eficienta cu semnale muzicale pentru ca este foarte dificil sa se modeleze bine toate sursele posibile de muzica �In codarea audio, reprezentarea din domeniul timp a semnalului este tipic transformata intr-o reprezentare timpfrecventa cu ajutorul unui banc de filtre (cascada de filtre) �In acest caz, iesirile din domeniul frecventa ale bancului de filtre furnizeaza reprezentarea primara a semnalului
Compresia audio bazata pe modelul perceptiei audio (Perceptual coding) �Urechea umana realizeaza o analiza Fourier echivalenta cu un bank (lant) de filtre, unde transformarea frecventelor de lucru in „lucru mecanic” are loc in membrana basilara. �Spectrele de putere nu sunt reprezentate pe o scara liniara a frecventelor, ci pe benzi de frecventa limitate, denumite benzi critice �Sistemul auditiv poate fi descris ca un banc de filtre trece banda, a caror caracteristica amplitudine – frecventa se suprapun �Filtrele au banda de ordinul 50 -100 Hz pentru frecvente mai mici de 500 Hz si de pana la 5000 Hz pentru semnale de frcventa mai mare �In gama audio, se pot defini astfel 26 benzi critice acoperind intervalul de frecventa de pana la 24 KHz
Compresia audio bazata pe modelul perceptiei audio (Perceptual coding) �Ipoteza generala este ca semnalele audio sunt cvasi-stationare, deci, o corespondenta in domeniul frecventa rezulta intr-o reprezentare a semnalului care este mai eficienta decat PCM directa �Cu cat fereastra de analiza este mai mare cu atat presupunerea este mai buna �In general, se face un compromis intre o codare de eficienta inalta, data de un bank de filtre cu inalta rezolutie, obtinuta in etajul de reprezentare a semnalului si costul memoriei/intarzierii necesara intregului sistem de codare �Cercetarile din domeniul rezolutiei spectrale au arata ca o alegere buna pentru o rezolutie de frecventa este de 20 Hz ce corespunde unei rezolutii in domeniul timp de 25 ms
Compresia audio bazata pe modelul perceptiei audio (Perceptual coding) �Bancuri de filtre variante in timp sunt des utilizate pentru a evita imprastierea zgomotului de cuantizare in timp in semnalul rconstituit �Aceste metode permit bancului de filtre sa se adapteze la o rezolutie de timp marita, tipic egala cu 5 ms, in prezenta unui tranzient (impuls).
Reducerea ratei de informatie �Interesul pentru reducerea ratei de bit (low bit rate coding) este dat de necesitatea minimizarii costurilor de transmisiei si a necesarului de memorie pentru stocare, de necesitatea de a transmite pe canale cu capacitate limitata, asa cum sunt canalele radio mobile, si pentru a suporta codarea cu pas variabil �Compresia ratei de informatie pentru semnale audio si vorbire se poate face prin: tehnici predictive, codare sub-banda, codare prin transformare, diferite forme de cuantizare vectoriala �Se obtin astfel rate de 0. 5 -1 bit/esantion pentru vorbire si 1 -2 bit/ esantion pentru semnale audio
Codarea in domeniul de frecventa (Frequency-domain coding) �In domeniul frecventa se poate defini redundanta ca fiind o caracteristica spectrala ascutita (ne-plata) pe termen scurt a sursei de semnal �Irelevanta inseamna componente spectrale cu amplitudine mai mica decat pragul psihoacustic �Cele doua trasaturi (redundanta si irelevanta) sunt folosite pentru a reduce cantitatea de simboluri in raport cu PCM �Acest lucru se obtine prin impartirea spectrului sursei in benzi de frecventa pentru a genera componente spectrale necorelate si prin cuantizarea acestor componente separat �Se folosesc doua categorii de codare: �Codarea transformarii (TC=transform coding) �Codarea sub-benzii (SBC=subband coding)
Codarea in domeniul de frecventa �Diferentele dintre cele doua categorii sunt de ordin istoric �Amandoua utilizeaza o analiza filterbank in codor pentru a descompune semnalul de iesire in componente spectrale sub -esantionate �Componentele spectrale se numesc esantioane subbanda (subband samples) daca bancul de filtre are o rezolutie mica; in caz contrar se numesc linii spetrale sau coeficienti de transformare �Aceste componente spectrale sunt recombinate in decodor prin sinteza fitrului bank
Codarea sub-benzii (SBC=subband coding) �In SBC, sursa de semnal este supusa unei analize filterbank constand din M filtre trece banda care sunt continue in frecvente astfel incat multimea semnalelor subbanda poate fi recombinata aditiv pentru a produce semnalul original sau o versiune apropiata a acestuia �Fiecare iesire a filtrului este decimata la limita (se mai spune critic decimata)(adica esantionata la dublul benzii nominale) cu un factor egal cu M, numarul de filtre trece banda �Aceasta decimare rezulta intr-un umar de esantioane subbanda ce egaleaza acelea din semnalul original �In receptor, rata de esantionare a fiecarei subbenzi este crescuta la cea a sursei de semnal prin completarea la un numar apropiata cu esantionae zero
Codarea sub-benzii �Semnalelel subbanda interpolate apar la iesirile FTB ale filtrului de sinteza �Procesul de esantionare poate introduce distorsiune de esantionare (aliasing distorsion) din cauza suprapunerii subbenzilor �Daca se folosesc filtre perfecte, (filtre dublu-banda in cuadratura sau filtre polifazice), termenii aliasing sunt eliminati si suma iesirilor filtrelor trecebanda este egala cu semnalul de intrare, in absenta cuantizarii
Codarea sub-benzii
Codarea transformarii (TC=transform coding) �In TC, un bloc de esantionae de intrare este transformat liniar cu o transformata discreta intr-un set de coeficienti de transformare, aproape ne-corelati �Acesti coeficienti sunt cuantizati si transmisi in forma numerica spre decodor �In decodor are loc transformarea inversa, refacand semnalul in domeniul timp �In absenta erorilor de cuantizare sinteza furnizeaza o reconstructie exacta �Transformari tipice sunt: tranformata Fourier discreta, transformata cosinus discreta (DFT), sau trasformata cosinus discreta modificata (MDCT)
Codarea transformarii �MDCT (Modified DCT) se bazeaza pe o suprapunere de 50% a filtrelor succesive de analiza �Efectul consta in obtinerea unui castig mai mare si a unui raspuns al filtrelor individuale mai bun. �S-a mentionat ca decodorul bazat pe transformta inversa poate fi privit ca un filtru bank; raspunsul la impuls al filtrelor trece banda componente este egal cu secventa transformarilor de baza �Raspunsul la impuls al filtrului de analiza este versiunea inversata in timp
Codarea transformarii �Schema a bloc a sistemului cu compresia audio folosind codarea transformarii
Codarea transformarii �Pre-procesarea inseamna una sau mai multe prelucrari de tipul: filtrare, compresia domeniului de variatie a amplitudine, folosirea unui model perceptual pentru indeparatarea informatiei nerelevante �Prin T este reprezentata o transformare de tipul Fourier, DCT sau MDCT �Selectia coeficientilor inseamna selectarea celor mai importanti coeficienti pentru indeplinirea unui criteriu de eroare minima � Codarea coeficientilor inseamna – de fapt – o codare de canal, adica adaugarea unor simboluri de control pentru protectia la perturbatii si, eventual, a unor informatii privitoare la parametrii transformarilor din etapa de pre-procesare �La receptie are loc decodarea coeficientilor si aplicarea unei transformari inverse pentru refacerea semnalului initial
Metoda de compresie LPC � LPC = Linear Predictive Coding � LPC exploateaza redundanta semnalului vorbire prin mecanismul de generare a vorbirii: un filtru liniar excitat de un semnal numit semnal de excitatie � Semnalul excitatie se mai numeste si semnal rezidual � Codoarele pentru vorbire prelucreaza un grup de esantionae, numit cadru sau segmen � Codorul vorbirii calculeaza coeficientii filtrului si semnalul de excitatie pentru fiecare cadru � Coeficientii filtrului sunt astfel calculati pentru a asigura ca energia la iesirea filtrului pentru cadrul analizat sa fie minimizata � Un astfel de filtru se numeste filtru LP analizor � Semnalul rezultant se numeste semnal rezidual pentru acel cadru particular � La decodare, filtrul LP lucreaza ca un filtru de sinteza, in timp ce semnalul rezidual actioneaza ca semnal de excitatie pentru filtrul de sinteza
Metoda de compresie LPC �In vederea reducerii ratei de bit totale, codoarele vorbirii cum sunt CELP (code excited linear prediction) nu transmit intreg semnalul rezidual, intrucat se foloseste un tabel de codare vectorial pentru a coda semnalul de excitatie �Tehnica este numita cuantizare vectoriala (VQ), astfel incat codorul selecteaza unul dintre semnalele de excitatie dintr-un tabel predeterminat, si va transmite indexul semnalul de excitatie care se afla cel mai aproape de cel care trebuie transmis �Tabelul cu semnalele de excitatie este cunoscut atat de codor cat si de decodor �Semnalul excitatie este selectat astfel incat distorsiunea dintre cadrul original si cel reconstruit sa fie minima
Metoda de compresie LPC �Tipic, se folosesc rate de esantionare de 8 KHz iar lungimea cadrului este de 20 ms, astfel incat exista 160 esantioane in fiecare cadru �Se gaseste ca un filtru de ordinul 10 este suficient pentru modelarea anvelopei spectrale pentru o rata de esantionare de 8 KHz, deco codorul lucreaza cu 12 parametri (10 coeficienti, castigul fitrului si indexul semnalului de excitatie) in loc de 160 de esantioane pentru un cadru
Metoda de compresie LPC �Modelul vorbirii
Metoda de compresie LPC �Modelului de vorbire are doua moduri de functionare � In primul mod, comutatorul K este in pozitia a si se genereaza fonemele sonore � Semnalul excitatie este constituit dintr-o serie de impulsuri dreptughiulare cu perioada Tp, Ts este frecventa de esantionare �Al doilea mod de lucru necesita comutatorul K in pozitia b, si corespunde fonemelor insonore � Exista trei filtre care modeleaza efectele glotei, ale tractului vocal si al radiatiei sonore (efectul buzelor) � Multiplicarea cu constanta G este pentru modificarea intensitatii.
Metoda de compresie LPC �In aplicatiile practice se utilizeaza o schema mai compacta, unde cele trei filtre sunt inlocuite cu unul singur, H(z)
Metoda de compresie LPC � Pentru filtru se foloseste structura ARMA (Autoregressive Moving Average) � Un semnal vorbire s(n) este considerat ca iesire a unui sistem excitat de un semnal excitatie u(n) � Esantionul vorbirii s(n) este modelat ca o combinatie liniara a iesirilor vechi si prezente si a intrarilor vechi, dupa relatia: unde G este castigul filtrului si {ak, bk} sunt parametrii modelului � Numarul p implica folosirea a p esantioane trecute, si se numeste ordinul predictiei liniare � Functia de transfer H(z) a modelului se obtine prin aplicarea transformatei in z ecuatiei: ceea ce arata un model de tip poli-zerouri. In spectrul vorbirii, nazalele sunt reprezentate de zerouri si formantii sunt reprezentati de poli.
Metoda de compresie LPC �Exista doua cazuri speciale acestui model: �Cazul modelului de tip auto-regresiv, cand H(z) are numai poli, deci coeficientii bk sunt nuli � Acest model se foloseste din motive de simplitate si eficienta a implementarii. Ideea este ca in rezolvarea unui model poli-zeroruri este nevoie de rezolvarea unui set de ecuatii neliniare in timp ce modelul numai cu poli necesita rezolvarea unui set liniar de ecuatii �Cazul modelului de tip medie alunecatoare, cand H(z) are numai zerouri, deci coeficientii ak sunt zero
Metoda de compresie LPC � Transformata z inversa a modelului cu toti polii este � Coeficientii {ak} sunt numiti coeficientii LP ai filtrului liniar � Semnalul eroare e(n) este diferenta dintre semnalul de intrare si cel estimat, dupa relatia iar in domeniul z avem relatia de legatura
Metoda de compresie LPC �Ca urmare, modelul global poate fi descompus in doua parti �Partea de analiza analizeaza semnalul vorbire si produce semnalul eroare �Partea de sinteza preia semnalul eroare ca semnal de intrare, este filtrat de filtrul 1/A(z) si se obtine semnalul vorbire �Semnalul eroare se mai numeste semnal rezidual sau semnal de excitatie
Metoda de compresie LPC �Exista doua tipuri de codoare bazate pe predictie liniara: �Codor adaptiv inainte sau direct (forward adaptive coder) � Predictia liniara se bazeaza pe esantionale de intrare vechi � Analiza LP este efectuata in codor si se transmit coeficientii LP �Codor adaptiv inapoi sau invers (Backward adaptive coder) � Coeficientii LP sunt calculati din esantioanle vechi reconstruite � Analiza LP este facuta din nou la receptie, deci in cadrul decodorului � In acest fel, nu este necesar sa se transmita coeficientii LP de catre codor
Estimarea coeficientilor predictiei linare �Exista doua metode larg folosite in estimarea coeficintilor predictiei liniare: �autocorelatia �covarianta �Ambele metode folosesc coeficientii filtrului LP {ak} astfel incat energia reziduala (energia semnalului rezidual) sa fie minimizata �Cea mai folosita metoda este metoda celor mai mici patrate
Ponderarea pe ferestre (windowing) �Semnalul vorbire este un semnal variabil in timp si unele variatii sunt aleatoare �Uzual, in timpul vorbirii cu intensitate mica, forma tractului vocal si a excitatiei nu se modifica in 200 ms �Dar fonemele au o durata medie de 80 ms �Cele mai multe schimbari apar mai frecvent decat intervalul de 200 ms �Analiza semnalului presupune ca proprietatile semnalului se schimba lent in timp, ceea ce permite o analiza in timp scurt a semnalului �Semnalul este divizat in segmente succesive, analiza se face pe aceste segmente si se extrag anumite proprietati dinamice
Ponderarea pe ferestre (windowing) �Semnalul s(n) este inmultit cu o fereastra de analiza w(n) pentru a extrage un anumit segment de analiza �Tehnica se numeste ponderare (windowing) �Alegerea formei ferestrei este importanta intrucat esantionale vor fi ponderate in mod diferit �Folosirea unei ferestre dreptunghiulare determina aparitia unor lobi secundari mari si anumite efecte nedorite in domeniul frecventa �Pentru a inlatura aceste oscilatii mari, se utilizeaza ferestre de filtrare fara schimbari abrupte in domeniul timp, asa cum este fereastra Hamming, Blackman, Kaiser sau Bartlett �Se pot folosi si combinatii de ferestre, asa cum se foloseste in GSM, unde fereastra de analiza are doua jumatati de ferestre Hamming de dimensiuni diferite
Reprezentarea parametrilor LP �Parametrii LP au gama dinamica destul de mare, astfel incat sunt dificil de cuantizat �Alte moduri de reprezentare au o gama dinamica mai mica si posibil de estimat �Acest lucru permite folosirea unui numar diferit de biti pentru cuantizare, cu atat mai mic cu cat efectul coeficientilor asupra raspunsului filtrului este mai mic
Reprezentarea parametrilor LP �Coeficientii predictiei liniare pot avea diferite reprezentatri echivalente: �frecventele liniilor spectrale (line spectral frequencies – LSF) �coeficienti de reflectie (reflection coeficients – RC); �autocorelatii (autocorelations) �rapoarte logaritmici ale ariilor (log area ratios – LAR) �coeficienti de reflexie arcsine (arcsine of reflection coefficients – ASRC) �raspunsul la impulse al filtrului LP ( impulse responses of LP synthesis filter - IR)
Reprezentarea parametrilor LP �Toate aceste reprezentari au relatii de legatura exacte cu coeficientii LP si pastreaza toata informatia desprea acestia �Dintre acestia, o parte sunt mai usor de calculat si au proprietati particulare ce le fac mai atractive pentru diferite scopuri
Metoda autocorelatiei �Mai intai, semnalul vorbire s(n) este multiplicat cu o fereastra w(n) pentru a obtine un segment de vorbire ponderat sw(n), dupa relatia �Al doilea pas este minimizarea energiei semnalului rezidual; energia reziduala se obtine cu expresia
Metoda autocorelatiei �Valorile parametrilor {ak} care minimizeaza energia E se gasesc prin calcularea derivatelor partiale lui E in raport cu {ak} si egalarea lor cu zero de unde rezulta un set de p ecuatii cu p mecunoscute �In ultima ecuatie semnalul ponderat sw(n)=0 in afara ferestrei de filtrare
Metoda autocorelatiei �Ecuatiile liniare pot fi exprimate in functie de functia de autocorelatie �Functia de autocorelatie a unui segment ponderat de vorbire este definita de relatia unde Nw este lungimea ferestrei �Prin inlocuirea valorilor autocorelatiei in penultima ecuatie se obtine
Metoda autocorelatiei �Setul de ecuatii liniare poate fi scris matricial sub forma �Ultima ecuatie poate fi scrisa matricial sub forma
Metoda autocorelatiei �Matricea R este o matrice Toeplitz, deci are toate elementele de pe diagonala principala egale �Acest lucru permite rezolvarea ecuatiei matriciale prin algoritmul Levinson-Durbin sau prin algoritmul lui Schur � Datorita structurii matricii R, A(z) este de tip faza minima �Filtrul folosit la sinteaza are functia de transfer H(z) = 1 / A(z), deci zerourile lui A(z) devin polii lui H(z) �Astfel, faza minima a lui A(z) garanteaza stabilitatea filtrului H(z)
Algoritmul Levinson-Durbin �Algoritmul rezolva ecuatia matricala Ax=b, in care A are o structura Toeplitz, matrice simetrica si pozitiv definita, iar b este un vector arbitrar �Aceste cerinte sunt satisfacute de matricea de autocorelatie R, definita anterior. �Algortimul LD necesita o forma speciala a lui b, unde b consta din anumite elemente ale lui A �Si aceasta conditie este satisfacuta de ecuatiile autocorelatiei
Algoritmul Levinson-Durbin �Fie ak(m) coeficientul k pentru un cadru oarecare m al iteratiei �Algoritmul LD rezolva iterativ setul de ecuatii in mod iterativ pentru m=1, 2, …, p dupa relatiile:
Algoritmul Levinson-Durbin �Se considera initial E(0) = R(0) si a(0) = 0 �La fiecare iteratie, coeficientul ak(m) pentru k=1, 2, . . , m descrie predictorul liniar de ordin m; eroarea de energie E(m) este redusa cu un factor de (1 -k(m)2). � Intrucat E(m) nu este negativa, rezulta ca | k(m) | ≤ 1 �Aceasta conditie pentru coeficientul de reflexie k(m) garanteaza ca radacinile lui A(z) vor fi in interiroul cercului unitate �Rezulta ca sinteza fltrului H(z) va fi stabila si – deci – metoda corelatiei determina stabilitatea filtrului cautat
Criterii de perfomanta in codarea vorbirii �Pentru evaluarea unui codor particular trebuie considerate o serie de criterii, cel mai importante fiind: �calitatea vorbirii � Codoarele vorbirii urmaresc producerea unei distorsiuni audibile minime la o rata data � Naturaletea si inteligibilitatea sunetului produs sunt criterii – de asemena – importante � Calitatea vorbirii poate fi determinata prin teste de ascultare ce calculeaza opinia media a unor ascultatori � Calitatea vorbirii poate fi apreciata si prin masuri cantitative cum sunt castigul predictiei, distorsiunea spectrala
Criterii de perfomanta in codarea vorbirii �Rata de bit � Inseamna numarul de biti pe secunda ce trebuie transmisi de codor � Obiectivul algoritmului de codare este de a reduce rata de bit prin mentinerea unei calitati inalte a vorbirii �Necesarul de memorie pentru implementare; toti algoritmii de codare a vorbirii sunt executati in circuite integrate DSP dedicate sau de uz general � Acestea au capacitate limitata de memorie RAM precum si o viteaza finita � Rezulta ca algoritmii de codare-decodare nu trebuie sa fie prea complecsi, deci sa nu depaseaca capacitatea circuitelor DSP
Criterii de perfomanta in codarea vorbirii �Adesea, algoritmii de codare prelucreaza impreuna grupuri de esantioane � Daca numarul de esantioane este prea mare, se introduce o intarziere intre vorbirea originala si cea codata � Aceasta nu este de dorit in transmisiile de timp real, dar poate fi tolerata in cazul memorarii vorbirii sau a inregistraii acesteia �Banda de frecventa a semnalului vorbire ce trebuie codat este o alta problema � In transmisiunile telefonice se utilizeaza o banda de 200 -3400 Hz � Exista insa transmisii audio, cum sunt cele din teleconferinte sau tele-invatare, ce necesita benzi de 7 -20 KHz
Criterii de perfomanta in codarea vorbirii �Algoritmii de codare trebuie sa fie robusti la erorile ce pot apare pe canal � Erorile de pe canal sunt cauzate de zgomotul de pe canal, interferenta inter-simbol, fading etc. �In timpul transmisiilor reale, semnalele vorbire sunt afectate de diferite zgomote acustice ce provin din mediu cum sunt: � zgomotul strazii � zgomotul masinii � al biroului, etc. � Algoritmii de codare trebuie sa mentina o buna calitate a vorbirii in prezenta unor astfel de surse de zgomot
Aprecierea distorsiunilor �Inteligibilitate si Intelegere �Inteligibilitatea se refera uzual la abilitatea de a identifica cuvinte izolate �Intelegerea se refera la intelegerea continutului unui material � Aceasta este uzual testata prin intrebari despre materialul inregistrat
Aprecierea distorsiunilor �Perceptia si redundanta vorbirii � Importanta analizei modului in care se realizeaza perceptia consta in faptul ca aprecierea calitatii semnalului reconstituit din parametrii transmisi pe canal, se face de catre urechea umana � De aceea, trebuie explorat modul in care functioneaza urechea umana, prin evidentierea aspectelor importante si a celor mai putin importante. � Sistemul auditiv uman actioneaza ca un set de filtre si este foarte sensibil in domeniul 200 -5600 Hz in ceea ce priveste perceptia. � Trasaturile importante ale perceptiei, cum este vocea, sunt determinate din structura armonica care este prezenta in diomeniul frecventelor joase (ce nu depaseste 3 KHz). � Intrucat sursa si – mai ales – destinatarul semnalului vorbire este un operator uman, pe langa masurile clasice de apreciere a distorsiunilor apar si masuri de natura subiectiva
Masuri de aprecire subiectiva a distorsiunilor � Testele subiective permit o evaluare comparativa a diverselor codoare � In astfel de teste, calitatea vorbirii este apreciata uzual prin inteligibilitate, tipic definita ca procentul de cuvinte sau foneme care sunt corect percepute � Aspectele semnificative ale perceptiei vorbirii sunt inteligibilitatea si naturaletea � Pentru aprecierea acestor calitati se poate folosi masura Scorul opiniei mediii (MOS = Mean Opinion Score) � Determinarea acesteia reclama un proces lent � Decizia este impartita in 5 domenii ca in tabelul de mai jos Score Calitatea vorbirii Nivelul distorsiunii 5 Excelenta Imperceptibila 4 Buna Abia perceptibila dar nu deranjanta 3 Acceptabila Perceptibila si slab deranjanta 2 Saraca Deranjabila dar nu intolerabila 1 Nesatisfacatoare Foarte deranjanta si intolerabila
Masuri de aprecire subiectiva a distorsiunilor �Opinia sau nivelul perceput al distoriunii este transformat in termeni descriptivi: �excelent �foarte bun �sarac �nesatisfacator �Aceste aprecieri se refera la tot ansamblul de distorsiuni, permit comparea directa cu masurile obiective (cantitative), dar nu ajuta imediat la intelegerea cauzelor distorsiunilor �Testele subiective necesita o multime numeroasa de ascultatori, ce necesita o intsruire adecvata in ascultare si calibrare �Este nevoie si de un mediu special pentru testare
Masuri de aprecire obiectiva a distorsiunilor � In domeniul timp: �raportul semnal-zgomot: daca s(n) este semnalul original al vorbirii, este vorbirea codata si fisierul vorbire are NT esantioane, atunci raportul semnal-zgomot este � Este o masura globala, definita pe intreg fisierul
Masuri de aprecire obiectiva a distorsiunilor �raportul semnal-zgomot segmental (pe segment) considera raportul semnal –zgomot calculat pe un segment si face media geometrica a valorilor obtinute. � Daca semnalul vorbire are NF cadre si lungimea fiecarui cadru este NS, raportul semnal-zgomot segmental este � In general, este o masura mai buna decat raportul semnal zgomot global
Masuri de aprecire obiectiva a distorsiunilor �Castigul predictiei unde NT este numarul de esantioane � Un castig mare al predictiei presupune ca filtrarea LP este aproape de aceea a tractului vocal, astfel incat semnalul eroare r(n) va fi mai aproape de excitatia adevarata � Exemplu Fisierul de intrare Pg [d. B] Fisier 1, vorbitor feminin, 23808 esantioane 16. 12 Fisier 2, vorbitor masculin, 30976 esantioane 17. 35 Fisier 3, vorbitor masculin, 28416 esantioane 16. 01
Masuri de aprecire obiectiva a distorsiunilor �eroarea energiei � Intrucat se folosesc aceeasi coeficienti pentru filtrare si filtrare inversa, in mod teoretic semnalele vorbire de intrare si de iesire ar trebui sa fie identice, deci senalul eroare sa fie zero � Experimental, ne asteptam ca semnalul eroare sa fie foarte mica din cauza reprezentarii finite a datelor si a limitarilor impuse simularilor
Masuri de aprecire obiectiva a distorsiunilor �In domeniul frecventa: �distorsiunea spectrala se defineste ca diferenta patratica medie dintre spectrul de putere original si spectrul de putere obtinut prin cuantizarea coeficientilor LPC � Pentru cadrul i distorsiunea este � unde Fs este frecventa de esantionare, Si(f) si sunt spectrele originale si estimate
Masuri de aprecire obiectiva a distorsiunilor �Si(f) si sunt spectrele originale si estimate sunt definite prin �Ai(z) si sunt LPC original si- respectiv- cuantizati �In locul integrarii se poate folosi sumarea (de fapt, DFT) dupa relatia
Masuri de aprecire obiectiva a distorsiunilor �Alta masura este distanta euclidiana ponderata � Se evalueaza in raport cu reprezentarea LSF, intrucat acestia au o buna legatura cu forma spectrala, adica formantii, si cu vaile � Daca f si sunt doi vectori, original si codata LSF, atunci distanta euclidiana este iar in cazul unei analize de ordinul p se obtine
Masuri de aprecire obiectiva a distorsiunilor �Daca wi este ponderea asignata componentei spectrale i a LSF (care componente necorelate), atunci distanta euclidiana ponderata este �Calculul ponderilor se face dupa urmatoarele considerente: � ponderea formantilor este mult mai mare decat a vailor; � urechea umana distinge mai usor diferentele frecventelor joase decat cele inalte; ca atare frecventele joase trebuie ponderate mai mult
Referinte � (Tamanna, 2000) Tamanna Islam, Interpolation of Linear Prediction Coefficients for Speech Coding, MS Thesis, Department of Electrical Engineering, Mc. Gill University, Montreal, Canada, April 2000 � (Arons, 1995) Barry Arons, Techniques, Perception, and Applications of Time- Compressed Speech Research Group, MIT Media Lab, 20 Ames Street, E 15353, Cambridge MA 2139, � (Tamanna, 2000) Tamanna Islam, Interpolation of Linear Prediction Coefficients for Speech Coding, MS Thesis, Department of Electrical Engineering, Mc. Gill University, Montreal, Canada, April 2000. � Thomas Sikora, MPEG Digital Audio Coding, IEEE Signal Processing Magazine, September 1997, pp. 58 -81. � Brandenburg, H. And Popp, H. , An Introduction to MPEG Layer-3, Franhofer Institut fur Integrierte Schaltungen (IIS), EBU Technical Teview- June 2000, pp. 1 -15. � Brandenburg Karlheinz, MP 3 And AAC Explained, MP 3 And Aac Explained, AES 17 th International Conference On High Quality Audio Coding, 2000.
- Slides: 82