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

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

Embed Size (px)

Citation preview

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