Forum: Digitale Signalverarbeitung / DSP / Machine Learning Stützpunkte bei der fft in scilab


von Philipp M. (matei)


Lesenswert?

Hallo,

ist es moglich, bei der fft in scilab die Stützpungte logeritmisch 
aufzuteilen, bzw. bei tiefen Frequenzen mehr Stützpunkte und bei hohen 
Frequenzen weniger Stützpunkte zu haben. Oder die fft oktavenmäßig 
aufzuteilen.
Mache die fft bei einem Audiosignal von 10Hz - 20kHz.

Danke Philipp

von Kleinster Gemeiner Nenner (Gast)


Lesenswert?

Nein. Das musst Du selber zusammenfassen.

von Philipp M. (matei)


Lesenswert?

Was kann ich unter zusammenfassen verstehen?

von Philipp M. (matei)


Lesenswert?

Hallo

Das untere Programm läd eine wav und korreliert linken und rechten 
Kanal.
Die Anzahl der Stützpunkte im unteren Frequenzbereich ist jedoch zu 
niedrig. Noch mehr Punkte möchte ich nicht gern benutzen da das Programm 
zu rechenintensiv ist und zu lang dauert.
Die Idee wäre die fft in Frequenzbänder zu unterteilen, wenn das möglich 
ist.
Vielleicht hat ja jemand eine Ansatz.

Vielen Dank Philipp



I = [];
V = [];
F_V = [];
F_I = [];
F_abs_V = [];
F_abs_I = [];
F_abs_cross =[];
mittel = [];
gstacksize('max')
stacksize('max')


I_V = loadwave("C:\Programme\scilab-5.2.2\wave\Messung48kHz.wav");

fenster = 10000;
ansmess = 5;

mittelg = [fenster];

first = 1;
last = fenster;
j = 1;

for i = 1:ansmess

    j = 1;

    for n = first:last

        V(1,j) = I_V(1,n);
        I(1,j) = I_V(2,n);

        j = j + 1;

    end;

    first = first + fenster;
    last = last + fenster;



    F_V = fft(V);

    F_abs_V = abs(F_V);


    F_I = fft(I);

    F_abs_I = abs(F_I);


    F_abs_cross = F_abs_I ./ F_abs_V;

    mittel = mittel + F_abs_cross;

end;

mittel = mittel / ansmess;


x = 1:fenster;
x = x * 48000/fenster;

plot2d(x, mittel, logflag = "ll");

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.