Start out with a signal 256 pixels long and interpolate this directly using the Fourier transform into a signal which has 1024 points
1 ビュー (過去 30 日間)
Start out with a signal 256 pixels long and interpolate this directly using the Fourier transform into a signal which has 1024 points. I'm fairly new to MATLAB but I understand this is using interpft(x,n) and I tried using the example given on the website but I keep getting a weird result. Can anyone tell me what I'm missing/doing wrong? Thank you!!
回答 (1 件)
J. Webster 2016 年 4 月 13 日
Not exactly sure what you're doing. But I think you should look up something called Nyquist Upsampling.
The method is you take the fourier transform of your data, then zero-pad the transform so that it has as many samples as you need (1024). Then do an inverse transform. The result will have 1024 numbers in the array. This, I think, is faster and cleaner than using interpolation.
Remember that the transform output will have positive frequencies first, then negative frequencies reversed, so be careful where you put the zeros.