Có bất kỳ hình thức có mục đích chung nào là short-time Fourier transform với biến đổi nghịch đảo tương ứng được tích hợp vào SciPy hoặc NumPy hay bất kỳ thứ gì không?STFT và ISTFT nghịch đảo trong Python
Có những pyplot specgram
chức năng trong matplotlib, trong đó kêu gọi ax.specgram()
, trong đó kêu gọi mlab.specgram()
, trong đó kêu gọi _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.
nhưng
Đây là một chức năng helper mà thực hiện các sự tương đồng giữa 204 #psd, csd và phổ. Đó là KHÔNG nghĩa là để được sử dụng bên ngoài mLab
Tôi không chắc chắn nếu điều này có thể được sử dụng để làm một STFT và ISTFT, mặc dù. Có gì khác không, hoặc tôi nên dịch một cái gì đó như these MATLAB functions?
Tôi biết cách viết triển khai ad-hoc của riêng mình; Tôi chỉ đang tìm một cái gì đó đầy đủ tính năng, có thể xử lý các chức năng cửa sổ khác nhau (nhưng có một mặc định sane), hoàn toàn không thể đảo ngược với các cửa sổ COLA (istft(stft(x))==x
), được thử nghiệm bởi nhiều người, không có lỗi từng cái một, xử lý kết thúc và không có đệm tốt, RFFT thực hiện nhanh chóng cho đầu vào sản, vv
Tôi đang tìm chính xác điều tương tự, tương tự như chức năng "quang phổ" của Matlab. –
@khpeek Xem http://matplotlib.org/api/mlab_api.html#matplotlib.mlab.specgram – endolith
SciPy hiện có: http://scipy.github.io/devdocs/generated/scipy.signal.stft.html – endolith