Springen naar inhoud

Interpretatie fourier transformatie.


  • Log in om te kunnen reageren

#1

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 21 maart 2008 - 17:51

Hoe interpreteer je eigenlijk een fourier transformatie? Een fourier transformatie ontbindt een gegeven signaal in sin en cos oftewel alleen een sin met complexe coŽfficiŽnten.
Dus als je een signaal neemt door een fft duwt in matlab, dit eventueel in absolute waarde plot dan krijg je een grafiek van coŽfficiŽnten van die sin?

Neem nu een bmp bestandje na inlezen en verwerken voer ik een fft uit in het bmp bestandje hoe interpreteer je dan je gegeven plot?

Groeten.

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

dirkwb

    dirkwb


  • >1k berichten
  • 4173 berichten
  • Moderator

Geplaatst op 21 maart 2008 - 18:44

Een goede vraag, interpretatie is belangrijk :D. Volgens mij komt neer op het onderstaande.

De fouriertransformatie transformeert een signaal van het tijddomein naar het frequentiedomein.

In een grafiek van de F-trafo is de amplitude van het signaal tegen de frequentie te zien.

De fouriertransformatie heeft als (belangrijkste?) voordeel dat differentiaalvergelijkingen algebraische vergelijkingen worden en deze zijn veel makkelijker te manipuleren.

Veranderd door dirkwb, 21 maart 2008 - 18:47

Quitters never win and winners never quit.

#3

*_gast_PeterPan_*

  • Gast

Geplaatst op 21 maart 2008 - 22:16

De fouriertransformatie transformeert een signaal van het tijddomein naar het frequentiedomein.

en omgekeerd.
Bij MRS (magnetische resonantie spectroscopie) en MRI (imaging) is aan het gemeten signaal niets te zien (tijdsdomeinsignaal). Pas na Fouriertransformatie ontstaat een beeld (b.v. een doorsnede van je hersenen).
Het gemeten signaal ziet er in geval van een meting aan de schedel uit als een punt waarvanuit straalsgewijs lijnen lopen.

Dus de werkelijkheid is hier de Fouriergetransformeerde van de meting, wat me altijd blijft verbazen.

Veranderd door PeterPan, 21 maart 2008 - 22:17


#4

Rudeoffline

    Rudeoffline


  • >250 berichten
  • 624 berichten
  • Ervaren gebruiker

Geplaatst op 22 maart 2008 - 11:50

Ik heb hier ook een vraagje over, 't is voor mij alweer een tijd geleden dat ik Fourieranalyse gevolgd heb.

Als ik een functie ontwikkel in een Fourierreeks, dan snap ik wat er gebeurt: je neemt als basis in je functieruimte bijvoorbeeld e-machten die onderling orthonormaal zijn. Zo schrijf je de functie ( als vector ) in een bepaalde basis op.

Maar bij een Fouriertransformatie ga je naar de continue limiet; ( sommatie wordt integraal ed ). In het discrete geval was je functie exact gelijk aan je Fourierreeks, maar bij een Fouriertransformatie is dit niet meer zo; je gaat inderdaad van het ene domein naar het andere ( tijd VS frequentie of plaats VS impuls ). Hoe moet ik dit nu interpreteren in termen van bovenstaande? Komt dit omdat je bij een Fouriertransformatie van de ene variabele naar de andere gaat, terwijl je dat bij een ontwikkeling in een Fourierreeks niet doet ?

Excuses als m'n vraag wat wazig overkomt.

#5

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 22 maart 2008 - 13:37

Maar hoe interpreteer ik mijn fourier transformatie van een bmp bestandje?
Ik heb 858 data punten plot dan plot(1:858, fft(data)) als ik nu ťťn kleur in mijn bmp bestand steek dan krijg ik ook ťťn piek maar als ik er twee in steek dan krijg ik een reeks pieken?? hoe komt dat?
De bedoeling is om met de fourier transformatie terug te vinden hoe sterk welke kleuren vertegenwoordigt zijn kan dat?
Waar vindt ik wat informatie over fourier transformaties en beeldverwerking?
Groeten.

#6

da_doc

    da_doc


  • >250 berichten
  • 308 berichten
  • Ervaren gebruiker

Geplaatst op 22 maart 2008 - 14:11

De Fouriertransformatie werkt op numerieke gegevens. Dus in dit geval op numerieke waarden die de kleur weergeven, zoals dat in een bmp inderdaad het geval is. Als de bmp een enkele kleur heeft, dan onstaat een piek in het frequentiedomein, omdat dan het numerieke signaal in het spacedomain constant is. Een soort Heisenberg onzekerheidsrelatie: een piek in het f-domein geeft een vlak signaal in het tijd of ruimte-domein, en omgekeerd. Als er meerdere kleuren in de bmp zitten (hoe?), dan zitten er stappen tussen de verschillende numerieke waarden, en dan zijn in het f-domein meerdere spectrale componenten nodig om dat te reproduceren. Dit alles volgt rechtstreeks uit de definitie van de (inverse)fouriertransformatie.

#7

*_gast_PeterPan_*

  • Gast

Geplaatst op 22 maart 2008 - 15:06

Misschien heb je iets aan de volgende uitleg. (Ik probeer het eenvoudig te houden).
Een piek in het frequentiedomein geeft na (sinus)transformatie in het tijdsdomein een sinus. De breedte van die piek is ook een maat voor de mate waarin die sinus in de tijd in amplitude afneemt. Dat tijddomein is in principe continu en oneindig, maar bij de discrete transformatie is er sprake van een eindig discreet domein. Daarbij wordt met frequentie 2 pi (of anders) de signalen over elkaar gelegd en dat geeft bij aanwezigheid van meer dat 1 frequentiepiek rimpeling. Het is dus een artefact veroorzaakt door de Fouriertransformatie.

Veranderd door PeterPan, 22 maart 2008 - 15:06


#8

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 22 maart 2008 - 15:53

Bedankt voor de uitleg.

Ik zal mijn werkwijze best nog wat verduidelijken. Ik neem een bmp bestand waar ik voor elke kleur een getal krijg dat vorm ik om naar ťťn getal als volgt newwaarde=int1+int2*1000+int3*1000000 zo denk ik voor elke kleur een unieke code te hebben.
Dan plot ik plot((1: length( newwaarde)),(abs(fft(newwaarde))/max(newwaarde))); als ik nu mijn bmp bestand open in paint en ik maak het volledig zwart dan bekom ik mooi ťťn piek van zo'n 858 dit denk ik te begrijpen als zijnde dat er maar ťťn kleur in voorkomt oftewel dat je fourier reeks bestaat uit ťťn ct.
Waarbij die 858 het aantal data punten zijn met die waarden.
Maar als ik twee kleuren toevoeg dan bekom ik een hele boel lijntjes nu denk ik dat dit is omdat de fourier reeks die door de opgegeven data moet lopen uit meerdere termen dan twee bestaat.
Eerst dacht ik dat die uit twee termen zou bestaan en daarom twee pieken moest geven dat is dus fout.

Maar met welke transformatie achterhaal je dan hoe dikwijls een bepaalde kleur voorkomt? Doet men dit niet door een fourier transformatie? Wat doet men in de beeldverwerking dan wel met zo'n transformatie?

Groeten.

#9

Bart

    Bart


  • >5k berichten
  • 7224 berichten
  • VIP

Geplaatst op 22 maart 2008 - 17:10

[quote name='Bert F' post='405091' date='21 March 2008, 17:51']Hoe interpreteer je eigenlijk een fourier transformatie? Een fourier transformatie ontbindt een gegeven signaal in sin en cos oftewel alleen een sin met complexe coŽfficiŽnten.
Dus als je een signaal neemt door een fft duwt in matlab, dit eventueel in absolute waarde plot dan krijg je een grafiek van coŽfficiŽnten van die sin?[/quote]

Een FFT werkt complex. Het maakt dus gebruik van een complexe e-macht, samen met een complexe amplitude. Hierdoor kan deze zowel de sinus als cosinuscomponenten meenemen, inclusief hun fase.

stel je hebt een reeel tijdsignaal x(t), waarvan de FFT X(f) = F[x(t)] is. Je kunt het originele signaal reproduceren door:
Bericht bekijken
Maar bij een Fouriertransformatie ga je naar de continue limiet; ( sommatie wordt integraal ed ). In het discrete geval was je functie exact gelijk aan je Fourierreeks, maar bij een Fouriertransformatie is dit niet meer zo; je gaat inderdaad van het ene domein naar het andere ( tijd VS frequentie of plaats VS impuls ). Hoe moet ik dit nu interpreteren in termen van bovenstaande? Komt dit omdat je bij een Fouriertransformatie van de ene variabele naar de andere gaat, terwijl je dat bij een ontwikkeling in een Fourierreeks niet doet ?[/quote]
De FFT gaat er van uit dat jouw signaal periodiek (dus oneindig) en continue is. Bij signaalanalyse gebruik je echter de discrete FFT, omdat je signaal gesampled is. Je signaal is dus discreet en eindig en het is vrij waarschijnlijk dat het gesampelde signaal niet exact periodiek is (het eind sluit niet mooi aan op het begin) Hierdoor gaan er allerlei effecten een rol spelen, zoals leakage, aliasing en spectral resolution, waardoor je FFT geen exacte weergave is van je originele signaal.

[quote name='PeterPan' post='405266' date='22 March 2008, 15:06']De breedte van die piek is ook een maat voor de mate waarin die sinus in de tijd in amplitude afneemt.[/quote]
Daar moet je dus heel voorzichtig mee zijn. Zowel leakage als aliasing veroorzaken ook een verbreding van de piek.


[quote name='Bert F' post='405283' date='22 March 2008, 15:53']Maar met welke transformatie achterhaal je dan hoe dikwijls een bepaalde kleur voorkomt? Doet men dit niet door een fourier transformatie? Wat doet men in de beeldverwerking dan wel met zo'n transformatie?[/quote]
Als je wilt weten hoe vaak een kleur voorkomt, dan is een histogram de beste manier.
If I have seen further it is by standing on the shoulders of giants.-- Isaac Newton

#10

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 22 maart 2008 - 17:16

Als je wilt weten hoe vaak een kleur voorkomt, dan is een histogram de beste manier.


Ja waarschijnlijk wel.

Maar ik had een vb waarbij een stem geanalyseerd is door een fourier transformatie en daarbij kon men mooi zeggen welke frequentie het meest voorkomt.
Nu zal het verschil er wil in zitten dat zo'n stem geluid gemaakt is van sinussen en zo'n bmp bestandje niet.

#11

*_gast_PeterPan_*

  • Gast

Geplaatst op 22 maart 2008 - 17:44

Daar moet je dus heel voorzichtig mee zijn. Zowel leakage als aliasing veroorzaken ook een verbreding van de piek.

De breedte van een piek op halve hoogte geeft een goede schatting voor de demping. Aflezen uit een grafiek is uiteraard alleen een aanwijzing. Je moet je baseren op gemeten/gefitte parameters.

Anekdote:
Van een oude natuurkundige hoorde ik dat met vroeger de pieken uit grafieken op karton uitknipten en wogen om de oppervlakte onder zo'n piek te bepalen.

Veranderd door PeterPan, 22 maart 2008 - 17:48


#12

Bart

    Bart


  • >5k berichten
  • 7224 berichten
  • VIP

Geplaatst op 22 maart 2008 - 19:42

De breedte van een piek op halve hoogte geeft een goede schatting voor de demping. Aflezen uit een grafiek is uiteraard alleen een aanwijzing. Je moet je baseren op gemeten/gefitte parameters.


Deze FFT geeft dus een gedempte trilling weer?

fft.png

Verborgen inhoud
In het tijdsdomein is dit een signaal: x(t) = 2.5 * sin(0.1 * t) waarbij een sampletijd van 1 en een samplelengte van 1024 is gebruikt.
If I have seen further it is by standing on the shoulders of giants.-- Isaac Newton

#13

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 22 maart 2008 - 20:50

Kan mij iemand in woorden uitleggen hoe men met een fourier transformatie de verdraaiing van tekst kan bepalen?
Hier doet men dat:
http://homepages.inf...PR2/fourier.htm

#14

*_gast_PeterPan_*

  • Gast

Geplaatst op 22 maart 2008 - 22:00

Deze FFT geeft dus een gedempte trilling weer?


Nee, dat ziet eruit als een ongedempte trilling of een zeer kleine demping.
Ik zeg niet dat de breedte de demping is, maar wel dat de breedte (in verhouding tot de hoogte) een zekere maat is voor de demping. Niet quantitatief maar qualitatief.
Bereken zelf maar eens de breedte van een piek op halve hoogte voor een continu signaal.
Een ervaren gebruiker ziet in een oogopslag of een piek een signaalpiek is of afkomstig is van ruis.

Veranderd door PeterPan, 22 maart 2008 - 22:01






0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures