Tuesday, 14 March 2017

Overlap Save method and Overlap Add method

Overlap Save method (OSM) and Overlap Add method (OAM) are used to compute DFT  when the length of the signal is large. eg video or audio signal.
In OAM the input signal is divided into small chunks with equal length. Then the convolution of these small groups with the second signal is carried out. he output of this gets overlapped depending upon the length of the chunks. Thus the final output is the addition of the all the overlapped values.
In OSM we divide the output in small chunks and use only the required input values to get the output.
Both OAM and OSM require same amount of memory as the number of computations is the same.

Fast Fourier Transform

Fast Fourier Transform ( FFT ) is used instead of Discrete Fourier Transform as the number of calculations required are less in FFT which in turn increases the speed of processor. This is because the signal is divided into two parts and computations are carried out only for N/2 signal values which reduces the calculations.
FFT of a 4 pt sequence and an 8 pt sequence were calculated. It was observed that the first value was the sum of all the values of the input. Later a counter was used in the code to count the number of calculations required.

Discrete Fourier Transform

Discrete Fourier Transform  ( DFT )  is used to convert from time domain to frequency domain. We calculated DFT of a four point sequence , zero paded signal and an expanded signal. Magnitude spectrum was plotted as well for all the cases.
It was observed that as the length of the signal increases, frequency spacing decreases , approximation error decreases while the resolution of spectrum increases. Along with this the number of multiplications and additions also increase which is why DFT is computationally slow

Convolution and Correlation

In this experiment we performed convolution, Circular convolution, Linear using Circular convolution and Auto and Cross correlation.Convolution is used to find output of the system while Correlation is used to find the degree of similarity between two signals. C language was used for programming.
For Convolution it was observed that for every causal input signal the corresponding output was also causal. In circular convolution the output obtained for the first few values was aliased or overlapped with values beyond N.
Auto Correlation of delayed signal is same as that of the actual signal. For Cross correlation it was observed that output gets scaled by same factor as that of the input