Es scheint, dass Sie das Spektrum berechnen, indem Sie 10 Fenster mitteln (nicht überlappend?), Um die Größe bei 8192- oder 8193-Frequenzen im Quadrat zu erhalten (von 0 bis Nyquist, aber einige Algorithmen können die Nyquist-Frequenz bei Bin 8192 verringern).
Als erstes muss überprüft werden, ob sich der Peak im rechten Bin befindet. Sie haben nicht gesagt, wie hoch die Abtastrate ist, aber Bin 743 wäre das 743/16384-fache der Abtastrate. Wenn das Signal tatsächlich bei 800 Hz liegt, liegt Fs bei ungefähr 17640 Abtastungen / Sekunde. Das scheint falsch. Ihr Testsignal würde wahrscheinlich eine Standardrate wie 8000, 16000, 22050, 32000, 44100 oder 48000 haben. Für Fs = 22050 wäre der Peak scharf in Bin 800/22050 * 16384 = 594.
Ein weiteres zu überprüfendes Kriterium ist, dass die Gesamtenergie im Signal sowohl im Zeit- als auch im Frequenzbereich ungefähr gleich ist. Hier ist ein Beispiel in Python:
In [1]: NFFT = 2048; N = 10*NFFT; n = arange(N); Fs = 22050
In [2]: x = 0.4*cos(2*pi*400/Fs*n) + 0.6*cos(2*pi*800/Fs*n)
In [3]: y,freqs = psd(x, NFFT=NFFT, Fs=Fs, pad_to=16384) # PSD by Welch's Method
In [4]: sum(x**2)/Fs # time-domain energy
Out[4]: 0.24149869319296949
In [5]: sum(y) * N/16384 # frequency-domain energy
Out[5]: 0.24148752834391252
Das Eingangssignal x, das aus zwei Sinuskurven besteht, die mit Fs = 22050 Abtastungen / Sekunde abgetastet werden, ist in 10 nicht überlappende Fenster der Größe NFFT = 2048 Abtastwerte unterteilt. Der Aufruf von psd (Leistungsspektraldichte) berechnet das Spektrum y als Durchschnitt der Größe im Quadrat von zehn 16384-Punkt-DFTs (tatsächlich sind es 8193 Punkte, da x ein reeller Wert ist).
Die berechnete Frequenzdomänenenergie hat einen Skalierungsfaktor von N / 16384, da die psd-Funktion y auf die DFT-Größe anstatt auf die Gesamtsignallänge skaliert. Ob dies ein Problem ist oder nicht, hängt davon ab, wie Ihr System mit der Normalisierung der PSD umgeht. Eine weitere optionale Normalisierung ist die Skalierung um 1 / Fs. Dies passt die Energie an das ursprüngliche analoge Signal an. Die Standardnormalisierungen sollten in der Bibliothek gut dokumentiert sein.