LabVIEWForum.de - FFT im Datenstrom

LabVIEWForum.de

Normale Version: FFT im Datenstrom
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

ich habe einen Datenstrom oder lange Audio Files, die kann ich nicht als ganzes FFT-en. Was mit kleinen Datenjunks gut geht, nämlich FFT - Filtern - transformieren - FFTreverse - Audio File stellt mich beim Datenstrom vor ein Problem. Wie kann ich das kontiuierlich machen?

"FFT PtByPt" ... na die Hilfe ist für mich nicht hilfreich aber ich denke das Ding akkumuliert in einem FILO Speicher die Daten und macht die FFT davon. Das ist lieb aber wie komme ich wieder zu meinem Audiostrom?

Jeder Hinweis ist willkommen.

Danke

Gottfried
' schrieb:Was mit kleinen Datenjunks gut geht,
Wie viele Samples sind Datenjunks? Kenne diese Konvention nicht. Hoffentlich eine 2-Potenz.

Zitat:nämlich FFT - Filtern - transformieren - FFTreverse - Audio File stellt mich beim Datenstrom vor ein Problem. Wie kann ich das kontiuierlich machen?
"Kontinuierlich" können einige von den FFT VIs. z.B. das hier: http://zone.ni.com/reference/en-XX/help/37...trum_mag_phase/

Zitat:"FFT PtByPt" ... na die Hilfe ist für mich nicht hilfreich aber ich denke das Ding akkumuliert in einem FILO Speicher die Daten und macht die FFT davon.
Bekommst du wirklich nur ein Sample? Nur dann würde ich die PtByPt-VIs in Betracht ziehen. Datenjunks sind doch bestimmt mehr ...

Zitat:Das ist lieb aber wie komme ich wieder zu meinem Audiostrom?
Machst du die FFT weil du das Spektrum betrachten möchtest oder willst du wirklich zu Fuß filtern? Wenn du einfach nur filtern willst, würde ich das auf keine Fall selber machen, sondern mir eins der endlosen Filter VIs aussuchen.

Edit: Vielleicht ist hier was dabei: LVF-Link

Gruß dimitri
Also um mit estas einfachem zu beginnen:

> Wie viele Samples sind Datenjunks? Kenne diese Konvention nicht. Hoffentlich eine 2-Potenz.

man unterscheidet kilo-Junks (1024 Messwerte) und Mega-Junks (etwa 1,04Mio Datensätze), wenig gebräuchlich sind milli-Junks (1/1024 Teil eines Datensatzes), natürlich für feine Untersuchungen braucht man auch mikro-Junks .... Siehe auch ISO 93422 (Apr.2010)

soweit zu Theorie

Was ich machen muss, ist das Eingreifen auf die Manitude- und Phase-Information. Mit Mittelwerten habe ich nichts gewonnen, ich muss nach der Transformation wieder das Zeitsignal herstellen können.

Vielen Dank

Gottfried
' schrieb:Was ich machen muss, ist das Eingreifen auf die Manitude- und Phase-Information. Mit Mittelwerten habe ich nichts gewonnen, ich muss nach der Transformation wieder das Zeitsignal herstellen können.

So?
[attachment=31845]
...oder habe ich da die Theorie ganz falsch in Erinnerung?


Gruß dimitri
' schrieb:[attachment=61013:Clipboard01.png]
...oder habe ich da die Theorie ganz falsch in Erinnerung?
Das nicht, aber Du wirst doch auch wissen, das das nichts Anderes als eine Filterung ist und daß diese in LV auch billiger zu haben ist:
[attachment=31848]
Die Kunst ist nur, die richtigen Filterkoeffizienten zu bestimmen. Aber das ist eine lösbare Aufgabe.
Der besondere Vorteil der Filterstruktur ist, das damit die Umsetzung auf einen laufenden Datenstrom mit Punkt-zu-Punkt-Filtern überhaupt kein Problem mehr ist.
' schrieb:Das nicht, aber Du wirst doch auch wissen, das das nichts Anderes als eine Filterung ist und daß diese in LV auch billiger zu haben ist:
Hab ich auch gesagt.
' schrieb:Machst du die FFT weil du das Spektrum betrachten möchtest oder willst du wirklich zu Fuß filtern? Wenn du einfach nur filtern willst, würde ich das auf keine Fall selber machen, sondern mir eins der endlosen Filter VIs aussuchen.

Aber vielleicht will Gottfried ja wirklich in den Spektren rumpfuschen...
Hallo,

Dimitri84 hat schon recht, aber 30Minuten mit 40kBps 16Bit tief, da geht Dir nach 10 Sekunden (oder so) der Speicher über. Filterung geht nicht da ich tatsächlich eingreifen muss - mit anderen Worten die Kreuzkorrelation zwischen Eingang und Ausgang ~0

Nix mit Filter.

Meine Idee ist es noch (habe noch nicht aufgegeben :-) den Datenwust in Teile zu zerlegen und einzeln zu behandeln. Wie dann die Übergänge ausschauen - da fehlt mit viel Theorie offensichtlich. Da muss ich zur experimentellen Datenverarbeitung ExDV schreiten.

Danke für Eure Kommentare

Gottfried
' schrieb:Meine Idee ist es noch (habe noch nicht aufgegeben :-)
...warum auch aufgeben.

Zitat:den Datenwust in Teile zu zerlegen und einzeln zu behandeln.
...genau, wie auch sonst.

Zitat:Wie dann die Übergänge ausschauen - da fehlt mit viel Theorie offensichtlich.
Bei einem aperiodischen Signal muss man sich in der Tat entweder für ein amplitudengenaues Spektrum (ohne Fensterung) oder ein frequenzgenaues Spektrum (mit Fensterung) entscheiden, da man nicht einfach Periodenviefachen in die FFT jagen kann. Dein Feind heißt Leck-Effekt (Leakage effect).

Probieren geht über Studieren ...
' schrieb:Dimitri84 hat schon recht, aber 30Minuten mit 40kBps 16Bit tief, da geht Dir nach 10 Sekunden (oder so) der Speicher über.
Das gilt aber nur, wenn man unbedingt auf FFT besteht. Da muß eine riesengroße Matrix aufgespannt werden, so groß, daß das kein normales Memory mehr schafft. Hingegen mit der normalen diskreten Fourier Hin- und Rüktransformaton muß man nur viele Multiplikation summieren, und Memory braucht man dazu überhaupt nicht, wenn man sich die benötigten Samples aus der Zeit-bzw Frequenzfunktion immer direkt von der Harddisk holt. Das Problem ist hierbei nur die Geduld das Operators: Der will vielleicht, wenn er das Programm über Nacht laufen läßt, das Ergebnis am nächsten Morgen schon sehen. Die Anzahl der benötigten Multiplikationen liegt aber in der Größenordnung von Samplezahl zum Quadrat, also hier bei (72E6)^2. Rechnet man für jede Operation 0.1µs, so dauert das insgesamt 7.2E6 s = ca. 80 Tage. (Bei der FFT hätte man hingegen nur ca. (72E6)*2 Operationen, und das würde nur ca 14s dauern. Angaben ohne Gewähr.)

Zitat:Meine Idee ist es noch (habe noch nicht aufgegeben :-) den Datenwust in Teile zu zerlegen und einzeln zu behandeln. Wie dann die Übergänge ausschauen - da fehlt mit viel Theorie offensichtlich. Da muss ich zur experimentellen Datenverarbeitung ExDV schreiten.
Das würde ich auch prinzipell für denkbar handeln, mit einer Einshränkung: Bei der direkten Transformation hätte man ein Frequenzraster df=1/T = 1/(30min) von 0.55 mHz. Zerlegt man den Zeitbereich in z.B 100 Teile, dann ist das Frequenzraster df = 55mHz. D.H die ganz tiefen Frequenzanteile im Bereich 0..55mHz gehen unwiderruflich verloren.

Selbsteinschätzung meines Beitrages: nutzlos, aber von hohem schöngeistigem Wert Mellow
Passiert hier nix mehr Gottfried?
Seiten: 1 2
Referenz-URLs