Bonjour,
J'aimerais filtrer un signal. Le signal est échantillonné à 6000 Hz et je voudrais le filtrer pour ne garder que les composantes entre 2800 Hz et 2950 Hz (passe-bande).
Comment faire ?
Merci !
Bonjour,
J'aimerais filtrer un signal. Le signal est échantillonné à 6000 Hz et je voudrais le filtrer pour ne garder que les composantes entre 2800 Hz et 2950 Hz (passe-bande).
Comment faire ?
Merci !
Tu devrais pouvoir t'en sortir avec
et http://fr.wikipedia.org/wiki/Filtre_passe-bande
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 doc filter; doc c2d;
Ca donne quelque chose comme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 signalEntree = rand(1000,1); t = 0:1/6000:1/6000*(1000-1); w1 = 2800/2/pi; w2 = 2950/2/pi; w0 = sqrt((w1*w2)); Q = w0/(w2-w1); passeBandeContinu = tf([1 0],[Q/w0 1 Q*w0]); passeBandeDiscret = c2d(passeBandeContinu,1/6000); signalFiltre = filter(passeBandeDiscret.num{1},passeBandeDiscret.den{1},signalEntree); %Observation du bode figure; bode(passeBandeContinu,[w1:1:w2 w2]); %observation de la réponse impulsionnelle figure; step(passeBandeContinu,'-',passeBandeDiscret,'--'); %Observation du résultat filtré figure; plot(t,signalEntree); hold on; plot(t,signalFiltre,'r');
N'oubliez pas de consulter les FAQ Matlab et les tutoriels Matlab
Pas de question technique par MP, Merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager