Skip to main content
edited body
Source Link
alireza
  • 117
  • 4

Suppose that we have a signal with a length of 4096 and want to down sample it by a factor of 2 and obtain a signal with a length of 20242048.

Suppose that the the maximum frequency content of the signal is low enough that we do not have any concern about aliasing.

Obviously, the direct way is to keep every sample with an odd index and discard others.

Can we also take the FFT of signal, then omit samples from 1023-th index up to 3071-th index and then taking IFFT?

Note that samples from 1023-th index to 3071-th correspondscorrespond to frequencies from -Fs/2 to -Fs/4 and Fs/4 to Fs/2.

I have tried this myself. I produced an example signal which is $sin(2*\pi*t*10000) + cos(2*\pi*t*50000)$. I down sampled it using both the direct time domain method and the described frequency domain method. The result is this:

enter image description here

The blue trace is resulted from the frequency domain method and the red line is resulted from the direct time domain method.

As you can see, in the first samples, the signals differ. But after that, they match. Why do they differ in the beginning? Do you think that I have done something wrong and that if everything was correct I should have achieved identical signals?

Suppose that we have a signal with a length of 4096 and want to down sample it by a factor of 2 and obtain a signal with a length of 2024.

Suppose that the the maximum frequency content of the signal is low enough that we do not have any concern about aliasing.

Obviously, the direct way is to keep every sample with an odd index and discard others.

Can we also take the FFT of signal, then omit samples from 1023-th index up to 3071-th index and then taking IFFT?

Note that samples from 1023-th index to 3071-th corresponds to frequencies from -Fs/2 to -Fs/4 and Fs/4 to Fs/2.

I have tried this myself. I produced an example signal which is $sin(2*\pi*t*10000) + cos(2*\pi*t*50000)$. I down sampled it using both the direct time domain method and the described frequency domain method. The result is this:

enter image description here

The blue trace is resulted from the frequency domain method and the red line is resulted from the direct time domain method.

As you can see, in the first samples, the signals differ. But after that, they match. Why do they differ in the beginning? Do you think that I have done something wrong and that if everything was correct I should have achieved identical signals?

Suppose that we have a signal with a length of 4096 and want to down sample it by a factor of 2 and obtain a signal with a length of 2048.

Suppose that the the maximum frequency content of the signal is low enough that we do not have any concern about aliasing.

Obviously, the direct way is to keep every sample with an odd index and discard others.

Can we also take the FFT of signal, then omit samples from 1023-th index up to 3071-th index and then taking IFFT?

Note that samples from 1023-th index to 3071-th correspond to frequencies from -Fs/2 to -Fs/4 and Fs/4 to Fs/2.

I have tried this myself. I produced an example signal which is $sin(2*\pi*t*10000) + cos(2*\pi*t*50000)$. I down sampled it using both the direct time domain method and the described frequency domain method. The result is this:

enter image description here

The blue trace is resulted from the frequency domain method and the red line is resulted from the direct time domain method.

As you can see, in the first samples, the signals differ. But after that, they match. Why do they differ in the beginning? Do you think that I have done something wrong and that if everything was correct I should have achieved identical signals?

edited tags
Link
Source Link
alireza
  • 117
  • 4

Can we do down sampling by taking fft, omitting samples on the ends of the spectrum, and then taking inverse fft?

Suppose that we have a signal with a length of 4096 and want to down sample it by a factor of 2 and obtain a signal with a length of 2024.

Suppose that the the maximum frequency content of the signal is low enough that we do not have any concern about aliasing.

Obviously, the direct way is to keep every sample with an odd index and discard others.

Can we also take the FFT of signal, then omit samples from 1023-th index up to 3071-th index and then taking IFFT?

Note that samples from 1023-th index to 3071-th corresponds to frequencies from -Fs/2 to -Fs/4 and Fs/4 to Fs/2.

I have tried this myself. I produced an example signal which is $sin(2*\pi*t*10000) + cos(2*\pi*t*50000)$. I down sampled it using both the direct time domain method and the described frequency domain method. The result is this:

enter image description here

The blue trace is resulted from the frequency domain method and the red line is resulted from the direct time domain method.

As you can see, in the first samples, the signals differ. But after that, they match. Why do they differ in the beginning? Do you think that I have done something wrong and that if everything was correct I should have achieved identical signals?