1 / 66

Cours parole du 26 Janvier 2005 enseignants: Dr. Dijana Petrovska-Delacrétaz et Gérard Chollet

Cours parole du 26 Janvier 2005 enseignants: Dr. Dijana Petrovska-Delacrétaz et Gérard Chollet. Analyse et Codage de la parole: de la représentation des signaux parole vers la reconnaissance automatique 1. Codage intro 2. Discrétisation temporelle Discrétisation de l’amplitude

winifred
Download Presentation

Cours parole du 26 Janvier 2005 enseignants: Dr. Dijana Petrovska-Delacrétaz et Gérard Chollet

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cours parole du 26 Janvier 2005enseignants: Dr. Dijana Petrovska-Delacrétazet Gérard Chollet Analyse et Codage de la parole: de la représentation des signaux parole vers la reconnaissance automatique 1. Codage intro 2. Discrétisation temporelle • Discrétisation de l’amplitude • Quantification vectorielle • Codeurs temporels • Typologie des codeurs • Modélisation de la parole par la Linear Predictive Coding (LPC ) • Débit des codeur et qualité

  2. 1. Codage des signaux parole • codage = processus qui transforme les signaux acoustiques analogiques ("waveform" - onde de pression) dans une séquences de signaux discrets, ayant comme objectif principal la réduction du débit et une représentation du signal plus compacte • Utilité pour la transmission: • réduction du débit (téléphones portables, stockage de signaux audio, transmission sur IP…) • meilleure robustesse des signaux codées aux erreurs de transmission • permet aussi l'utilisation des codes correcteurs d'erreur • et aussi de l'encryptage, multiplexage, empaquetage ("packetize") • Utilité pour la paramétrisation (extraction de paramètres pertinents ou vecteurs paramétriques; « feature vectors ») = vecteurs d’entrée des systèmes de reconnaissance de la parole • Unité utilisé: • bps = bits / seconde

  3. 1.1 Quelles sont les limites • Codage haut débit: • ex: échantillonnage fréquent • 24’000 ech/s • avec 8 bits par ech = 192’000 bps • Codeurs GSM de téléphonie mobile env. 8’000 bps • Codage à très-bas débit (basé sur la reco et la synthèse) • reco automatique de la parole au nivéau phonétique • 32 phonèmes du français, 32 mots codes (représentés par 25 ) 5 bits • débit phonétique moyen = 10 phonèmes /s = 5x10 = 50 bps • aujourd’hui débit plus bas, qualité mauvaise mais compréhensible: 600 bps en dépendant du locuteur • taux de compression = 192’000 / 600 = 320

  4. 2. Discrétisation temporelle T (période d’echantillonage) signal original x(t) signal numérique mesureacquisition { Xn = x(nT) } Figure: acquisition d’un signal numérique

  5. 2.1 Echantillonnage • Codage le plus simple = échantillonage = prélever (à des intervalles réguliers) des echantillons du signal analogique (continu)

  6. 2.2 Fréquence d’échantillonage • !! les intervalles de “prèlevement” du signal doivent être suffisamment raprochés pour “suivre” les variations du signal

  7. 2.3 Théorème de Shannon • Les signaux doivent être échantillonnés à une fréquence fe> 2 fmax du signal • Ceci va nous permettre de reconstituer plus ou moins fidèlement du signal continu à partir du signal échantillonné, (p.ex. qualité Hi-Fi, communications téléphonique, ….)

  8. 2.4 Etendue spectrales des signaux parole • Etendue spectrale des signaux de parole: 20-12’000 Hz • L’oreille humaine normale peut capter des signaux acoustique entre 20 et 20’000 Hz. • Transmission parole téléphonique: 300-3’400 Hz (bonne compréhension du langage parlé) • L’oreille a des caractéristiques perceptives spécifiques => psychoacoustique

  9. Le champ auditif humain

  10. 2.5 Exemples d’echantillonage

  11. 3. Discrétisation de l’amplitude (quantification) • La représentation numérique d'un signal implique la quantification de chaque échantillon selon un nombre fini de valeurs discrètes • Quantification la plus simple = la quantification scalaire = segmenter l'étendue de variation du signal • Le nombre de segments est égal au nombre de mot-codes ("codewords") que l'on veut utiliser. Avec B bits, on peut représenter 2B mots-codes utilisés pour les niveaux de quantification. Chaque mot-code représente un niveau de quantification du signal

  12. 3.1 Types de quantificateurs: scalaire ou vectorielle • Quantification uniforme (linéaire) pas de quantification constant • Quantification non-uniforme • loi de compression • A (A-law) • mu (mu”law”) • Quantification vectorielle (pour des signaux de dim >1)

  13. 3.2 Quantification scalaire: Définitions • x(t) = signal analogique de valeur absolue maximale Xmax • x[n] = signal échantillonné (digitalisé) • Q = opérateur de quantification ; y = Q(x) • y[n] = signal quantifié (codé) , • y[n] = yi = Q (x[n] ) avec xi-1 < x[n] ≤ xi • erreur de codage e[n] = x[n] -y[n] • on suppose que | x[n] | =<Xmax • pas de quantification = di = xi - xi-1 • on aimerait quantifier l’amplitude du signal avec M niveaux de quantification • 1 ≤ i ≤ M et xi =M+1 niveaux de décisions possible (0 ≤ i ≤ M)

  14. 3.3 Schéma fonctionnel du codage-décodage par quantification scalaire x(t) x[n] y[n] ConvertisseurA/D Quantificateurscalaire Q Encodage c[n] c'[n] y'[n] Décodage

  15. 3.4 Bruits (erreurs) de quantification • distorsion de granularité • on a y[n] = x[n] + e[n] , si pas de quantification =D • alors -D/2 =< e[n] =< D/2 • Distortion de saturation : lorsque les valeurs de x(t) > Xmax

  16. 3.5 Quantification scalaire uniforme • niveau de décision • xi - xi-1 = D , 1 ≤ i ≤ M • et de reconstruction espacées de manière uniforme • y[n] = yi = Q (x[n] ) avec xi-1 < x[n] ≤ xi devient: • y[n] = (xi + xi-1)/2 1 ≤ i ≤ M

  17. 3.6 Ex de quantification scalaire uniforme y[n] 11 7/8 10 5/8 01 3/8 00 1/8 x[n] x4=1 x3=3/4 x2=1/2 x0=0 x1=1/4 • quantification uniforme: les niveaux de l’amplitude signal [0-1], 4 niveaux de reconstruction espacées régulièrement,

  18. 3.7 Quantification non-linéaire • Distribution des niveaux de quantification pour une loi de quantification non-linéaire avec des niveaux de quantification en 3-bit

  19. 3.8 Quantification adaptée au signal parole p(x) x • Si transmission de parole, on doit adapter la quantification à la nature statistique du signal à coder. • La fonction de distribution de probabilité (pdf) du signal parole est le mieux adaptée par une distribution de Laplace . • On va adapter le pas de quantification à cette distribution, de façon a avoir plus de résolution dans les portions ou le signal a le plus de chance d'être présent

  20. Loi A

  21. Loi « mu » Échantillonnage à 8kHz quantification sur 8 bits Réduire la dynamique Loi « mu »

  22. 3.9 Application de la quantification scalaire aux codeurs temporels • On va utiliser les principes de la quantification scalaire pour les codeurs temporels. • Le taux de compression dépend de la • frequence d'echantillonage, et • du nombre de pas de quantification L= c. • Valeur du débit = nombre d'ech x nbre d'echelons • Examples: • Si on code 124 (256) valeurs, on a besoin de 7 (8) bits • 8000 x 7bits/s = 56 Kbits/s (en Amérique du Nord et Japon) • 8000 x 8bits/s = 64 Kbits/s (en Europe)

  23. 4. Codeurs temporels ("waveform") • Schéma fonctionnel du codage-décodage (codec) pour les codeurs temporels (voir 3.3) • Quantification scalaire uniforme= Pulse Code Modulation (PCM) • Examples de quantification scalaire non unforme, on utilise une loi de compression pour les pas de quantification semi-logarithmique • exemples: A-law and mu-law

  24. Codage MICDA (ADPCM) Codage par modulation delta pour les débits de 16à 32 kBits/s Quantification de la différence entre le signal et sa prédiction Analyse + _ Transmission Synthèse

  25. 5. Quantification Vectorielle • Représentation d’un vecteur X (dim-k) par un vecteur appartenenant à un ensemble fini de M vecteurs ( ou mot-codes, code-book, ou dictionnaire) • La Quantification vectorielle (“Vector Quantization”=VQ) est organisée de façon à minimiser la distortion moyenne pour un dictionnaire de taille M donné. Elle permet de tirer parti de la corrélation qui existe souvent entre les composantes des vecters à coder.

  26. 5.1 Caractéristiques de la VQ • statique: on construit un dictionnaire (dico) à partir des données représentatives du signal • dynamique: on adapte le dico avec des nouvelles données (plus complexe à mettre en oeuvre) • QV statique on a besoin: • suffisamment de données representatives du signal yd (d= dim du signal) • dico défini par des representants, centroides Cd (meme dim que signal) • définition d’une mesure de distance (ex. dist euclidienne) • Distortion moyenne D= lim Somme (dist y-C)

  27. 5.2 k-means algo • On défini un codebook de départ, avec M celules Ci • et leur centroides respectifs Ci qui minimisent la distortion dans la cellule). • etape1: Definir un codebook initial avec M partitions (cellules Mi) et leur centroide representatif Ci • etape2. Classification des vecters de “train” dans la celule Mi en choissisant le centroide le plus proche (min-distance classifier) • etape3: réactualiser le codebook: à cette étape on aura un ensemble de Ki vecteurs de train qui vont appartenir à la cellule Mi. Réactualisé de codeword de chaque cellule, en calculant le centroide des vecterus Ki qui minimise la distortion dans chaque cellule d= min d(k,c); Calculer la distortion totale • Itération: répeter 2 et 3 jusqu’a que la distortion totale actuelle par rapport à la précédente est au dessus du seuil-

  28. 5.3 k-means avec “binary splitting” • Initialisation: On commence avec le centre de gravite des vecteurs de train, une seule cellule de départ. • on crée deux celules voisines …..

  29. Quantification scalaire et vectorielle

  30. 6. Catégorisation des codeurs selon leur débit • Catégorisation des codeurs selon leur débit • débit élevé: codeurs temporels -"waveform coders" (>16'000 bps) • débit moyen: codeurs hybrides, forme d'onde +modéles de production de la parole (2'4000 -> 16'000 bps) • débit bas: codeurs paramétriques ou vocodeurs ("vocoders"), modèles de production, (1'200 ->4'800 bps) • débit très bas: (vo)codeurs segmentaux, reconnaissance de segments, tels que phonèmes, unités automatiques (400-1'200 bps) • On a vu les codeurs temporels et on va résumer les codeurs paramétrique par l'exemple de la LPC

  31. Principe d’une analyse acoustique

  32. Analyse de Fourier à fenêtre glissante

  33. Transformée de Fourier discrète

  34. Analyse par banc de filtres (1)

  35. Analyse par banc de filtres (2)

  36. Analyse par banc de filtres (3)

  37. Principe du codeur MP3 Filtrage des signaux dans différentes bandes de fréquences T.Cos et codage(huf) T. Cos et codage Emission des données T. Cos et codage T. Cos et codage T. Cos et codage Sélection des canaux utiles (effet de masquage 1er codage) T. Fourier

  38. Spectrogramme (bande large)

  39. Spectrogramme (large bande)

  40. Spectrogramme (bande etroite)

  41. Codeur par sous-bandes

  42. Analyse cepstrale (1)

  43. Analyse cepstrale (2)

  44. Analyse par synthèse

  45. 7. Analyse de la parole par prédiction linéaire La méthode LPC est utilisée fréquemment pour l'analyse de la parole (aussi nommé modélisation auto régressive AR) • méthode rapide et simple pour estimer les caractéristiques spectrales de la parole (estimation de l'enveloppe spectrale) • Hypothèse: un ech de parole peut être approximée par une combinaison linéaire des échantillons précédents. • s(n) = - ( a1s(n-1) +a2s(n-2) +….+ aps(n-p)) + e(n) • les coeff ai sont supposés être constants durant la fenêtre d’analyse.

  46. e(t) s(t) Filtre de prédiction linéaire Analyse par prédiction linéaire (1) Modélisation de la parole sous forme d’un filtre de prédiction linéaire

  47. Analyse par prédiction linéaire (2) - Calcul de 11 coefficients de corrélation sur une portion de 25 ms (200 échantillons) - Application de l ’algorithme de Levinson pour obtenir les coefficients du filtre récursif (sous la forme d ’un filtre en treillis) - Transmission des coefficients et du signal résiduel (erreur de prédiction) au récepteur qui en déduit la synthèse du signal

  48. Equations de Yule-Walker

  49. Algorithme de Levinson-Durbin

  50. Analyse par prédiction linéaire (3)

More Related