IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    docteur
    Inscrit en
    Mai 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : docteur

    Informations forums :
    Inscription : Mai 2013
    Messages : 45
    Points : 30
    Points
    30
    Par défaut traitement d'une réponse à un sinus glissant - application d'un filtrage pour chaque itération de fréquence
    Bonjour à tous,

    J'explique tout d'abord ce que j'ai fait :

    Génération d'un sinus glissant de 150 Hz à 1 kHz par pas de 100 Hz (soit 9 sinus à 9 fréquences différentes générés) via un HP puis récupération de la réponse à ce sinus avec deux microphones via audacity.
    Exportation de la réponse sous matlab.

    Ce que je veux faire :

    1) la réponse de mes deux micros me donnant deux vecteurs de 402633 pour mes 9 fréquences, je souhaite tout d'abord transformer ce vecteur en une matrice représentant mes signaux à mes 9 fréquences différentes (sachant que la longueur du premier sinus est un peu plus courte que celles des autres signaux qui ont la même durée, car j'ai coupé le début du premier signal qui faisait un peu de bruit)

    2) Une fois cela fait, j'aimerai trouver le moyen d'appliquer un filtre passe bande de butterwoerth glissant qui va ainsi me traiter la réponse de tous mes sinus (afin d'enlever toutes distorsion du signal)

    3) Enfin le filtre passe bande atténuant toujours les fréquences filtrées (cf images jointes), je souhaite ne conserver que les oscillations à peu près constantes (un exemple d'image est donné avec un sinus pur à 1000 Hz)

    Je joins mon travail en attaché.

    Encore merci à ceux qui accepteront de jeter un oeil à ma demande
    Fichiers attachés Fichiers attachés

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    docteur
    Inscrit en
    Mai 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : docteur

    Informations forums :
    Inscription : Mai 2013
    Messages : 45
    Points : 30
    Points
    30
    Par défaut
    Personne pour m'aider :'( ??

    Bon j'ai quand même résolu le problème du découpage de mon signal global x1 qui a pour dimension 1587600x1 en une matrice Mic_1 de dimension 88200 points pour 18 fréquences à traiter.
    Si quelqu'un peut m'aider pour le filtrage de mes 18 signaux à mes 18 fréquences différentes : voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Q=5; n=4; ftype='bandpass'; fe=44100;
    f1=[]; f2=[]; y1=[]; A=[]; B=[];
     
    for f=150:50:1000
    f1=[f1 f.*(1-(1/(2*Q)))];
    f2=[f2 f.*(1+(1/(2*Q)))];
    Wn=[f1 f2]/(fe/2);
    [A,B]=butter(n,Wn,ftype);
    y1=filter(A,B,Mic_1).*hamming(M)
     
    end
    Encore merci

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    f1=[f1 f.*(1-(1/(2*Q)))];
    f2=[f2 f.*(1+(1/(2*Q)))];
    Ici tu ajoutes au fur et à mesure les valeurs des itérations dans un tableau. Plutôt comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    f1 = f.*(1-(1/(2*Q)));
    f2 = f.*(1+(1/(2*Q)));
    Attention aux noms :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [B,A]=butter(n,Wn,ftype);
    y1=filter(B,A,Mic_1).*hamming(M)
    tu les as inversé dans les deux lignes, ce qui au final donne un résultat juste, mais autant ne pas s’emmêler les pinceaux si jamais le code vient à évoluer.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    docteur
    Inscrit en
    Mai 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : docteur

    Informations forums :
    Inscription : Mai 2013
    Messages : 45
    Points : 30
    Points
    30
    Par défaut
    Un grand merci à vous Jérôme pour votre aide , du coup ça marche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 08/04/2015, 07h54
  2. Comment recevoir rapidement une réponse à votre question ?
    Par Community Management dans le forum Windows
    Réponses: 3
    Dernier message: 17/08/2014, 02h28
  3. Réponses: 3
    Dernier message: 12/07/2013, 13h57
  4. Réponses: 1
    Dernier message: 22/05/2009, 16h15
  5. Réponses: 3
    Dernier message: 21/06/2004, 11h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo