학번 : 2018142125
이름 : 조정빈
파일로 제공 받은 voice의 파형을 time 축에 대하여 나타내면 다음과 같이 나타낼 수 있고 이를 frequency영역에서 나타내면 다음과 같이 나타낼 수 있다.


그러나 이제 주어진 distorted voice file의 시간에 따른 파형과 주파수 영역에서의 파형을 그래프로 나타내면 다음과 같이 나타낼 수 있다.


주어진 파형을 주파수 영역에서 분석해보면 0.1 주변에서 원치 않은 신호가 포함 되어 있음을 확인 할 수 있고, 이를 없애기 위해 FIR filter를 디자인 하여 적용해 보았다.
FIR_Filter1 =[1 -2*cos(0.2*pi) 1];
Output_signal =conv( signal , FIR_Filter1 );
위와 같은 코드를 사용하여 FIR filter를 적용하였고 기본적으로 계수를 살펴보면 [1 -2*cos(0.2*pi) 1] 임을 확인 할 수 있다. 이러한 계수를 적용한 이유는 다음과 같다.


오른쪽 그림과 같은 cascade된 notch filter의 block diagram의 transfer function을 살펴보면 왼쪽과 같이 나온다. 이때 오메가 제로가 우리가 없애고 싶은 signal의 주파수 이기 때문에 오메가 제로를 0.1로 맞추었다. 그러나 이때, 0.1은 normalized된 주파수 이므로 실제 오메가 제로를 계산하면 0.1에 2* $\pi$를 해줘야 한다. 최종적으로 오메가 제로는 0.2$\pi$ 가 된다. 이제 디자인한 필터를 distorted signal과 시간 영역에서 convolution을 하면 원하지 않았던 신호는 제거 되고 원래 신호를 복원할 수 있게 된다. 복원된 신호의 시간영역에서의 그래프와 주파수 영역에서의 그래프는 다음과 같이 만들어 진다.


우리가 디자인한 filter의 주파수 영역에서의 magnitude와 phase를 살펴보면 다음과 같다.


잘 살펴보면 0.1에서 0임을 확인 할 수 있고, phase가 0.1에서 파이 만큼 움직였음을 확인 할 수 있다.
해당 문제는 unknown으로 주어진 음성파일에 두부분의 주파수 영역에서 distortion이 일어난 것을 없애는 필터를 디자인하는 것이였다.
우선 주어진 파일의 시간영역과 주파수 영역에서의 파형을 살펴보면 다음과 같았다.