[PDF] [PDF] Filtrage temps-réel et MATLAB (introduction) - Laboratoire des

2 Les bases du temps-réel audio sous matlab 5 1 Rappels La réponse en fréquence d'un filtre passe-haut idéal de fréquence de coupure ν0 est donnée par :



Previous PDF Next PDF





[PDF] Filtrage linéaire

de pixels P' connectés à P Le pixel P, cerclé dans la figure, appartient à son propre voisinage Voici, sous Matlab, la visualisation de la matrice avant et après des filtres passe-haut : un rehausseur de contraste, des filtres différenciateurs



[PDF] Bases du traitement des images - Filtrage dimages

11 oct 2016 · Pour réduire le bruit dans l'image (sujet de ce cours) ▷ Pour détecter les Filtre passe-haut, non idéal (voir partie filtrage fréquentiel) 47 / 99



[PDF] Filtres et Filtrage

Filtre Passe-Haut Analogique Passif Page 49 MATLAB : spectre et spectrogramme du signal s(t) transmission de données, audio, traitement d' images



[PDF] Traitement des images numériques TP 3 : Filtrage - Laurent Oudre

1 2 Etude sous MATLAB Pour ajouter du bruit `a une image sous MATLAB, on utilise la commande imnoise S'agit-il d'un filtre passe-bas, passe-haut, etc



[PDF] — Matlab et le traitement du signal —

– Wn bande passante du filtre (fréquence haute de la bande passante pour un passe-bas ; fréquence basse de la bande passante pour un passe-haut; 



[PDF] 7 Applications du filtragekey

Filtre passe-haut originale - filtrée Image Image filtrée Qu'est-ce qui se passe? f = image g = filtre h(m, n) = ∑ k,l Dans matlab: C = normxcorr2(template, A) 



[PDF] Conception de filtres numériques

PH (f ), n ∈ Z Réponse fréquentielle du filtre numérique passe-haut idéal Sous Matlab, les fréquences de coupure sont normalisées par rapport à fe / 2 H( f)



[PDF] Filtrage temps-réel et MATLAB (introduction) - Laboratoire des

Rappels des cours précédents : filtrage idéal et FIR Les bases du temps-réel audio sous matlab Filtre passe-haut idéal – 1 Définition La réponse en fréquence 



[PDF] Filtrage temps-réel et MATLAB (introduction) - Laboratoire des

2 Les bases du temps-réel audio sous matlab 5 1 Rappels La réponse en fréquence d'un filtre passe-haut idéal de fréquence de coupure ν0 est donnée par :

[PDF] filtre passe haut numérique

[PDF] filtre passe haut ordre 1

[PDF] filtre récursif

[PDF] filtre récursif définition

[PDF] filtre récursif et non récursif

[PDF] filtre rif

[PDF] filtre stable

[PDF] filtre uv aquaculture

[PDF] filtrer composante continue

[PDF] filtrer un signal bruité matlab

[PDF] filtres actifs exercices corrigés pdf

[PDF] fime antony

[PDF] fime caen recrutement

[PDF] fime logo

[PDF] fime miami

Filtrage temps-reel et MATLAB (introduction)

MatthieuKowalski

Table des matieres

1 Rappels des cours precedents : ltrage ideal et FIR 1

2 Les bases du temps-reel audio sous matlab 5

1 Rappels des cours precedents : ltrage ideal et FIR

Filtrage

Denition

Un ltre est un systemelineaireetinvariant dans le temps. Il peut donc s'ecrire comme une convo- lution.

Reponse impulsionnelle

SoitSun ltre. La reponse impulsionnellehdeScorrespond a la sortie du systeme a l'impulsion unite (Dirac). Ainsi h=S() et l'on a, pour tout signalx y=S(x) =h ? x=x ? h yn=+1X k=1h kxnk Pour les signaux nis, la convolution suppose les signaux periodiques, de m^eme periode!

Filtres realisables { 1

Filtre realisable

Un ltre de reponse impulsionnellehest realisable ssi il est stable et causal.

Remarque 1

S iu nl trees tst able,al orsil ad metun et ransformeed eF ourier R eciproquement,si u n ltreadm etu net ransformeede F ourier,alor si les tst able.

Remarque 2

Un l trer ealisablead metf orcementun et ransformeed eF ourier S iun ltreadm etu net ransformeede F ourieri ln 'estp asfor cementr ealisable,c ari lp eutn epas ^etre causal 1

Filtres realisables { 2

Filtre stable

Un ltre de reponse impulsionnellehest stable ssi

+1X k=1jhkj<+1

Filtre stable

Un ltre de reponse impulsionnellehest causal ssihest causal, ie h k= 08k <0

Filtre realisable

Un ltre de reponse impulsionnellehest realisable ssi il est stable et causal.

Filtrage et transformee de Fourier

Reponse en frequence ou Gain complexe

La reponse en frequence, ou gain complexe, d'un ltre est sa transformee de Fourier (quand elle existe!).

Filtrage dans le domaine frequentielle

SoitSun ltre de impulsionnellehetxun signal. On a

y=S(x) =h ? x Sihetxadmettent une transformee de Fourier, on a dans le domaine frequentiel : ^y=^h^x Filtrer un signal, c'est agir directement sur son spectre!

Filtre passe-bas ideal { 1

Denition

La reponse en frequence d'un ltre passe-bas ideal de frequence de coupure0est donnee par : h()pb0=(

1 sijj< 0

0 sinon

Reponse en frequence-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Frequence (Hz)00.20.40.60.81

Amplitude2

Filtre passe-haut ideal { 1

Denition

La reponse en frequence d'un ltre passe-haut ideal de frequence de coupure0est donnee par : h()ph0=(

0 sijj< 0

1 sinon

= 1^h()pb0 Reponse en frequence-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Frequence (Hz)00.20.40.60.81

AmplitudeFiltre passe-bande { 1

Denition

La reponse en frequence d'un ltre passe-bande ideal de frequences de coupures0>0 et1>0 est donnee par : h()pbande0;1=8 :1 si0< < 1

1 si0< <1

0 sinon

^h()pb1^h()pb0

Reponse en frequence

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Frequence (Hz)00.20.40.60.81

AmplitudeFiltres { equation aux dierences

Soit un ltre de reponse impulsionnelleh. Alors le signaly, version ltree du signalxparh, est donnee par : y n= (h ? x)n=+1X k=1h kxnk

Comment realiser un tel ltre en "temps reel"?

3

Filtres FIR ou MA

Denition

Soit un ltre de reponse impulsionnelleh. Le ltre est dit "a reponse impulsionnelle nie" (FIR) ou "a moyenne mobile" (MA) sihest nie :h=fhk1;:::;h0;:::;hk2g

L'equation aux dierences s'ecrit alors :

y n=k 2X k=k1h kxnk On appelleordredu ltre, le nombre d'echantillons de sa reponse impulsionnelle.

Remarques

Un l treF IRes tfor cementstable

Il n 'estp asf orcementcausal

Un l treF IRes trealisablessi il est causal

Synthese de ltre RIF

But Synthetiser un ltre RIF (ou MA)causal, qui s'approche le plus possible du ltre ideal recherche.

RI du ltre RIF recherche VS RI du ltre ideal

Le ltrei deala u neRI hideala support inni, non causal : y n=+1X k=1h kxnk Le ltreRIF q uel' onc herche etantc ausal,s ar eponsei mpulsionnellehdoit ^etre causale : y n=KX k=0h kxnk

Synthese de ltre RIF

But Synthetiser un ltre RIF (ou MA)causal, qui s'approche le plus possible du ltre ideal recherche.

Synthese par fen^etrage

|Calculde la RIhidealpar TF inverse : h idealn=Z 1=2

1=2H()ei2nd

|Fen^etragede la RIhideal h win=w fhidealN=2;:::;hidealN=2g Ap plicationd' unretardsurhtronc, an de decaler les indices pour rendre le ltre causal h

RIFn=hwinnN=2

Parametres d'un ltre FIR

O rdre( nombrede co ecients)

F en^etre( Rectangulaire,Hammi ng,Hann ,Bl ackman. ..) 4

2 Les bases du temps-reel audio sous matlab

Notion de temps reel

La n otiond et emps-reele stl iee ac elled el atence,et d ependd el 'application Lat ence= du reeq uis 'ecoulee ntrel 'actionet l ar eaction. P arex emple,u nd ecalageen trel eson e tl 'imagede 20 ms e stacce ptable.Au de la,on p ercoitl e decalage. T raiterun si gnalen t emps-reel= t raiteru ns ignalen mi nimisantla l atence

Structure general de traitement

Structure de traitement

Li reu n" bloc"d esi gnal( chier,mi cro...)

T raiterce bl oc

|Ecrire ce bloc (chier, enceintes...)

Problemes

Le t raitementn ed oitpas i ntroduirede l atence

E nv ideo: <20 ms. En audio :<5 ms!

Temps reel audio sous Matlab

Boucle temps-reel Matlab avec la toolbox dsp.systems % Lecture d'un fichier audio: AFR = dsp.AudioFileReader('fichier.wav','SamplesPerFrame',frameLength); % Ecriture d'un fichier audio:

ADW = dsp.AudioPlayer(AFR.SampleRate);

while ~isDone(AFR) % Lecture d'un block de signal audio = step(AFR); % Traitement de ce block audio_processed = signal_processing(audio); % Ecriture du block de signal step(ADW, audio_processed) end % Fermeture des ressources close(AFR); close(ADW);

Temps-reel et ltrage ideal

Imp lementerun l tragei dealpar b loc

voir cours-TD 1 Q u'observe-t-on?Ecoute tres eloignee du signal original

P ourquoie ntend-t-once ph enomene?

Le ltre n'est pas compatible avec le temps-reel. Les artefacts viennent de la convolution circulaire!

Temps-reel et ltrage FIR

Q uels echantillonss ontn ecessairesp ourl e ltreF IR? desKprecedents echantillons, ouKest l'ordre du ltre P arq uoisem ble-t-ilrai sonnablede li miterl 'ordred ul tre? Par la taille des blocs utilisee pour le temps-reel P roposeru nei mplementationd' un ltraget emps-reel,a vecu n ltreF IR A p artirde q uelor drel esi gnalcor rectementl tre? Cela depend de la fen^etre. Un ordre d'environ 100 semble necessaire avec une fen^etre de Hann. 5

Gain en decibel

Pour agir sur les frequences, on peut leur appliquer un gain en decibel. Soitsle signal original eth?s

le signal ltre :

Gain en decibel

G= 10log10kh ? sk2ksk2

= 10log 10 k^h^sk2k^sk2! Ainsi, si l'on veut appliquer un gain de 3 dB, il sut d'amplier les frequences de : hk= 10G=10 On voit que pourG= 3, alorsh'2. Un gain de 3 dB double l'energie du signal!

Vers un Equalizer numerique

Reprendre le programme ci-dessus avec :

Un ef onctionp ourcal culerle sco ecientsdu ltrev oulu,se lonla fr equenced ec oupure,l 'ordree t le gain (en DB) voulu : [FIRcoe] = coepassebasr(fe,fc,ordre,fenetre,gainDB,gainMax)

Un ef onctionp ourl treren t emps-reel

[ sigltered ] = realTimeltering(sigpad,frameLength,FIRcoe) ou sigpad est le signal contenant susament d'echatillons passes pour appliquer le ltre.

Vers un Equalizer numerique

Le b utest d ec reeru ne qualizern umerique.

O nc onsiderequ el 'oreilleh umainees tsen sibleau xf requencess uru ne echellel ogarithmique,de

20 Hz a 20000 Hz.

Division de la bande frequentielle

su b-basses: 30 a 63 Hz b asses: 63 a 250 Hz b as-mediums: 250 a 500 Hz me diums: 500 a 2000 Hz h aut-mediums: 2 a 4 kHz ai gus: 4 a 20 kHz

Vers un Equalizer numerique trois bandes

Ce qui donne, pour un equalizer trois bandes, la division suivante :

Equalizer trois bandes

Bas ses: <250 Hz

M edium: 250 a2000 Hz

Ai gus: >2000 Hz

Vers un Equalizer numerique trois bandes

Q uelsson tl est ypesde l tresqu iv onti ntervenirp ourcr eeru neq ualizertr oisb andes?

Un passe-bas, un passe-bande et un passe-haut

Imp lementertr oisf onctionsq uical culel esco ecientsFI Rde ce st roisl tres

[FIRcoeBass] = coepassebasr(fe,fc,ordre,fenetre,gainDB,gainMax) [FIRcoeMedium] = coepassebander(fe,fc1,fc2,ordre,fenetre,gainDB,gainMax)

[FIRcoeAigu] = coepassehautr(fe,fc,ordre,fenetre,gainDB,gainMax) Vers un Equalizer numerique trois bandes : interface graphique

Voir Matlab...

6quotesdbs_dbs19.pdfusesText_25