2017-02-15 1 views
0

현재 음성 처리 과정에 대한 프로젝트를 진행하고 있으며 시간 파형 플롯과 a/스페인어 (aire)의 말.MATLAB의 3-D 플롯 포함 : 시간, 주파수 및 전력 스펙트럼 밀도

시간, 주파수, 전력 스펙트럼 밀도의 함수로서, 각 단어 신호의 3-D 플롯을 만들기 다음과 같이

프로젝트의 다음 부분이다. 분석 시간 단계는 20ms 여야하며 전력 밀도는 75 % 겹친 해밍 창과 FFT를 사용하여 계산해야합니다. 시간과 주파수가 변할 때 신호 특성을 가장 잘 강조하는보기 각도를 선택하십시오.

나는 누군가가 나에게이 부분을 시작하는 방법에 대한 지침을 줄 수 있기를 희망했다. 나는 Spectrogram and Instantaneous Frequency 제목 아래에서 here을보고 시작했으나 스크립트에 PSD를 추가하는 방법을 알지 못했습니다.

감사합니다.

답변

2

예를 들어 보겠습니다.

선형 짹짹 신호를 생성하려고합니다.

Fs = 1000; 
t = 0:1/Fs:2; 
y = chirp(t,100,2,300,'linear'); 

그리고, 내가 FFT의 수와 해밍 창을 정의하기 위하여려고하고있다.

nfft=128; 
win=hamming(nfft); 

그리고 나서 nfft의 75 %를 정의 할 예정입니다.

그런 다음 스펙트로 그램 기능을 사용하여 STFT를 수행하고 있습니다.

[s,f,t,pxx] = spectrogram(y,win,nOvl,nfft,Fs,'psd'); 

'Y'시보 '이기'창 해밍 정의 'nOvl는'오버랩 수이고, 'NFFT는'FFT의 수가되고, 'FS'는 샘플링 주파수, 및 "PSD"브랜드이다 그 결과, 전력 스펙트럼 밀도로서의 pxx.

마지막으로 폭포수 그래프를 사용하여 'pxx'를 플롯하려고합니다.

waterfall(f,t,pxx') 
xlabel('frequency(Hz)') 
ylabel('time(sec)') 
zlabel('PSD') 

FFT의 길이는 20ms에 해당하며 신호의 샘플링 주파수에 따라 다릅니다.

EDIT : 폭포수 그래프를 그릴 때, 나는 t와 f 축을 바꾸기 위해 pxx를 교체했다.

+0

Genius. 무리 감사! –

관련 문제