Frage zu FFT Programm

Gast #1831126
Lesenswert?

Hallo ich habe eine Frage zu fft Programm (siehe Anhang).
Als Beispiel werden hier Daten von einer Textdatei eingelesen und die 
fft berechnet. Warum liegen die Werte (Zeitbereich) hier zweidimensional 
vor?
Das verstehe ich nicht. Für jede genauere Erläuterung bin ich dankbar.
Angehängte Dateien:
#1831136
Lesenswert?

Ich versteh jetzt deine Frage nicht.

Eine FFT ist ja eine Operation die Samples, die in der Form 
[Realteil;Imaginärteil] vorliegen in andere Werte die ebenfalls in der 
Form [Realteil;Imaginärteil] dargestellt werden, umrechnet.

Das ist aber dem Prinzip nach schon eine 2D Operation.
[Realteil; Imaginärteil]  sind nun mal 2 Bestimmungsstücke durch die ein 
Sample charakterisiert ist und daher ist das Ganze grundsätzlich eine 2D 
Operation.
Gast #1831199
Lesenswert?

Ja aber wenn ich nun ein Sinussignal habe, dann habe ich ja keine 
Imaginärtanteile. Es handelt sich dann um eine 1D-FFT. Bei diesem 
Beispiel (FFT Programm) handelt es sich doch ebenfalls um eine 1D-FFT 
oder lieg ich da jetzt komplett falsch.
Admin Persönliche Seite #1831373
Lesenswert?

study schrieb:
> Bei diesem
> Beispiel (FFT Programm) handelt es sich doch ebenfalls um eine 1D-FFT

study schrieb:
> Ja und bei einem Bild benötigt man eine 2D-FFT.

Stimmt beides schon.

Der Begriff der Dimensionalität wird anders verwendet als es Karl-Heinz 
Buchegger erklärt hat. Die "1D-FFT" der Länge N verarbeitet einen 
Vektor aus N (im Allgemeinen komplexen) Zahlen. Bei der "2D-FFT" wäre 
es eine NxN große Matrix aus komplexen Zahlen. Bei der 3D-FFT wäre es 
ein NxNxN großer Tensor aus komplexen Zahlen, usw.

Ob reell oder komplex ist unabhängig von der Dimensionalität. Wenn du 
nur reelle Werte verarbeiten willst setzt du den Imaginärteil einfach 
jeweils auf 0. Um Rechenzeit zu sparen kannst du auch eine FFT-Variante 
verwenden die für rein reelle Werte optimiert ist.
Gast #1833692
Lesenswert?

Vielen Dank für eure Hilfe. Also handelt es sich in dem obigen Beispiel 
um eine 1D-FFT.

Eingangsdaten:
3.6 2.6
2.9 6.3
5.6 4.0
4.8 9.1
3.3 0.4
5.9 4.8
5.0 2.6
4.3 4.1

Ist die erste Spalte der Realteil oder Imaginäranteil?

Hat von euch jemand schonmal von einem Bild eine 2D-FFT durchgeführt?
#1833930
Lesenswert?

study schrieb:
> Ist die erste Spalte der Realteil oder Imaginäranteil?


steht doch im Kommentar:
/*----------------------------------------------
   fft_test.c - demonstration program for fft.c
  ----------------------------------------------*/

/*********************************************************************** 
*******
 * This program demonstrates how to use the file fft.c to calculate an 
*
 * of given time-domain samples, as well as to calculate an inverse FFT 
*
 * (IFFT) of given frequency-domain samples.  First, N complex-valued 
time-   *
 * domain samples x, in rectangular form (Re x, Im x), are read from a 
*
 * specified file; the 2N values are assumed to be separated by 
whitespace.   *
 * Then, an N-point FFT of these samples is found by calling the 
function     *
 * fft, thereby yielding N complex-valued frequency-domain samples X in 
*
 * rectangular form (Re X, Im X).  Next, an N-point IFFT of these 
samples is  *
 * is found by calling the function ifft, thereby recovering the 
original     *
 * samples x.  Finally, the calculated samples X are saved to a 
specified     *
 * file, if desired. 
*
 ************************************************************************ 
******/

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren