Revision as of 08:49, 18 November 2011 by Liu85 (Talk | contribs)

Up sampling and Down sampling

Abstract

Filtering a signal by up samping in matlab is able to change the original frequency of the signal by a mutiplying it with an integer, and filtering a signal by down samping in matlab is able to change the original frequency of the signal by a dividing it by an integer. For example, by using the method above, a pure frequency signal with pitch C can be transfer to #C or bC. However, if the signal C needs to be transfer to D or F, then simply mutiplying or dvivding the original frequency by integer is not going to work. Instead, the original frequency needs to be mutiplied by a fraction number. Thus the goal of this project is to design a Matlab function to mutiply the input signal frequency by a fraction to make a small change of the pitch of the input signal.

Theory

Up-Sampling is a "Zero-Padding Procedure" that increase the number of samples of a DT signal. More specificals, when up sampling, zeros are added between the samples of a signal. Down-Sampling is to decrease the sample size. In the other word, it divides the input signal into segments, and pick a point from each segment to form a new signal.


Relevant Source http://en.wikipedia.org/wiki/Upsampling http://en.wikipedia.org/wiki/Downsampling


Procedure

  1. Let input be a pure frequency, i.e. a sine wave function. Up sample by factor of 5 then down sample by factor 3. To avoid aliasing, the filter was build by MATLAB embedded function "fir1" with order= 20, cut-of frequency =1/5.

Fig1


According to above graph, the output signal is up-sampled by 5/3


Fig2


In frequency domain, the signal was decreased by factor of 3/5, as the figure indicated above.


Fig3

We can see the energy concentrate at 800 Hz and 500 Hz for input and output respectively. Fig4 Fig5 Fig6

Alumni Liaison

Abstract algebra continues the conceptual developments of linear algebra, on an even grander scale.

Dr. Paul Garrett