성균관대 신호 및 시스템(김상효) 최종 프로젝트 코드 및 보고서 입니다.
- 최초 등록일
- 2017.05.23
- 최종 저작일
- 2014.06
- 4페이지/ 한컴오피스
- 가격 2,000원
소개글
‘Do.wav'파일을 wavread 함수를 사용하여 y1의 함수로 불러 온 뒤 20회 sequence의 샘플을 추출해 그를 y2함수로 설정하고 t1과 f1을 통해 시간영역의 x축 및 주파수영역의 x축을 설정하고 fft함수를 이용하여 y2함수를 주파수영역으로 변환 한 뒤 시간영역의 그래프와 주파수영역의 그래프를 구할 수 있었다.
자세한 내용과 소스코드 함께 보고서에 첨부합니다.
문제
1. Preliminary Record your “Do” sound with windows voice recorder for about 3 seconds. Save it as “[filename].wav.” You want to use the format of 48kHz, mono, 16 bit. Call the file from MATLAB using waveread() function. Upsample the sequence by 20 times (use the function interpft(.)) Analyze the frequency domain of the signal (draw it) using proper functions (fft, fftshift, or freqz functions). Find the fundamental frequency of your ‘do’ sound. Do the same for your one octave higher “Do” sound and compare the freq. components of both signals. Leave comments.
목차
1. Preliminary
2. Main
본문내용
1. Preliminary
‘Do.wav'파일을 wavread 함수를 사용하여 y1의 함수로 불러 온 뒤 20회 sequence의 샘플을 추출해 그를 y2함수로 설정하고 t1과 f1을 통해 시간영역의 x축 및 주파수영역의 x축을 설정하고 fft함수를 이용하여 y2함수를 주파수영역으로 변환 한 뒤 시간영역의 그래프와 주파수영역의 그래프를 구할 수 있었다.
- source code
clear
[y1,fs1,nbits]=wavread('Do.wav'); % 파일불러오기
y2=interpft(y1,20*length(y1)); % 20회 sequence 샘플추출
N=length(y2);
t1=(0:N-1)/fs1; % 시간영역
ft1=fft(y2(:,1)); % fft로 변환
f1=(0:N-1)/N*fs1; % 주파수영역
w1=2*pi*f1; % 2*pi*f1을 통하여 각주파수
subplot(2,1,1),plot(t1,y2),grid on,title('Do') % 시간영역에 대한 함수(주파수 영역과 비교위해)
subplot(2,1,2),plot(f1,abs(ft1)),grid on % 주파수영역에 대한 함수
참고 자료
없음