FFT 되는 신호의 중간에 upsampling을 하고 그 결과가 어떻게 되는지를 확인해 보자
다음과 같은 sin() 그래프가 있고 이에 대한 FFT 를 수행해보자
pha = linspace(0,2*pi,32)';
x=sin(pha);
y=fft(x);
figure(1), plot(pha,x,'b:.'), grid on
다음과 같이 x 의 값에 3 sample 씩 upsample 을 하고 그에 대해 FFT 를 해보자.
xZero = upsample(x,3);
yy=fft(xZero);
x 에 대한 fft 결과인 y 값과 upsample 된 신호에 대한 fft 결과인 yy 를 같이 그리기 위하여 다음과 같이 x 축을 설정하고 FFT 결과에 대한 절대값 그래프 및 위상값을 확인해 보자.
x_axis=0:length(x)-1;
x2_axis= length(x)/length(xZero)*(0:length(xZero)-1);
h2= figure('units', 'normalized', 'pos',[0.5 0.5 0.4 0.4]);, plot(x_axis,abs(y),'r:*' , x2_axis, abs(yy),'b-->'), grid on, title('| FFT reselt |'),legend('Original','Zero padded')
h3= figure('units', 'normalized', 'pos',[0.5 0 0.4 0.4]);, plot(x_axis,unwrap(angle(y)),'r:*' , x2_axis, unwrap(angle(yy)),'b-->'), grid on, title('angle(FFT reselt )'),legend('Original','Zero padded')
위의 결과에서 확인할 수 있는 것과 같이 upsample 수 만큼 반복 특성이 발생한다는 것을 확인 할 수 있다.
'programming language > MATLAB' 카테고리의 다른 글
MATLAB tip, Shortcuts 을 이용해 보자 (0) | 2011.02.08 |
---|---|
MATLAB movie() 함수를 이용하여 움직이는 그래프를 만들어보자 (12) | 2010.01.19 |
MATLAB String evaluation, eval() (4) | 2010.01.17 |
MATLAB filter, filtic 함수를 이용한 이산 시스템 응답 (609) | 2010.01.13 |
MATLAB 음성 파일 읽기, 재생 (0) | 2010.01.08 |
변수의 크기를 알아보자 (0) | 2010.01.08 |
MATLAB PDF (Probability Density Function) (5) | 2010.01.03 |
MATLAB Zero padding 에 따른 FFT 결과 (0) | 2010.01.03 |
댓글