Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

61
Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole

Transcript of Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

Page 1: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

Hervé BOEGLENLicence ISVDE

Numérisation et codage de l’informationCodage de la parole

Page 2: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

2/61

Plan

1. Notions de base2. Théorie de l’information3. Quantification4. Codage de la parole

Qu’est-ce que la parole ?Modélisation LPCCodeurs en forme d’onde et par analyse et

synthèse (ABS)Standards

Page 3: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

3/61

1. Notions de base

Le traitement numérique du signal (TNS) :

Page 4: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

4/61

1. Notions de base

Description d’un système numérique :Dans le domaine temporel par une équation aux

différences, par exemple :

y[n] = b0x[n]+b1x[n-1]+a1y[n-1]

Dans le domaine de la transformée en z, par une fonction de transfert, par exemple :

22

11

22

110

1)(

zaza

zbzbbzH

Page 5: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

5/61

1. Notions de base

La transformée en z est la transformée de Fourier d’un signal échantillonné :

C’est un outil incontournable pour l’étude des signaux numérisés. En pratique, on utilise une table de transformées.

0

][n

nznxzX

Page 6: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

6/61

1. Notions de base

Les opérations de base du TNS :Le filtrage : il existe deux types de filtres numériques :

• Les filtres FIR (Finite Impulse Response) qui sont obtenus en échantillonnant la réponse impulsionnelle du filtre que l’on souhaite obtenir. On a la forme suivante :

Ils sont simples à mettre en œuvre et possèdent une phase linéaire

1

0

)(M

k

kk zbzH

Page 7: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

7/61

1. Notions de base

• Les filtres IIR (Infinite Impulse Response) qui sont obtenus à partir des fonctions analogiques (passage de s à z). La fonction de transfert possède la forme suivante :

• Les filtres adaptatifs dont les coefficients sont mis à jour régulièrement en minimisant un critère (moindres carrés). Ils peuvent être de type FIR ou IIR.

1

11

1

00

1)( N

k

k

M

n

n

za

zbzH

Page 8: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

8/61

1. Notions de base

Page 9: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

9/61

1. Notions de base

La transformée de Fourier discrète :

• En pratique cette somme est calculée en utilisant des algorithmes rapides et on parle de FFT (Fast Fourier Transform) (cf. fonction fft dans Matlab).

10][)(1

0

/2

NkenxkXN

n

Nknj

La corrélation : exprime la notion de similitude entre deux signaux. On distingue :

Page 10: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

10/61

1. Notions de base

• L’intercorrélation :

• L’autocorrélation :

Remarque : rxx[0] = Ex

n

xy lnxnylr ][][][

n

xx lnxnxlr ][][][

Page 11: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

11/61

1. Notions de base

Notions de signaux aléatoires :Les signaux seront considérés comme

stationnaires et ergodiques :• Stationnarité les moments statistiques (moyenne,

variance) ne dépendent pas du temps.

• Ergodicité on peut confondre les moments statistiques et les moments temporels (moyenne temporelle, puissance).

Page 12: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

12/61

1. Notions de base

Lois usuelles :• Loi uniforme sur (a,b) :

sinon0

),(pour1

)( baxabxpX

Page 13: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

13/61

1. Notions de base

• Loi Gaussienne :

2

2

2exp

2

1)(

mx

xpX

Page 14: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

14/61

1. Notions de base

• Loi de Rayleigh :

02

exp)(2

2

2

x

xxxpX

Page 15: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

15/61

1. Notions de base

Rapport signal sur bruit (SNR) :

bruit

signaldB P

PSNR 10log10

Page 16: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

16/61

2. Théorie de l’information

Le système de transmission numérique tel que défini par Shannon en 1948 :

Page 17: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

17/61

2. Théorie de l’information

Définition de l’information :Soit une variable aléatoire discrète S qui peut

prendre les valeurs S ={s0, s1,…, sK-1} avec les probabilités P(S = sk) = pk avec k = 0,1,…, K-1, on définit la quantité d’information d’un symbole par :

I(sk) = -log2(pk) (bit)

Il est intéressant de connaître l’information moyenne produite pas une source = entropie.

Page 18: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

18/61

2. Théorie de l’information

1

0

1

02 )(log)()]([)(

K

k

K

kkkkkk ppsIpsIESH

Propriétés :

• 0 H(S) log2(K)

• H(S) = 0 si pk = 1 et les autres probabilités sont nulles aucune incertitude

• H(S) = log2(K) si pk = 1/K k incertitude maximale

Page 19: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

19/61

2. Théorie de l’information

Le théorème du codage de source :Si l’on associe un code à la source S de longueur moyenne :

On aura toujours :

On peut ainsi définir l’efficacité d’un code par :

1

0

K

kkk IpL

)(SHL

Page 20: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

20/61

2. Théorie de l’information

Exemple : l’afficheur 7 segments : L

SH )(

Les symboles sont équiprobables pk = 0.1

Entropie H(S) = 3.32 bitsRendement = 52.54%

Page 21: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

21/61

Compression de l’information :Les signaux physiques comprennent de

l’information redondante utilisation inutile du canal de transmission

On utilise un codage à longueur variable dont le principe consiste à assigner des descriptions longues aux symboles peu fréquents et des descriptions plus courtes aux symboles plus fréquents.

2. Théorie de l’information

Page 22: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

22/61

2. Théorie de l’information

Les codes préfixes : aucun mot du code n’est le préfixe d’un autre mot du code. Ils satisfont l’inégalité de Kraft-McMillan :

Leur longueur moyenne est bornée par :

Exemple :

121

0

K

k

lk

1)()( SHLSH

Symbole Probabilité Code I Code II Code III

s0 0.5 0 0 0

s1 0.25 1 10 01

s2 0.125 00 110 011

s3 0.125 11 111 0111

Page 23: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

23/61

2. Théorie de l’information

Le codage d’Huffmann :

Page 24: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

24/61

2. Théorie de l’information

Le codage LZW (WINZIP et Cie) dictionnaire construit dynamiquement :

Page 25: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

25/61

2. Théorie de l’information

Canal discret sans mémoire : C’est un modèle statistique comportant une entrée X et une

sortie Y qui est une version bruitée de X. Il est décrit par ses probabilités de transition :

p(yk|xj) = P(Y = yk|X = xj) j, k

111110

111110

010100

... JKJJ

K

K

xypxypxyp

xypxypxyp

xypxypxyp

P

Page 26: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

26/61

2. Théorie de l’information

Exemple : le canal binaire symétrique :

Page 27: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

27/61

2. Théorie de l’information

Différentes sortes d’entropies :Si l’on utilise les différentes probabilités à

notre disposition on peut définir les entropies suivantes :

Page 28: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

28/61

2. Théorie de l’information

n

iji

m

jji

n

iji

m

jji

m

jjj

n

iii

yxpyxpYXH

yxpyxpYXH

ypypYH

xpxpXH

12

1

12

1

12

12

),(log),(),(

log),(

)(log)()(

)(log)()(

Page 29: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

29/61

2. Théorie de l’information

H(X|Y) représente l’information perdue au cours de la transmission. On en déduit une nouvelle quantité appelée information mutuelle du canal :

Cette quantité représente l’information correctement transmise de la source vers le destinataire.

PropriétésPropriétés :• Symétrie : I(X ;Y) = I(Y ;X)• I(X ; Y) 0• I(X ; Y) = H(X) + H(Y) – H(X,Y)

n

i

m

j j

ijji yp

xypyxpYXHXHYXI

1 12 )(

log),()();(

Page 30: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

30/61

2. Théorie de l’information

Capacité :

Exemple : capacité du canal binaire symétrique

C = 1 + p.log2(p) +(1-p).log2(1-p)

);(max YXICix

p

Page 31: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

31/61

2. Théorie de l’information

Théorème du codage de canal :

Remarque : ce théorème ne donne aucune indication sur comment construire de bon codes.

Capacité du canal BBAG de puissance et BP limités :

cs T

C

T

SH

)(

B

C

N

E

B

C b

02 1log

Page 32: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

32/61

2. Théorie de l’information

Page 33: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

33/61

3. Quantification

Illustration :

Page 34: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

34/61

3. Quantification

Quantification uniforme :

Page 35: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

35/61

3. Quantification

Bruit de quantification :Si le signal à quantifier est compris entre (-mmax, mmax),

pour L niveaux on aura :

L’erreur de quantification Q est une variable aléatoire uniformément distribuée :

L

mmax2

autrement

qqfQ0

22

1)(

Page 36: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

36/61

3. Quantification

La variance de l’erreur est égale à :

Comme L = 2R, on obtient :

Finalement :

Exercice : calculer le SNR en dB si le signal à quantifier est une sinusoïde d’amplitude max = Am

12

22

Q

RQ m 22

max2 2

3

1

R

Q m

PPSNR 2

2max

22

3

Page 37: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

37/61

3. Quantification

Quantification non linéaire :

Page 38: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

38/61

3. Quantification

Comparaison SNR = f(Pin) quantification uniforme et non linéaire loi A, A = 87.6 :

Page 39: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

39/61

3. Quantification

Un exemple pratique : ITU-T G711 loi A :

11

)sgn()ln(1

)/ln(1

10)sgn(

)ln(1)(

max

maxmax

max

x

x

Ax

A

xxAx

Ax

xx

A

xA

xc

Page 40: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

40/61

3. Quantification

Companding (Compress Expand) :COmpresser DECompresser

b = 8 bit

SNR

Quantifier

)( enTx ][xQy )( eb nTy )( eDEC nTx

piano_c3 8 bit -1

8 bitbitB 16

)( enTx)( enTy )(8 enTy

)( erec nTx1/8

)(8 enTx

bitB 8

bitB 8

Amélioration du SNR :

Page 41: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

41/61

4. Codage de la parole

Le signal de parole : différents niveaux de description :Le niveau phonétique : étudie la façon dont le

signal est produit et perçu :• Appareil phonatoire

Page 42: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

42/61

4. Codage de la parole

• L’alphabet phonétique international :

Page 43: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

43/61

4. Codage de la parole

• Phonétique articulatoire :– Voyelles : degré d’ouverture du conduit vocal

– Consonnes : passage forcé de l’air

– Semi-voyelles (ié, oui) ou liquides (Long, Rond)

• Audition – Perception : l’appareil auditif :

Page 44: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

44/61

4. Codage de la parole

• Champ auditif [500Hz, 10KHz] :

I(dB) = 10log(I/I0) avec I0 = 10-12W.m2 (1KHz)

Page 45: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

45/61

4. Codage de la parole

• Courbes isosoniques et phénomène de masquage :

Page 46: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

46/61

4. Codage de la parole

Le niveau acoustique : on étudie le signal électrique associé :

Traits acoustiques : fréquence fondamentale, énergie et spectre. Chaque trait acoustique est lié à une grandeur perceptuelle (pitch, intensité et timbre)

Page 47: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

47/61

4. Codage de la parole

• Débits courants :

• Le signal vocal est caractérisé par une grande redondance. L’entropie H(X) = 4.73 bits pour les 37 phonèmes de la langue française. Si on prononce en moyenne 10 phonèmes/s 50bits/s

Page 48: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

48/61

4. Codage de la parole

• Audiogramme : amplitude du signal vocal en fonction du temps :

Page 49: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

49/61

4. Codage de la parole

On distingue des zones voisées et non voisées :

Page 50: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

50/61

4. Codage de la parole

• Transformée de Fourier à court terme (fenêtres de 30ms) :

• On observe des pics de résonance que l’on appelle les formants.

Page 51: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

51/61

4. Codage de la parole

• Fréquence fondamentale ou pitch :– De 70 à 250Hz chez les hommes

– De 150 à 400Hz chez les femmes

– De 200 à 600Hz chez les enfants

– Varie très peu à l’intérieur de la zone voisée

Page 52: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

52/61

4. Codage de la parole

• Spectrogramme : évolution temporelle du spectre à court terme :

Page 53: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

53/61

4. Codage de la parole

Modèle simplifié de production de la parole :

NV

V

Stochastic excitation

Periodical excitation

Speech

Spectrum shaping filter

f

Transfer function of the vocal tract

Voicing

Gain

Page 54: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

54/61

4. Codage de la parole

Modélisation LPC :• On peut montrer que H(z) du filtre qui modélise l’enveloppe

spectrale du signal de parole s’écrit :

• Les coefficients ai s’obtiennent par prédiction linéaire :

P

i

iiza

zAzH

1

1

1

)(

1)(

n

p

ii

nenxnxne

inxanx

)(min)(~)()(

)(~

2

1

Page 55: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

55/61

4. Codage de la parole

• La mise en équation donne les équations dites de Yule-Walker :

• La résolution se fait en utilisant des algorithmes récursif comme Levinson-Durbin.

Page 56: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

56/61

4. Codage de la parole

Exemple : le codeur NATO LPC10 : Speech

frame Linear Prediction

pitch/voicing

energy

mux

(ai)

E

excitation (600 bps)

Spectrum shaping filter

(1800 bps)

V/UV,F0

CODER

V/UV,F0

E (ai)

1/A(z) Gain

Synthetic speech

Decoder

Page 57: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

57/61

4. Codage de la parole

Les deux grandes familles de codeurs de la parole :Codeurs en forme d’onde qui éliminent la

corrélation entre échantillons en utilisant une prédiction linéaire et des quantificateurs adaptatifs 24 à 32 kbits/s

Codeurs ABS ou hybride (Analysis By Synthesis) combinent le meilleurs des techniques LPC et forme d’onde 6 à 16 kbit/s

Page 58: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

58/61

4. Codage de la parole

Standards :

Rate (Kbits/s) 1k 2k 4k 16k 32k 64k

Quality MOS

Production model

Hybrid coders Waveform coding

1

2

3

4

5 G711 (72)

G721 (84)

ST4209 (83)

G728 (92)

(90)

G729 (96)

ST4479 (93)

ST 4198

(87)

2400 HSX (96)

LPC 10 (83)

GSM (87)

1200 HSX

(97)

G723-1 (96)

0,5k

Langage model

8k

FS1016

Page 59: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

59/61

4. Codage de la parole

Standards ITU :UIT

StandardMethod Year

Bit rate in Kbps

Delay in msQuality

MOSComplexity

in MipsG711 PCM 1972 64 0.125 4.3 <<1

G721 ADPCM 1984 32 0,1254.1 at

32Kbps1.25

G723 1986 40-32-24G726 1988 40-32-24-16G727 1990 40-32-24-16G728 LD-CELP 1992 16 2.5 4.0 30G729 CS-ACELP 1994 8 30 3.9 25

G729a 1996 12

G723.1MP-MLQ ACELP

1995 6.3 5.3 75 3.9 24

Page 60: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

60/61

4. Codage de la parole

Standards ETSI :

Exercice : rechercher sur Internet les normes G726 (ITU-T) et GSM 06.10 (ETSI) et retrouver les éléments fondamentaux de ces standards.

Standard ETSI

europeMethod Year

Bit rate in Kbps

Delay in msQuality

MOSComplexity

in Mips

GSM RPE-LTP 1987 13 40 3.47 6TETRA ACELP 1994 4.567 67.5 12

GSM HR VSELP 1994 5.6 45 30EFR-GSM (identical

DCS)ACELP 1995 12.8 40 15

Page 61: Hervé BOEGLEN Licence ISVDE Numérisation et codage de l’information Codage de la parole.

61/61

4. Codage de la parole

Codeur en forme d’onde : ITU-T G726