Existe-t-il une forme polyvalente de transformée de Fourier à court terme avec la transformation inverse correspondante intégrée dans SciPy ou NumPy ou autre ?
Il y a le pyplot specgram
dans matplotlib, qui appelle ax.specgram()
qui appelle mlab.specgram()
qui appelle _spectral_helper()
:
#The checks for if y is x are so that we can use the same function to #implement the core of psd(), csd(), and spectrogram() without doing #extra calculations. We return the unaveraged Pxy, freqs, and t.
pero
Il s'agit d'une fonction d'aide qui implémente le point commun entre le 204 #psd, csd, et spectrogramme. Elle est PAS destiné à être utilisé en dehors de mlab
Je ne suis pas sûr que cela puisse être utilisé pour faire une STFT et une ISTFT, cependant. Y a-t-il autre chose, ou dois-je traduire quelque chose comme ces fonctions MATLAB ?
Je sais comment écrire ma propre implémentation ad-hoc ; je recherche simplement quelque chose de complet, qui puisse gérer différentes fonctions de fenêtrage (mais qui ait une valeur par défaut saine), qui soit totalement inversible avec COLA Windows ( istft(stft(x))==x
), testé par plusieurs personnes, pas d'erreurs de type "off-by-one", gère bien les extrémités et le remplissage du zéro, implémentation RFFT rapide pour une entrée réelle, etc.
0 votes
Je cherche exactement la même chose, similaire à la fonction "spectrogramme" de Matlab.
0 votes
@khpeek Voir matplotlib.org/api/mlab_api.html#matplotlib.mlab.specgram
0 votes
SciPy dispose de cette fonctionnalité : scipy.github.io/devdocs/generated/scipy.signal.stft.html