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

Signal Discussion :

Transformee de Fourier


Sujet :

Signal

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Points : 22
    Points
    22
    Par défaut Transformee de Fourier
    Bonjour,
    je fais de l'analyse de donnees, et je prend la TF de mon signal (nombre de photons detectes). En abscisse j'ai quelque chose qui est homogene a un distance-1 (momentum transfer).
    Mes signaux sont des pics plus ou moins diforme, du genre Gaussien, Lorentzien. Mais c'est pas exactement cela je presume.

    Bref je sais pas trop quelle TF utilise: abs(fft) ou abs(fftshift), les resultats sont foncierement differents, dans le deuxieme cas j'obtiens un pics, dans le premier j'obtiens rien de bien concret.
    Je pense qu'il faut utiliser la deuxieme car la TF d'une gaussienne est une gaussienn et d'une lorentzienne est une exp(-|x|).
    Quelqu'un peut m'expliquer?

  2. #2
    Membre extrêmement actif
    Avatar de mihaispr
    Inscrit en
    Décembre 2008
    Messages
    1 025
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 025
    Points : 858
    Points
    858
    Par défaut
    De ce que tu dis fftshiftdim c'est plus correcte mais si tu peux donner des details , lister ta source je peux confirmer ce que je dis c'est bon.

    Bonne chance,

    Michel

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Points : 22
    Points
    22
    Par défaut
    Bonjour,
    desole mais qu'est-ce que tu entends par lister ta source?^^

  4. #4
    Membre extrêmement actif
    Avatar de mihaispr
    Inscrit en
    Décembre 2008
    Messages
    1 025
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 025
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par dani_dan Voir le message
    Bonjour,
    desole mais qu'est-ce que tu entends par lister ta source?^^
    Pour avoir des chances d'etre aide tu dois donner des details.

    C'est ce que dit les regles du forum.

    Sans cela on ne peut pas t'aider

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Points : 22
    Points
    22
    Par défaut
    Voici par exemple un de mes scripts qui fonctionne. Sa devrait t'aider a mieux comprendre.

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    function [N,M] = reader8()
    a = fopen('datas_8sec.txt')
    b = textscan(a,'%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n%n','delimiter',',');
     
        %x= 0.29:(78.31-0.29)/(511):78.31; Energy (Kev)
    x= 0.29*0.0525/1.24: (78.31-0.29)*0.0525/1.24/(511):78.31*0.0525/1.24;% momentum transfert (nm-1), with teta=6 degres 
    N=size(x);
    M=size(b);
    p=1./x;          % or 2*pi./x; 
    %r=size(p)
    nsample=311;
     
    tic
    for k=1:nsample;               % k = the sample's area
        Fk=b(k);
        Fk=Fk{:};
        Fk=Fk';                    %transposition
            %nk=size(ak)
        figure(k)                  % open a figure for sample's plots
        subplot(2,1,1)             % first plot area 
        %plot(x,Fk);grid;          % the real fit of datas
        %hold on
     
        m=10;                      % start of signal's filter with the Rectangular function Method, width 2*m+1
        t=ones(2*m+1,1)./(2*m+1);
        f=filter(t,1,Fk);
        f(1:m-1)=Fk(1:m-1);
        f(m:N-m)=Fk(m+m:N);        % end of signal's filter 
        plot(x,f,'g');grid;        % the smooth datas fit
        str=sprintf('counts(x): size 1mm*2mm; exposure time: 8s, area%d',k);     % creation of a variable area_k for title indexation
        title(str);
        Xlabel('momentum transfert (nm-1)');
        Ylabel('counts');
     
        Fk=abs(fftshift(f));        % |center FFT|
        subplot(2,1,2)              % second plot area  
        plot(p,Fk,'r');grid;        % |center FFT| fit
        str2=sprintf('FFT(number of counts): size 1mm*2mm; exposure time: 8s, area%d',k);% creation of a variable area_k for title indexation
        title(str2);
        Xlabel('p (nm)');
        Ylabel('FT(counts)');
        axis([0.25 0.55  0 14]);    % keep the interesting signal of FFT, cut the lowest x values => cut the highest p values
     
        saveas(gcf,['figure',num2str(k)],'m');  % save figures in the current folder
    end;
    toc
    En fait, mes donnees sont des genres de pics gaussiens, lorentziens, mais elles sont directement issues de l'experience donc c'est pas un cas ideal.

    Quand je prend la TF avec fftshift j'obtiens un genre de pics, mais normalement l'amplitude de ma TF devrait etre 1/amplitude de mon signal a l'origine et je devrais avoir les largeurs a mis hauteurs de l'ordre de 1/la largeur de de mon signal initial (j'ai essaye faire p=2*pi./x mais sa resoud pas la chose).
    Un autre probleme, dans mon code mes TF dependent de p=1./x, le probleme que j'ai c'est que normalement mes pics devraient s'etaler sur p=[0.4; 2] (theoriquement) alors que dans mon cas ils s'etalent de p=[0.25; 0.55]. C'est peu etre du a la fonction FFTshift? Si oui en quoi?


    Par ailleurs quand je prend fft j'obtiens un signal bruyant tres ondule alors qu'a la base j'ai un pics, donc cela me parrait pas tres coherent.

    Par ailleurs, j'ai poste un autre sujet nomme "transformee de Fourier d'une gaussienne", je pense aue si on resoud le probleme pour le cas ideal, bien definit mathematiquement, apres je pourrais l'appliquer a mes datas.

    En tout cas je te remercie de ton aide et au passage excuse moi, j'ai un clavier anglais (sans accents)

  6. #6
    Membre extrêmement actif
    Avatar de mihaispr
    Inscrit en
    Décembre 2008
    Messages
    1 025
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 025
    Points : 858
    Points
    858
    Par défaut
    Je t'ai repondu dans le nouveau poste que tu as ouvert.

    J'espere que ca t'aide un peu pour faire ce que tu desires!

    Amicalment,

    Michel

    P.S Ouvre un seul poste pour une question.

Discussions similaires

  1. [Débutant] transformee de fourier de l'Iris
    Par zepek dans le forum Images
    Réponses: 3
    Dernier message: 22/07/2009, 05h17
  2. double transformee de fourier
    Par momo032114 dans le forum Signal
    Réponses: 0
    Dernier message: 06/08/2008, 16h56
  3. Recalage de deux images avec les transformees de Fourier
    Par Programmeur_Aladdin dans le forum Traitement d'images
    Réponses: 2
    Dernier message: 22/01/2008, 16h30
  4. Calcul transformée de Fourier sur signal créneau
    Par StitchP dans le forum Signal
    Réponses: 5
    Dernier message: 27/06/2007, 08h24
  5. Transformée de fourier fenêtrée
    Par tissaclem dans le forum Signal
    Réponses: 4
    Dernier message: 21/05/2007, 16h03

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