STFT e ISTFT invertibles en Python
¿Hay alguna forma de propósito general detransformada de Fourier a corto plazo con la transformación inversa correspondiente integrada en SciPy o NumPy o lo que sea?
Ahí está la tramaspecgram
funciona en matplotlib, que llamaax.specgram()
, que llamamlab.specgram()
, que llama_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
Esta es una función auxiliar que implementa la similitud entre 204 #psd, csd y espectrograma. EstáNO destinado a ser utilizado fuera de mlab
Sin embargo, no estoy seguro de si esto se puede usar para hacer un STFT e ISTFT. ¿Hay algo más o debería traducir algo comoestas funciones de MATLAB?
Sé cómo escribir mi propia implementación ad-hoc; Solo estoy buscando algo con todas las funciones, que pueda manejar diferentes funciones de ventanas (pero tiene un valor predeterminado sensato), es completamente invertible con ventanas COLA (istft(stft(x))==x
), probado por varias personas, sin errores fuera de uno, maneja bien los extremos y el relleno de cero, implementación rápida de RFFT para entrada real, etc.