You are on page 1of 7

Travaux pratiques Traitement Numérique du signal

TP n°4 Filtrage Audio

Préambule

L’objectif de ce TP est la synthèse de filtres numériques permettant


l’élimination de composantes fréquentielles indésirables d’un signal audio. Dans un
premier temps, le travail sera réalisé sous Matlab, la seconde partie du TP sera
entièrement réalisée sous simulink.

Première partie

Le fichier filtrage_audio.m contient les lignes de code Matlab permettant le


chargement d’un signal audio de type .wav. Les données sont stockées dans le
tableau signal. La commande wavread renvoie également la fréquence
d’échantillonnage de ce signal. Dans le cas présente, Ts = 44100 Hz. Pour
mémoire, nous rappelons que la bande passante de l’oreille humaine est
[20Hz ;20KHz] dans le meilleur des cas.

• Dans le fichier TP4_TNS.m, afficher le signal temporel en fonction du


temps.

le signal audio contient un nombre important de données en raison


de la faible période d’échantillonnage, l’enregistrement audio étant
réalisé sur quelques secondes.

• Réaliser une TFD du signal afin d’en déterminer le contenu fréquentiel.


Pour mémoire, les TP n°1 et 2 ont été consacrés à la TFD et à certaines
techniques permettant d’affiner le calcul de la TFD.

• Le signal audio original a été perturbé par deux harmoniques très


caractéristiques. Déterminer spectralement la fréquence des signaux
perturbatoires.
• Synthétiser un filtre numérique permettant

o D’éliminer complètement les deux fréquences indésirables


o D’altérer au minimum les autres composantes fréquentielles
o D’assurer un gain statique unitaire

Pour créer une fonction de transfert échantillonnée, utilisez la fonction


tf(). Vous pouvez réaliser le filtre en z ou en z-1. Dans le premier cas, les
polynômes doivent contenir les coefficients des puissances
décroissantes en z. Dans le second cas, ils sont définis à partir des
coefficients des puissances croissantes en z-1.

• Afficher le diagramme pôles/zéros de votre filtre.

• Afficher le diagramme de Bode de filtre et vérifier qu’il réalise bien les


spécifications demandées.

• A l’aide de la fonction filter(), réaliser le filtrage du signal pour obtenir un


signal filtre appelé signal_filtre.

• A l’aide de la fonction sound(), envoyer le signal signal_filtre sur la carte


son pour estimer la qualité de votre filtrage.

• Refaire au besoin la synthèse du filtre jusqu’à obtention d’un signal


correct.

Seconde partie

Dans cette seconde partie, nous allons travailler uniquement sous l’environnement
Simulink. L’avantage réside dans la simplicité de mise en œuvre du filtre et du
filtrage du signal audio.

• Ouvrir le fichier TP4_TNS_NOTCH.mdl. Ce dernier contient


actuellement un bloc From Workspace qui permet de charger le jeu de
données de Matlab.
• Compléter le schéma Simulink avec votre filtre numérique. A cet effet, un
bloc fonction de transfert peut être utilisé, il se situe dans la bibliothèque
Control System Toolbox (voir figure 1)

Figure 1 : bloc LTI system

• Compléter le schéma simulink avec un bloc de calcul de la TFD et


superposer la TFD du signal original et du signal filtré. Ce bloc est situé
dans la bibliothèque Signal Processing blockset / Signal Processing Sinks
(voir figure 2).
Figure 2 Bloc TFD

Comme Sous Matlab, vous devez régler les paramètres de la TFD (voir
figure 3 et 4)

Figure 3 Paramètres de réglage de la TFD


Figure 4 Paramètres d’affichage de la TFD

• Compléter le schéma Simulink pour envoyer le signal filtré sur la carte son,
le bloc se situe dans la bibliothèque Signal Processing blockset / Signal
Processing Sinks.

• Exécuter le schéma Simulink et


o Vérifier la qualité du signal filtré
o Comparer les TFD des deux signaux sur l’oscillo associé. Conclusion.

Troisième partie

Nous allons maintenant travailler sur un nouveau signal parasité. Le signal audio
original est le même, les parasites ont changé de nature.

• Dans le fichier TP4_TNS.m, démasquer la troisième partie.

• Envoyer le signal sur la carte son. Sachant que la bande passante de la


parole est dans la gamme [300 Hz ;3400 Hz], les parasites sont – ils en
basses ou hautes fréquences par rapport au signal utile ?
• Afficher la TFD du signal. Le signal a été parasité dans une bande de
fréquence. Quelle est cette bande ?

• Le filtre de la première partie permet – il de filtrer ces parasites ?


Justifier

La synthèse du filtre va maintenant être réalisée sous simulink à l’aide de l’outil


FDATools. Il s’agit d’un outil de synthèse de filtres numériques, qui peut être
également utilisé sous Matlab.

• Ouvrir le fichier TP4_TNS_BRUIT_BANDE.mdl.

• Ajouter un bloc FDATools, provenant de la bibliothèque (voir figure 5).


FDATools est un outil d’aide à la synthèse de filtres numériques. La sortie
du bloc est constituée du signal filtré.

Figure 5 Envoi du signal sur la carte son

• A l’aide de l’outil de synthèse, réaliser un filtre permettant d’éliminer les


parasites en altérant au minimum les autres composantes
fréquentielles. Un exemple d’interfacage de cet outil est présenté en
figure 6

Figure 6 FDATools

L’ensemble des paramètres de réglage doivent être spécifiés, en l’occurrence

o La nature du filtre (Response Type)


o La méthode de Design
o L’ordre du filtre
o Les fréquences caractéristiques (fréquences de coupure)
o Les gains demandées dans la bande passante et dans la bande
d’atténuation

• Dans le TDATools, vérifier le comportement fréquentiel du filtre


synthétisé.

• Envoyer la sortie du bloc FDATools sur la carte son et écouter le signal


obtenu

• Refaire au besoin la synthèse du filtre jusqu’à obtention d’un signal


correct.

You might also like