You are on page 1of 66

Cours parole du 26 Janvier 2005 enseignants: Dr.

Dijana Petrovska-Delacrtaz et Grard Chollet

Analyse et Codage de la parole: de la reprsentation des signaux parole vers la reconnaissance automatique
1. 2. 3. 4. 5. 6. 7. 8. Codage intro Discrtisation temporelle Discrtisation de lamplitude Quantification vectorielle Codeurs temporels Typologie des codeurs Modlisation de la parole par la Linear Predictive Coding (LPC ) Dbit des codeur et qualit

1. Codage des signaux parole


codage = processus qui transforme les signaux acoustiques analogiques ("waveform" - onde de pression) dans une squences de signaux discrets, ayant comme objectif principal la rduction du dbit et une reprsentation du signal plus compacte Utilit pour la transmission:
rduction du dbit (tlphones portables, stockage de signaux audio, transmission sur IP) meilleure robustesse des signaux codes aux erreurs de transmission permet aussi l'utilisation des codes correcteurs d'erreur et aussi de l'encryptage, multiplexage, empaquetage ("packetize")

Utilit pour la paramtrisation (extraction de paramtres pertinents ou vecteurs paramtriques; feature vectors ) = vecteurs dentre des systmes de reconnaissance de la parole Unit utilis:
bps = bits / seconde
2

1.1 Quelles sont les limites


Codage haut dbit:
ex: chantillonnage frquent
24000 ech/s avec 8 bits par ech = 192000 bps

Codeurs GSM de tlphonie mobile env. 8000 bps Codage trs-bas dbit (bas sur la reco et la synthse)
reco automatique de la parole au nivau phontique 32 phonmes du franais, 32 mots codes (reprsents par 25 ) 5 bits dbit phontique moyen = 10 phonmes /s = 5x10 = 50 bps aujourdhui dbit plus bas, qualit mauvaise mais comprhensible: 600 bps en dpendant du locuteur taux de compression = 192000 / 600 = 320
3

2. Discrtisation temporelle

T (priode dechantillonage)

x(t)

signal original mesure acquisition Figure: acquisition dun signal numrique

signal numrique
{ Xn = x(nT) }

2.1 Echantillonnage
Codage le plus simple = chantillonage = prlever ( des intervalles rguliers) des echantillons du signal analogique (continu)

2.2 Frquence dchantillonage


!! les intervalles de prlevement du signal doivent tre suffisamment raprochs pour suivre les variations du signal

2.3 Thorme de Shannon

Les signaux doivent tre chantillonns une frquence fe> 2 fmax du signal

Ceci va nous permettre de reconstituer plus ou moins fidlement du signal continu partir du signal chantillonn, (p.ex. qualit Hi-Fi, communications tlphonique, .)
7

2.4 Etendue spectrales des signaux parole


Etendue spectrale des signaux de parole: 20-12000 Hz

Loreille humaine normale peut capter des signaux acoustique entre 20 et 20000 Hz. Transmission parole tlphonique: (bonne comprhension du langage parl) 300-3400 Hz

Loreille a des caractristiques perceptives spcifiques => psychoacoustique

Le champ auditif humain

2.5 Exemples dechantillonage

Largeur de bande de transmission

Dnomination

Echantillonnage= nombre dechantillons codes

Qualit perue

Dbits en bps avec 8bits par ech. 352000


192000 128000 64000

20 - 22'000 Hz hi-fi (CD)


20 - 12'000 20 - 8000 300 - 3'400 bande parole bande large bande tlphonique

44'100 Hz
24000 hz 16'000 Hz 8'000 Hz

pas de dgradation
pas de dgradation idem dgradation

10

3. Discrtisation de lamplitude (quantification)


La reprsentation numrique d'un signal implique la quantification de chaque chantillon selon un nombre fini de valeurs discrtes 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 reprsenter 2B mots-codes utiliss pour les niveaux de quantification. Chaque mot-code reprsente un niveau de quantification du signal

11

3.1 Types de quantificateurs: scalaire ou vectorielle


Quantification uniforme (linaire) pas de quantification constant Quantification non-uniforme
loi de compression
A (A-law) mu (mulaw)

Quantification vectorielle (pour des signaux de dim >1)

12

3.2 Quantification scalaire: Dfinitions


x(t) = signal analogique de valeur absolue maximale Xmax x[n] = signal chantillonn (digitalis) Q = oprateur 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 lamplitude du signal avec M niveaux de quantification 1 i M et xi =M+1 niveaux de dcisions possible (0 i M)

13

3.3 Schma fonctionnel du codage-dcodage par quantification scalaire

x(t) Convertisseur
A/D

x[n]

Quantificateur scalaire Q

y[n]

Encodage

c[n]

c'[n]

y'[n]
Dcodage

14

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

15

3.5 Quantification scalaire uniforme


niveau de dcision xi - xi-1 = D , 1 i M et de reconstruction espaces de manire uniforme
y[n] = yi = Q (x[n] ) avec xi-1 < x[n] xi devient: y[n] = (xi + xi-1)/2 1 i M

16

3.6 Ex de quantification scalaire uniforme


quantification uniforme: les niveaux de lamplitude signal [0-1], 4 niveaux de reconstruction espaces rgulirement,

y[n]
7/8 11 10 01

5/8
3/8 1/8

00 x[n]
17

3.7 Quantification non-linaire


Distribution des niveaux de quantification pour une loi de quantification nonlinaire avec des niveaux de quantification en 3-bit

18

3.8 Quantification adapte au signal parole


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 adapte par une distribution de Laplace .

p(x)

x
On va adapter le pas de quantification cette distribution, de faon a avoir plus de rsolution dans les portions ou le signal a le plus de chance d'tre prsent
19

Loi A

20

Loi mu
chantillonnage 8kHz quantification sur 8 bits

Rduire la dynamique
Loi mu
128

y Q[log2 (1 .x)]

yx

128 94.4 128 38.8 0 x128 72.4 128 128


21

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 dpend de la
frequence d'echantillonage, et du nombre de pas de quantification L= c. Valeur du dbit = 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 Amrique du Nord et Japon) 8000 x 8bits/s = 64 Kbits/s (en Europe)

22

4. Codeurs temporels ("waveform")


Schma fonctionnel du codage-dcodage (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

23

Codage MICDA (ADPCM)


Codage par modulation delta pour les dbits de 16 32 kBits/s
Quantification de la diffrence entre le signal et sa prdiction

Analyse

+ x(t ) _
q

(t )

b
k 1

k t k

x(t )
x(t ) t bk t k
Synthse
k 1 q

(t )

24

5. Quantification Vectorielle
Reprsentation dun 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 organise de faon minimiser la distortion moyenne pour un dictionnaire de taille M donn. Elle permet de tirer parti de la corrlation qui existe souvent entre les composantes des vecters coder.

25

5.1 Caractristiques de la VQ
statique: on construit un dictionnaire (dico) partir des donnes reprsentatives du signal dynamique: on adapte le dico avec des nouvelles donnes (plus complexe mettre en oeuvre) QV statique on a besoin: suffisamment de donnes representatives du signal yd (d= dim du signal) dico dfini par des representants, centroides Cd (meme dim que signal) dfinition dune mesure de distance (ex. dist euclidienne) Distortion moyenne D= lim Somme (dist y-C)
26

5.2 k-means algo


On dfini un codebook de dpart, 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: ractualiser le codebook: cette tape on aura un ensemble de Ki vecteurs de train qui vont appartenir la cellule Mi. Ractualis 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 Itration: rpeter 2 et 3 jusqua que la distortion totale actuelle par rapport la prcdente est au dessus du seuil27

5.3 k-means avec binary splitting


Initialisation: On commence avec le centre de gravite des vecteurs de train, une seule cellule de dpart. on cre deux celules voisines ..

28

Quantification scalaire et vectorielle

29

6. Catgorisation des codeurs selon leur dbit


Catgorisation des codeurs selon leur dbit
dbit lev: codeurs temporels -"waveform coders" (>16'000 bps) dbit moyen: codeurs hybrides, forme d'onde +modles de production de la parole (2'4000 -> 16'000 bps) dbit bas: codeurs paramtriques ou vocodeurs ("vocoders"), modles de production, (1'200 ->4'800 bps) dbit trs bas: (vo)codeurs segmentaux, reconnaissance de segments, tels que phonmes, units automatiques (400-1'200 bps)

On a vu les codeurs temporels et on va rsumer les codeurs paramtrique par l'exemple de la LPC

30

Principe dune analyse acoustique

31

Analyse de Fourier fentre glissante

32

Transforme de Fourier discrte

33

Analyse par banc de filtres (1)

34

Analyse par banc de filtres (2)

35

Analyse par banc de filtres (3)

36

Principe du codeur MP3


Filtrage des signaux dans diffrentes bandes de frquences T.Cos et codage(huf) T. Cos et codage T. Cos et codage T. Cos et codage T. Cos et codage

T. Fourier

Slection des canaux utiles (effet de masquage 1er codage)

37

Spectrogramme (bande large)

38

Spectrogramme (large bande)

39

Spectrogramme (bande etroite)

40

Codeur par sous-bandes

41

Analyse cepstrale (1)

42

Analyse cepstrale (2)

43

Analyse par synthse

44

7. Analyse de la parole par prdiction linaire


La mthode LPC est utilise frquemment pour l'analyse de la parole (aussi nomm modlisation auto rgressive AR) mthode rapide et simple pour estimer les caractristiques spectrales de la parole (estimation de l'enveloppe spectrale) Hypothse: un ech de parole peut tre approxime par une combinaison linaire des chantillons prcdents. s(n) = - ( a1s(n-1) +a2s(n-2) +.+ aps(n-p)) + e(n)

les coeff ai sont supposs tre constants durant la fentre danalyse.

45

Analyse par prdiction linaire (1)


Modlisation de la parole sous forme dun filtre de prdiction linaire

e(t)

Filtre de
prdiction linaire

s(t)

a s(t i) e(t )
i 0 i
46

Analyse par prdiction linaire (2)


- Calcul de 11 coefficients de corrlation sur une portion de 25 ms (200 chantillons)

rk x(t ) x(t k )
t 0

199

- Application de l algorithme de Levinson pour obtenir les coefficients du filtre rcursif

1 1 A( z ) 1 a (1) z 1 a (10) z 10
(sous la forme d un filtre en treillis) - Transmission des coefficients et du signal rsiduel (erreur de prdiction) au rcepteur qui en dduit la synthse du signal
47

Equations de Yule-Walker

48

Algorithme de Levinson-Durbin

49

Analyse par prdiction linaire (3)

50

Codage prdictif linaire (4)

51

Codage prdictif linaire (5)

52

Codage prdictif linaire (6)

53

Codage prdictif linaire (7)

54

Vocodeur LPC

55

Codeur CELP

56

Codeur CELP

57

Codeur CELP (low delay)

58

7.1 Domaine temporel et frquentiel des signaux


Lanalyse des signaux dans le domaine frquentiel se fait avec lopration de filtrage. Ex de filtres: passe bas, passe bande et passe haut Filtre: le signal dentre (fonction du temps) constitue lexcitation dune fonction de transfert (qui caractrise le filtre). La sortie du filtre constitue un sous-ensemble du signal dentre. Ex. principe de base du filtrage passe-bas avec un signal dentre s1+s2 constitu par la somme de deux sinusoides (freq fondamentale et frq harmonique, multiple de la freq fond). Passage de signal s travers la fonction de transfer H(w) , la freq harmonique est limine, et il ne reste que le signal fondamental

domaine temporel: f(t) -> h(t) -> y(t) = f(t) * h(t) (* convolution) fomaine frquentiel: (w= 2pi f) F(w) -> h(w) -> Y(w) = F(w) H(w)

59

7.2 Modles source-filtre pour des sons diffrents Sons voiss: train d'impulsion convolu par l'impulsion glottique Sons non voiss : bruit alatoire avec amplitude A Si on suppose que l'on sait spar les sons V/NV, et que le filtre change en fonction du voisement, on a la reprsentation suivante: pour une modle source-filtre des signaux V/NV Ce modle ne marche pas pour des fricatives. Dans ce cas on pourrait utiliser un modle d'excitation mixte, utilisant pour des sons voiss une somme du train d'impulsion et du bruit color Principe: la sortie du filtre d'analyse (filtre inverse court terme), qui est l'erreur de prdiction, est une image de l'excitation. Par consquent, si on excite le filtre de synthse par l'erreur de prdiction, on obtient comme parole synthtique la parole originale. Avec lanlyse Linear Predictive Coding on va dterminer les coefficient du filtre prdictif (= vecteur paramtrique LPC).

60

7.3 Proprites de l'analyse LPC

x[n]

Filtre inverse optimis

erreur de prdiction

u[n]
Filtre de synthse
Bruit blanc de variance unit

s[n]

61

8. Dbits des codeurs


Catgorisation des codeurs selon leur dbit
dbit lev: codeurs temporels -"waveform coders" (>16'000 bps) dbit moyen: codeurs hybrides, forme d'onde +modles de production de la parole (2'4000 -> 16'000 bps) dbit bas: codeurs paramtriques ou vocodeurs ("vocoders"), modles de production, (1'200 ->4'800 bps) dbit trs bas: (vo)codeurs segmentaux, reconnaissance de segments, tels que phonmes, units automatiques (400-1'200 bps)

Le dbit influence la qualit de la parole transmise :


intelligibilit naturelle identification du locuteur Evaluer par des test comparatifs (subjectifs) (comparer deux echantillons), MOS ("Mean Opinion Score") : valuation par une population de sujets non entrans, notes 1(mauvais) ->5 (excellent)

62

Dbits de codage
1.

Signal dans la bande tlphonique (fe = 8 kHz)


Rseau tlphonique classique
64 kbits/s : MIC (PCM, G.711) norme CCITT en 1972 32 kbits/s : MICDA (ADPCM, G.721) en 1984 16 kbits/s : LD CELP en 1991 13 kbits/s : GSM (norme europenne) en 1989 6.5 kbits/s : GSM (norme europenne) en 1991 8 kbits/s : norme nord-amricaine en 1991

Tlphones mobiles

Communications scurises pour les liaisons entre organismes intergouvernementaux, applications militaires (norme OTAN), communications satellitaires (MSAT et INMARSAT)
2.4 kbits/s : standard gouvernemental amricain LPC10

2. 3.

Signal en bande largie (fe = 16 kHz)


64 kbits/s : norme G.722 (2 codages ADPCM distincts pour 2 sous-bandes)

Signal Hi Fi (fe = 44.1 kHz)


700 kbits/s : codage sur un CD-ROM

63

8.1 volution de la qualit des codeurs

Indicative Quality (MOS ) 5 4 3 G.711 (64 kb/s) G.721 (32 kb/s)

G.728 (16 kb/s)

G.729 (8 kb/s)

Minimum qual . for High cost application Consumer quality Minimum qual . For low cost application

HSX (2,4 kb/s) LPC 10 (2,4 kb/s)

2 1

(.4 kb/s)

ALISP
Year

1970

1980

1990

2000

2010

64

8.2 Comment conserver la qualit en


diminuant le dbit

Exploiter les limites de laudition Utiliser le modle source-filtre de production de la parole Utiliser le concept de reconnaissance et de synthse avec ventuellement des modles de langage

65

8.3 Codeurs segmentaux


Permettent la plus grande rduction du dbit (<800bps), mais ncessitent des mthodes de reconnaissance des units segmentales. Rsultats similaires dans l'implmentation des systmes dpendant du locuteur. Comment pourrait-on encore rduire le dbit: en transmettant le texte reconnu, et en effectuant de la synthse partir du texte du cot du transmetteur.

66

You might also like