[MATLAB] Convolution 연산을 하는 코드(자체함수 미사용)
- 최초 등록일
- 2010.09.09
- 최종 저작일
- 2009.04
- 15페이지/ 한컴오피스
- 가격 1,500원
소개글
MATLAB에서 제공하는 conv함수를 사용하지 않고 Convolution 연산을 하는 코드입니다.
목차
I. Project에 대한 SWOT 분석
II. 주차별 계획
III. 회의록
1. 회의록 #1
2. 회의록 #2
3. 회의록 #3
4. 회의록 #4
5. 회의록 #5
IV. Project의 구체적 내용
1. 주어진 조건
2. 해결 과제
3. 기본 이론
V. 내용 정리 및 결과 분석
본문내용
IV. Project의 구체적 내용
1. 주어진 조건
65536 bytes로 구성된 `input_sample.raw`는 에 해당되고 input_sample은 signed char input으로서 65536개의 input sample로 구성되어 있다. 또한 Impulse response 은 다음과 같이 주어진다.
2. 해결 과제
(1) 을 수행하는 프로그램 작성하여라.
(2) 의 Fourier Transform 및 의 Fourier Transform 을 계산한 후 를 계산한다. 를 inverse Fourier Transform -> 하는 프로그램 작성하여라.
(3) (1), (2) 프로그램 결과 분석하라.
3. 기본 이론(1) Convolution
Convoultion은 Digital Signal Processing에서 많이 사용되는 계산이고, 수식으로 나타내면 와 같이 나타낸다. Filtering도 Convolution (Time Domain)으로 계산된다. convolution에 대해 더욱 알아보면 Convolution은 LTI System에서 정의된다. Convolution을 유도하기 위해서도 LTI System이란 조건이 필요하다. Linear Time-Invariant란 선형적이고 시간에 따라 특성이 변하지 않음을 의미한다.
(2) Fourier Transform
퓨리에 변환을 하는 이유는 시간축 상에서 Convolution 계산을 해야 하는 것을 퓨리에 변환하여 주파수 영역으로 넘김으로써 곱 연산으로 쉽게 계산이 가능하여 지고, 오차가 줄어들게 되어 신호처리를 하는 데에 매우 편리하게 쓰인다. 수식으로 표현하면 다음과 같이 나타낼 수 있다.
참고 자료
없음