AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Seltsame Ergebnisse bei DFT
Thema durchsuchen
Ansicht
Themen-Optionen

Seltsame Ergebnisse bei DFT

Ein Thema von inherited · begonnen am 30. Jan 2007 · letzter Beitrag vom 1. Feb 2007
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#21

Re: Seltsame Ergebnisse bei DFT

  Alt 1. Feb 2007, 15:54
Nee, ein Filter ist es eigentlich nicht.

Es ist mehr so eine Funktion, die du überlagern (multplikativ) musst. Sagt dir "Faltung" etwas?

Die Idee dahinter ist, dass (wie ich schon mal erwähnte) du für deine Frequenzanalyse im Prinzip einen Ausschnitt verwendest.
dieser müsste allerdings problemlos unendlich mal hintereinenader passen ohne das Sprünge entstehen (so wie in fenster1 und fenster 2->Anhang)

Der Ausschnitt beträgt zufällig die Länge einer Farbe aus Fenster1. Wenn ich dieses Fenster wiedrum hintendrannhänge entsteht ein Sprung (Fenster2)

Dieser Sprung wirkt sich auf dein Frequenzspektrum aus.

Das Hanning-Fenster (ich sehe grad, das "bessere" heißt Hamming) aus Wiki sieht so aus:
Delphi-Quellcode:
for i:=0 to Abtastwerte-1 do //Abtastwerte ist die Länge des Arrays
    a[i]:=a[i]*(0.54+0.46*cos(2*pi*i/abtastwerte+pi));
  //und jetzt fft oder dft
Du kannst ja mal schauen, wie dein Zeitsignal vor und nach der Transformation aussieht.

Im übrigen musst du nach der FFT die Amplitudenwerte auf Grund der Fensterfunktion verdoppeln.



Aber ich sehe grade, dass Grouping dir eher hilft, nur da weis ich jetzt auch nicht viel...


Edit: zu deinem Edit: Ja fast, aber so sieht es bei mir zumindest richtig aus (bei vonHann Fenster steht da zweimal 0,5 statt 0,54 und 0,46)
Nur dein größeres Problem ist wahrscheinlich, dass dein Grundfrequenz kein Vielfaches von Abtastfrequenz/Abtastwerte ist. Und da hilft dieses Grouping. Vielleicht gibts auch noch andere Sachen. Aber du rechnest halt diskret (geht ja nicht anders) und dadurch bekommst du auch nur diskrete Frequenzen.
Miniaturansicht angehängter Grafiken
fenster2_462.png   fenster1_114.png  
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#22

Re: Seltsame Ergebnisse bei DFT

  Alt 1. Feb 2007, 16:02
Aaah, erst das Fenster, dann die DFT... Ich habs andersrum

Delphi-Quellcode:
for i:=0 to Abtastwerte-1 do //Abtastwerte ist die Länge des Arrays
    a[i]:=a[i]*(0.54+0.46*cos(2*pi*i/abtastwerte+pi));
  //und jetzt fft oder dft

Ich dachte, man n (in dem fall i) müsste zwischen -M/2 und +M/2 liegen...
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#23

Re: Seltsame Ergebnisse bei DFT

  Alt 1. Feb 2007, 16:06
Zitat:
Ich dachte, man n (in dem fall i) müsste zwischen -M/2 und +M/2 liegen...
Das machte für mich keinen Sinn, da hab ichs einfach mal verschoben
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz