Theory/DSP

[MATLAB 실습 09] 샘플링 주파수 변경 (22.11.23)

Orangetasteboy 2023. 6. 14. 23:08

오디오 신호나 통신 신호 처리에 있어 처음 샘플링된 신호는 다른 샘플링 주파수로 변환하는 과정이 필요하다. 샘플링 rate 변환하는 방법은 아래 그림과 같이 이루어질 수 있다. 샘플링 rate를 높이기 위해 입력 신호는 업 샘플링 후 Low pass filter를 통과한다. 샘플링 rate를 낮추기 위해 입력 신호는 Low pass filter 통과 호 다운 샘플링을 한다. 다운 샘플링하여 분수(L/M) 샘플링 rate 변환을 이룰 수 있다. 분수(L/M) 비율 샘플링 변환하기 위해 신호는 업 샘플링 후 Low pass filter를 통과한 후 다운 샘플링하여 분수 비율 샘플링 rate 변환한다.

 

● 업 샘플링

● 다운 샘플링

● 분수비율 샘플링 rate 변환


I. 정현파신호를 사용한 실험

1. 신호 x(t)를 샘플링 주파수(FS= 1,000 Hz)로 샘플링하여 discrete time signal x[n] 1,000개를 만들어 낸다.

2. x[n]DFT를 이용하여 스펙트럼(주파수)을 확인하세요.

400Hz, 900Hz, 1100Hz, 1600Hz에서 주파수가 나타난다.

 

3. 3배 업 샘플링 rate 변환

(1) filterDesigner을 이용하여 FIR Low Pass Filter(샘플링 rate 3배 변환인 경우 sampling rate=3000Hz, stopband 주파수=

π/3= 1500/3=500Hz)를 설계하시오. (Passband frequency(500Hz), Stopband frequency 550Hz, stopband attenuation(-40dB), Passband ripple(2dB) 정도 주면 될 것입니다.)

(2) x[n]을 샘플링 주파수를 3000Hz(3)로 변경된 신호 y[n] 만들어내시오.

(3) y[n]DFT를 이용하여 스펙트럼(주파수)를 확인하시오.

200Hz, 450Hz, 2550Hz, 2800Hz에서 주파수가 나타난다.

 

(4) 살아있는 주파수는 얼마인가? 샘플링 주파수 1500Hz를 사용하면 750Hz 주파수까지 재생 가능하다.

 

어떤 주파수도 살아남지 않게 되었다.

 

4. 1/2배 다운 샘플링 rate 변환

(1) filterDesigner을 이용하여 FIR Low Pass Filter(샘플링 rate 1/2배 변환인 경우 sampling rate=1000Hz, stopband 주파수=π/2= 500/2=250 Hz)를 설계하시오. (Passband frequency(250Hz), Stopband frequency 280Hz, stopband attenuation(-40dB), Passband ripple(2dB) 정도 주면 될 것입니다.)

(2) x[n]을 샘플링 주파수를 500Hz(1/2)로 변경된 신호 y[n] 만들어내시오.

(3) y[n]DFT를 이용하여 스펙트럼(주파수)를 확인하시오.

(4) 살아있는 주파수는 얼마인가?

 

어떤 주파수도 살아남지 않게 되었다.

 

(5) 샘플링 변환 과정에서 LPF를 사용하지 않고 Down-sampling하여 z[n] 신호를 만들어내시오.

7. z[n]신호를 DFT하여 어느 스펙트럼이 나타나는지 확인하시오.

50Hz, 200Hz, 300Hz, 450Hz에서 주파수가 나타난다.


II. 실제 음성 데이터를 사용한 실험

1. 음성데이타 (speech.wav,샘플링 주파수=8,000Hz)를 읽어 온 후 샘플링 주파수를 12,000Hz로 변경하시오.

(filterDesigner을 이용하여 FIR Low Pass Filter(샘플링 rate 3/2변환인 경우 sampling rate=24,000Hz, stopband 주파수=π/3=12,000/3=4,000Hz)를 설계하시오. (Passband frequency(4000Hz), Stopband frequency 4500Hz, stopband attenuation(-40dB), Passband ripple(2dB) 정도 주면 될 것입니다.)

2. 원음, 샘플링 rate 변환된 신호의 DFT를 구하고 주 신호의 특징을 비교하시오.

주파수 스펙트럼은 같으나 신호의 크기가 작아졌다.

 

3. 샘플링 주파수가 변경된 음성을 청취하여 원래의 음성과 차이점을 쓰시오 (소리를 듣는 방법: sound(z, 12000);)

소리는 그대로 들리지만 소리의 크기가 작아졌다.

 

4. I.6 과정과 같이 LPF를 사용하지 않고 샘플링 rate(12,000Hz) 변환을 하시오.

5. 원음, 샘플링 rate 변환된 신호의 spectrogram을 구하고 두 신호의 특징을 비교하시오.(spectrogram(z,256,200,256,'yaxis');

aliasing이 발생하였다.

 

6. 음성을 청취하였을 때 소리는 어떻게 들리는지 적으시오.