You are on page 1of 11

Rehaussement d’un signal de parole

Par :
Kakchantichie Fabrice
Diop Cheikh
15 janvier 2014
Table des matières
1 Filtrage selectif :filtre à encoche 1
1.1 Bruitage du signal . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Débruitage du signal . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Atténuation spectrale 3
2.1 Méthode de la soustraction spectrale . . . . . . . . . . . . . . . . 4
2.2 Mise en pratique de la soustraction spectrale . . . . . . . . . . . 5

3 Bonus 1 :Interface graphique 8

4 Bilan de l’organisation et déroulement du projet 9

Introduction
La parole est l’un des moyens de communications le plus usité chez les hu-
mains. D’où l’importance de la maı̂triser afin de pouvoir la transmettre sous
forme d’un signal, la stocker de la manière la plus optimale possible.Le signal
de parole dont on dispose est trés souvent dégradé par un bruit généralement
aléatoire lié soit à l’environnement, soit à l’électronique de la chaı̂ne de réception.
L’objectif de ce projet est donc d’atténuer au maximum ce bruit.Pour celà deux
méthodes vont être mises en place :

– soit le bruit est connu et dans ce cas on élabore un filtre propre au bruit,

– soit le bruit est aléatoire et dans ce cas on utilise la méthode d’atténuation


spectrale.
Dans la suite du rapport nous allons donc traiter d’une part le filtrage sélectif,
avec les filtres à encoche et d’autre part la méthode de la soustraction spectrale.

1 Filtrage selectif :filtre à encoche


Dans cette partie, on dispose d’un signal de parole échantillonné à la fréquence
fe (Figure 1). La parole garde une qualité suffisante lorsque son spectre est li-
mité à 3.4kHz.Cela explique le fait qu’on échantillonne le signal de parole à la
fréquence fe = 8kHz pour respecter le théoréme de Shanon.

1.1 Bruitage du signal


Le signal de parole est bruité en lui ajoutant un sinusoide à la fréquence
f0 = 3kHz (Figure 2), de la forme b(k) = A. cos(2.π.f0 .k).Le bruitage se fait de
telle sorte que le rapport signal sur bruit (RSB) soit de 15 dB. L’amplitude du
bruit A est déterminé à partir du RSB.(voir annexe)
La représentation temporelle du signal original montre qu’il existe des ins-
tants de silence dans le signal de parole, instants de silence qui vont nous
permettre d’estimer le bruit si nécessaire. Le spectrogramme du signal bruité
montre le spectre du bruit additif (ligne rouge sur le spectrogramme) à la
fréquence f0 = 3kHz qui couvre toute la durée du signal de parole.

1
Figure 1 – Signal de parole Figure 2 – Signal bruité

1.2 Débruitage du signal


Le bruit étant connu, on a élaboré un filtre sélectif et plus précisément un
filtre à encoche. Le filtre à encoche est un filtre coupe-bande qui nous permettra
de rejetter la fréquence du bruit.Pour designer un tel filtre, il faut bien définir
ses pôles et ses zéros. La fonction de transfert s’écrit sous la forme :H(z) = N (z)
D(z) .
Nous sommes donc partis du principe que :

– la fonction de transfert doit s’annuler à la fréquence du sinusoide, donc


f0 −1 f0
N (z) = (1 − exp(i2π ).z ).(1 − exp(−i2π ).z −1 ) (1)
fe fe

f0 −1 f0
D(z) = (1 − r. exp(i2π ).z ).(1 − r. exp(−i2π ).z −1 ) (2)
fe fe
avec 0 < r ≤ 1. r désigne ici l’amplitude des deux pôles et permet d’agir
sur la sélectivité du filtre.
Donc :

(1 − exp(i2π ff0e ).z −1 ).(1 − exp(−i2π ff0e ).z −1 )


H(z) =
(1 − r. exp(i2π ff0e ).z −1 ).(1 − r. exp(−i2π ff0e ).z −1 )
(3)
1 − 2 ∗ cos(2π ff0e )z −1 + z −2
=
1 − 2r cos(2π ff0e )z −1 + r−2 z −2

Une fois le filtre élaboré, on l’applique à notre signal bruité, avec la fonc-
tion filter sur matlab (Figure 4). Le spectrogramme du signal débruité montre
qu’aprés filtrage, le bruit a été en grande partie supprimé (disparition de la
ligne rouge). Cependant on note toujours la présence de bruit résiduel, mais
d’amplitude plus faible que le bruit d’origine (traces de couleur bleue à 3 kHz
sur le spectrogramme). Pour mesurer l’efficacité du filtre, nous avons calculé le

2
Figure 3 – Signal bruité Figure 4 – Signal filtré

gain en RSB qui est la différence entre le RSB en entrée et celui en sortie. Plus
le gain est grand, plus le filtrage est efficace.
L’écoute du signal de parole original et celui débruité, permet aussi de mesurer
l’efficacité du débruitage, mais cela n’a pas été retenu car étant plutôt un critére
subjectif, dépendant de la personne qui écoute.

r 0.5 0.7 0.85 0.95


Gain RSB -8 -4.5 0.7 9
-

Table 1 – Evolution du gain en fonction de r

Le tableau Table 1 montre que le gain augmente parallélement à r. Donc


l’amplitude des pôles impacte sur la sélectivité du filtre. Plus l’amplitude des
pôles tend vers 1, plus le filtre est sélectif.
Il est à noter qu’aprés filtrage avec le filtre à encoche, on ne retrouve pas exac-
tement le signal de parole original mais un signal approchant où le bruit a été
atténué.
Cependant en général, le signal de parole est perturbé par un bruit aléatoire.
Dans ce cas, d’autres méthodes telle que l’atténuation spectrale sont mises en
oeuvre.

2 Atténuation spectrale
La méthode d’atténuation spectrale est basée sur l’estimation du bruit. En
effet, le débruitage d’un signal perturbé par un bruit, thermique dû aux com-
posants électroniques, passe nécessairement par la connaissance des paramétres
du bruit. Dans un signal de parole, les instants de silence sont propices pour
estimer le bruit.La méthode d’atténuation spectrale passe par 3 étape :

3
– le découpage en trames du signal

– l’application d’une régle de suppression du bruit

– reconstruction du signal avec la méthode d’addition recouvrement.

Dans le cadre du traitement de parole, plusieurs méthodes sont basées sur


l’atténuation spectrale.L’une d’elle est la soustraction spectrale qui est utilisée
dans le cadre du projet.

2.1 Méthode de la soustraction spectrale


La soustraction spectrale est une méthode basée sur l’estimation du signal
original à partir du signal bruité et de l’estimation du bruit. L’objectif ici est
de soustraire le bruit au signal bruité dans le domaine fréquentiel. Cela passe
nécessairement par l’utilisation de la transformée de Fourier pour passer dans
le domaine fréquentiel.
La transformée de fourier n’a de sens que pour les signaux stationnaires.Or le
signal de parole n’est stationnaire que sur un laps de temps compris entre 20 et
40ms. D’où la nécessité de découper le signal de parole en trames de courte durée
de telle sorte qu’elles soient stationnaires.Ce découpage passe nécessairement par
un fenêtrage du signal bruité.
Dans le cadre du projet, on a opté pour la fenêtre de Hamming. En effe, l’utilisa-
tion de la fenêtre de Hamming est justifiée par la volonté d’adoucir les transitions
au niveau du signal, ce que n’offre pas une fenêtre rectangulaire qui présente des
discontinuités trés fortes.Une fois le découpage en trames effectué, on applique
la méthode de la soustraction spectrale sur chaque trame. Soit y le signal bruité,
s le signal de parole original et b le bruit additif.La kème trame vérifie :
yw (k) = sw (k) + bw (k) (4)
La seconde étape fait appel à la régle de suppression de bruit, par le biais de
la soustraction spectrale.L’objectif ici est de mettre à profit le fait que le signal
de parole et le bruit soient décorrélés pour réduire le bruit dans le domaine
spectrale :
|Ŝw (f )|2 = |Yw (f )|2 − E(|B(f )|2 ) (5)
Cependant vu qu’on a pas de contrôle sur le bruit additionnel, |Ŝw (f )|2 n’est pas
assurée d’être positive. Donc il faut mettre à zero toutes les valeurs négatives
en effectuant :
(
|Yw (f )|2 − E(|B(f )|2 ) si|Yw (f )|2 ≥ E(|B(f )|2 )
|Ŝw (f )|2 = (6)
0 si|Yw (f )|2 ≤ E(|B(f )|2 )
En vue d’obtenir l’estimation temporel associé à une trame, on doit définir la
valeur de la phase φs(f ). Vu que la déduction de cette phase à partir du signal
de parole est ardue, on utilise la valeur de la phase du signal bruité φy(f ).
Ŝw (f ) = [|Yw (f )|2 − E|B(f )|2 )]1/2 .ejφy (f ) (7)
L’estimation du signal de parole pondérée se déduit de la transformée de
Fourier inverse de Ŝw (f ) :
ŝw (k) = F −1 [|Yw (f )|2 − E|B(f )|2 )]1/2 .ejφy (f ) (8)

4
Dans ce qui suit, nous allons mettre en pratique la méthode de la soustraction
spectrale.

2.2 Mise en pratique de la soustraction spectrale


La chaı̂ne de traitement à partir de la méthode de soustraction spectrale suit
le principe du schéma suivant :

Figure 5 – Schéma de principe de rehaussement de parole

La première étape qu’on a eu à effectuer est de bruité un signal de parole


avec un bruit blanc gaussien à différents RSB :5 dB, 10 dB et 15 dB. Ce bruitage
s’effectue sur matlab avec la fonction r andn. En effet connaissant le RSB, on
peut facilement déterminer la variance du bruit et ainsi le générer (voir annexe).

Figure 6 – Signal original Figure 7 – Signal bruité à 15 dB

5
Figure 9 – Signal bruité à 10 dB
Figure 8 – Signal original

Figure 10 – Signal original Figure 11 – Signal bruité à 5 dB

Les spectrogrammes des signaux bruités à différents RSB montrent que :

– le bruit est éparpillé sur diverses fréquences, ce qui fait qu’il est impossible
d’élaborer un filtre pour supprimer le bruit. En effet un filtre permet de
faire passer ou rejeter une bande de fréquences donnée, or le bruit n’est pas
localisé sur une bande de fréquences précise mais sur toutes les fréquences.

– plus le RSB est grand, plus le signal original est dégradé, donc plus difficile
à reconstruire.
Le signal bruité est ensuite découpé en trames, afin d’avoir des segments
de signal stationnaires. Ce découpage équivaut à un fenêtrage de Hamming.Il
est fait avec un recouvrement de 50%. Ainsi on dispose de deux estimations du
signal bruité sauf pour les extrêmités du signal où on ne dispose que d’une seule
estimation. En effet, cela permet une meilleur reconstruction du signal de parole
car en disposant de deux estimations du signal fenêtré pour chaque échantillon,
on obtient une meilleur estimation du signal de parole.
Le découpage en trames nécessite souvent de faire du zero padding pour que
toutes les trames aient la même longueur. Ce zero padding est fait en fin de

6
signal pour éviter le déphasage du signal en le faisant au début du signal.
Une fois le découpage en trames effectué, on ffait un traitement trame par trame,
en appliquant à chaque trame la méthode de la soustraction spectrale décrite
plus haut.

Figure 12 – Représentation temporelle d’une trame à 15 dB

Figure 13 – Représentation temporelle d’une trame à 10 dB

7
Figure 14 – Représentation temporelle d’une trame à 5 dB

Figure 15 – Représentation spectrale d’une trame à 15 dB

L’effet du bruit est remarquable sur les trames. En effet le découpage en


trames du signal n’a pas eu d’effet sur le bruit. Aprés rehaussemetn, la trame
obtenu est proche de la trame originale même si elles ne se superposent pas.

3 Bonus 1 :Interface graphique


Pour facilter l’exploitation de notre projet à un non-initié en matlab et lui
permettre de faire abstraction du code, nous avons mis en place une interface
graphique.Elle a été réalisé avec l’objet GUI de matlab.Elle a été ainsi simple

8
à mettre en oeuvre.Notre interface présente cependant un probléme : la valeur
du RSB ne peut être changé.

Figure 16 – Image interface representant le signal original à 5 dB

Pour lancer l’interface graphique, il suffit de lancer le script ”simple GUI.m”.

4 Bilan de l’organisation et déroulement du projet


Au cours du projet, on a décider de travailler en commun pour mieux com-
prendre toutes les étapes du projet.Nous avons travaillé le projet aussi bien
pendant les séances qu’hors séances pour essayer d’explorer tous les points du
projet, même si on est pas arrivé à terme. Le tableau suivant représente le temps
passé sur chaque partie du projet.

9
Travail réalisé Temps consacré Commentaires
Lecture et compréhension de Cette partie a été l’occassion de
l’objet du projet 1h en séance bien cerner les points capitaux
du projet et de voir le travail
qu’il y avait à faire.
Introduction au filtrage selec- Cette partie nous a permit
tif :filtre à encoche 3h en séance de mettre en oeuvre un filtre
2h hors seance pour agir sur sur un bruit
additif dont on connaissait la
fréquence. Elle n’a pas présenté
de réelles difficultés dans l’en-
semble et a été facile à mettre
en place.
Méthode atténuation spectrale Cette partie a été la plus difficile
8h en seance à mettre en oeuvre.En effet, elle
5h hors seance nécessité une rigueur parfaite et
des vérifications de la justesse
de nos résultats à chaque étape,
surtout lors du découpage en
trames et de la reconstruction
des trames.
Interface graphique La mise en oeuvre d’une inter-
2h hors séance face est simple avec l’outil GUI
de matlab.

Table 2 – Bilan de l’organisation et déroulement du projet

Conclusion
Ce projet nous a permit de mettre en pratique nos connaissances théoriques
sur les notions de filtrage, de transformée Fourier.... Il nous a apporté la ri-
gueur que nécessite la manipulation d’algorithme tel que la soustraction spec-
trale.Cependant nous arions pu exploité d’autres méthodes de débruitages de
signal tel que la décomposition du en sous-espaces orthogonaux du signal et du
bruit.Cela nous aurait permis de manipuler des notions telles que la transformée
de Fourier vu en première année.

10

You might also like