⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main2.m

📁 Spectrogram function in matlab [For speech]
💻 M
字号:
clc;
close all;
clear all;

%**************************************************************************
[inp1 Fs1 nb1]=wavread('FF1.wav');
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

%Spectrogram_V4(inp,Fs,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL)
%   SEGSIZE        => SEG SIZE
%   OVERLAP        => OVERLAP SIZE 
%   PREEMPH        => 1 FOR PREEMPHASIS
%   A              => PREEMPHASIS FILTER COEFFICIENT  
%   SPEC_EXP       => (0 TO 1) CONTROL THE CONTRAST  
%   CLR            => 1 FOR COLOR SPECTROGRAM   
%   XL, YL         => 1 TO DISPLAY LABEL 

figure('Name','segsize=64, 128, 256');
segsize=64; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(311); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=0.6; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(312); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=256; overlap=segsize/2; PREEMPH=1; A=0.2; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(313); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);


figure('Name','overlap=segsize, segsize/2, segsize/4');
segsize=128; overlap=segsize; PREEMPH=1; A=0.99; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(311); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=0.99; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(312); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/4; PREEMPH=1; A=0.99; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(313); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);

figure('Name','A=1, 0.6, 0.2');
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(311); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=0.6; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(312); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=0.2; SPEC_EXP=0.25; CLR=1; XL=1; YL=1;
subplot(313); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);

figure('Name','SPEC_EXP=0.1, 0.3, 0.5');
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.1; CLR=1; XL=1; YL=1;
subplot(311); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.3; CLR=1; XL=1; YL=1;
subplot(312); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.5; CLR=1; XL=1; YL=1;
subplot(313); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);

figure('Name','SPEC_EXP=0.1, 0.01, 0.001');
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.1; CLR=1; XL=1; YL=1;
subplot(311); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.01; CLR=1; XL=1; YL=1;
subplot(312); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.001; CLR=1; XL=1; YL=1;
subplot(313); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);

figure('Name','PREEMPH=1, PREEMPH=0 & SPEC_EXP=0.1');
segsize=128; overlap=segsize/2; PREEMPH=1; A=1; SPEC_EXP=0.1; CLR=1; XL=1; YL=1;
subplot(211); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);
segsize=128; overlap=segsize/2; PREEMPH=0; A=1; SPEC_EXP=0.1; CLR=1; XL=1; YL=1;
subplot(212); Spectrogram_V4(inp1,Fs1,segsize,overlap,PREEMPH,A,SPEC_EXP,CLR,XL,YL);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -