La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Cours S.S.I.I., 2009-10, séance 7 : Filtrer le signal audio numérique page 1 Filtrer le signal audio numérique Jean-Paul Stromboni, Polytech Nice Sophia,

Présentations similaires


Présentation au sujet: "Cours S.S.I.I., 2009-10, séance 7 : Filtrer le signal audio numérique page 1 Filtrer le signal audio numérique Jean-Paul Stromboni, Polytech Nice Sophia,"— Transcription de la présentation:

1 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 1 Filtrer le signal audio numérique Jean-Paul Stromboni, Polytech Nice Sophia, Dépt S.I, 3 ème année séance n°6, novembre 2009, durée : une heure, vidéoprojecteur Contenu de la séance : filtre, filtre numérique, filtre linéaire invariant dans le temps équation aux différences pour implémenter le filtre effet d'un filtre sur le spectre méthode pour construire les filtres désirés conception des filtres avec Matlab Le filtre ci-dessous est il causal?Donner la fonction de transfert de Que réalise le filtre ci-dessous ?Réponse impulsionnelle du filtre Ce filtre est RIF ou RII ?Quelle est la réponse harmonique du filtre ? Questions pour tester la compréhension du cours Travaux dirigés : des filtres avec Goldwave et MATLAB

2 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 2 Filtrer un signal audio, c'est agir sur l'information transportée par ce signal Pourquoi filtrer dans le cours S.S.I.I. ? Parce que pour compresser un signal audio, on sera amené à découper son spectre en bandes de fréquences, par filtrage Pour filtrer un signal audio numérique, l'ordinateur met en œuvre un filtre numérique programmé. Exemple de filtre numérique : x est le signal à filtrer (ou entrée du filtre) y n =x n -x n-1 est l'équation aux différences du filtre y est le signal filtré (sortie du filtre) ce filtre est Linéaire et Invariant dans le Temps (LIT, LTI en anglais) car sa relation d'entrée sortie (x n y n ) ne dépend pas de l'indice n (ou temps nTe) ne dépend pas des amplitudes des y n et x n. calculer y si x est appliqué à y n =y n-1 + x n-1 et que y 0 =0 : y = [0, 1, 2, 2, 2, 3, 3.5, 4.5] Les notions de filtre, de filtre numérique, de filtre linéaire et invariant dans le temps

3 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 3 Pour mettre en œuvre un filtre numérique, il faut programmer son équation aux différences (EaD) Forme générale de l'EaD d'un filtre L.I.T. où les coefficients b k et a j sont indépendants : des valeurs de y n-k et x n-j (linéarité, le L. de L.I.T.) des indices n (invariance dans le temps, le I.T.) N est lordre du filtre (M+N est la longueur) Un filtre est à réponse impulsionnelle finie, ou non récursif, si les coefficients b k sont nuls, et à réponse impulsionnelle infinie (récursif) sinon Un filtre est dit causal quand y n ne dépend pas d'échantillons ultérieurs à l'instant nT e (si M > 1). Sinon, le filtre est anticausal. par exemple est récursif, et linéaire invariant dans le temps est LIT, mais récursif non invariant dans le temps, linéaire, récursif (RII) non linéaire, RIF LIT, récursif, anticausal

4 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 4 Filtrer un signal audio, c'est multiplier son spectre par la réponse harmonique du filtre Quel est l'effet du filtre H 2 (f) sur X 2 (f) ? H(f) est la réponse harmonique du filtre. h n est la réponse impulsionnelle du filtre EaD Effet du filtre: G/2

5 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 5 Une méthode pour construire les filtres FIR à partir de la réponse harmonique désirée : Calculer la réponse impulsionnelle de partant de n=0, y n =h n = [1, -1, 0, 0, 0, 0, …] Calculer le produit de convolution y n =[x n *h n ] : Réponse impulsionnelle : Impulsion : L'invariance dans le temps implique que : La linéarité et l'invariance dans le temps impliquent que la sortie du filtre y n est le produit de convolution de l'entrée x n par la réponse impulsionnelle h n : D'où la méthode de conception des filtres à partir de la réponse harmonique désirée : 1 ère étape : définir H(f) désiré 2 ème étape : déduire h n =TFD -1 [H(f)] 3 ème étape : calculer y n =[x n *h n ] Produit de convolution :

6 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 6 Il est équivalent d'utiliser la fonction de transfert en z d'un filtre ou son EaD : On calcule la fonction de transfert en z d'un filtre à partir de la réponse fréquentielle avec le changement de variable Voici un exemple : Quelle est la fonction de transfert de ? d'où la fonction de transfert en z : Un second exemple :

7 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 7 Mise en œuvre avec Goldwave du filtre Noter l'effet du filtre sur les tracés ci-dessus. Pour mettre ce filtre en œuvre, il faudra saisir l'expression suivante dans Expression Evaluator wave1(n-1)* *wave2(n-1) chronogramm e atténué spectrogramme diminué à partir de 200Hz fréquence d'échantillonnag e 2kHz

8 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 8 Quelques fonctions Matlab pour créer, évaluer, et appliquer les filtres, tel que : On crée ce filtre avec la fonction tf de Matlab: ftz= tf(0.1,[1,–0.9],1/8000); ftz % donne 0.1/(z-0.9), Ts = 1/8000 s On calcule sa réponse impulsionnelle : [hn,t]=impulse(ftz); % puis plot(t,hn) % pour le tracé, ou bien impulse(ftz) sa réponse indicielle (à une entrée échelon) : [ind,t]=step(ftz); % ou bien step(ftz) % pour tracer sa réponse harmonique (ou fréquentielle): bode(ftz) % attention ! rad/s, pas Hz [m,p,w]=bode(ftz); % voir aussi la fonction freqz() % en Hz on filtre le signal xn avec la fonction filter(): yn= filter(0.1,[1,-0.9],xn); on calcule le spectrogramme de yn, par exemple : spectrogram(yn,1024,0,1024,fe,'yaxis'); Créer avec Matlab le filtre ci- contre, à appliquer au signal tiré de SheepBaa.wav, puis tracer la réponse harmonique du filtre [xn,fe] = wavread('SheepBaa.wav'); ftz = tf(0.1,[1,0.9],1/fe); yn = filter(0.1,[1,0.9],xn); bode(ftz)

9 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 9 On lit sur la réponse harmonique d'un filtre l'effet multiplicatif sur le spectre du signal Voici par exemple la réponse harmonique tracée par MATLAB pour le filtre : Lire leffet du filtre sur la fréquence 500 Hz : donner le facteur datténuation ou gain : donner le déphasage : Lire le gain du filtre à fréquence nulle (ou gain statique) : À quelle fréquence le filtre divise til par 2 ? À quelle fréquence retarde til de 45° ? Quel est le gain minimum du filtre ? Relever la fréquence maximum du tracé :

10 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 10 Comparer les deux filtres dont Matlab a superposé les réponses ci-dessous : Quest que ces deux filtres ont en commun ? Quest ce qui les différencie ? fe=2000; fc=200; a=exp(-2*pi*fc/fe),b=1-a; F1z=tf([b],[1,-a],1/fe); b=exp(-sqrt(2)*pi*fc/fe)% b= a=b*cos(sqrt(2)*pi*fc/fe)% a= F2z=tf([1-2*a+b^2,0],[1,-2*a,b^2],1/fe) bode(F1z,F2z)

11 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 11 Annexe : stabilité et gain statique d'un filtre un filtre est stable au sens E.B.S.B si toute entrée bornée (finie en amplitude) donne une sortie bornée (E.B.S.B. signifie Entrée Bornée Sortie Bornée). un filtre est stable au sens EBSB, si et seule- ment si tous les pôles de sa fonction de transfert sont de module inférieur à un. Stabilité et gain statique du filtre intégrateur ? Mêmes questions pour le filtre dérivateur ? Le gain statique d'un filtre est le rapport sortie sur entrée en régime permanent. On calcule le gain statique de deux manières: Dans EaD, faire disparaître les indices n : x n+1 = x n =… = X, y n = y n-1 = …=Y Dans FTz, faire tendre la variable z vers 1 Stabilité EBSB : Gain statique :

12 Cours S.S.I.I., , séance 7 : Filtrer le signal audio numérique page 12 Trouver les filtres récursifs passe bas d'ordre 1 et 2 selon le gain statique et la fréquence de coupure* Pour le filtre F1(z) du premier ordre, on obtient la fréquence de coupure à -3dB notée fc et le gain sta- tique G en calculant les coefficients comme suit : Pour le filtre F2(z) du second ordre, c'est : * ces résultats non démontrés découlent de la relation entre la variable de Laplace p et la variable z


Télécharger ppt "Cours S.S.I.I., 2009-10, séance 7 : Filtrer le signal audio numérique page 1 Filtrer le signal audio numérique Jean-Paul Stromboni, Polytech Nice Sophia,"

Présentations similaires


Annonces Google