私はMATLABスクリプトをPythonに変換しようとしていますが、scipy v。0.17.0を使用してMATLAB 2012aとPythonの間のspectrogram
関数の結果にわずかな違いがあります。 MATLABで私がコードしている:データは約15000点の一次元アレイであり、ここでPPは、各セクションのPSDをscipyとmatlabスペクトラムの違い
WINDOW = 240;
NOVERLAP = 180;
NFFT = 1024;
Fs = 4;
[~,F,T,PP] = spectrogram(data,hanning(WINDOW),NOVERLAP,NFFT,Fs);
与えます。私は似ているが同一ではない結果を得る - 私は、出力(PythonのMATLAB)を比較すると
from scipy.signal.spectral import spectrogram
WINDOW = 240
NOVERLAP = 180
NFFT = 1024
Fs = 4
[f, ts_i, pp] = spectrogram(data, fs=Fs, window='hanning', nperseg=WINDOW,
noverlap=NOVERLAP, nfft=NFFT, detrend=False)
:Pythonで
のコードは次のようになります。以下は、 のPythonとMATLABの結果を最初のセグメントの画像で示したもので、絶対的な差異 を1点ずつプロットしたものです。この動作は他のセグメントと同様です。再び 違いは大きくありませんが、私はこれらの違いの原因が究極の であるのが不思議です。