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

📄 guoling.m

📁 语音处理平台 可以分析语音能量 第一振峰频率等数据
💻 M
字号:
%过零率

close all;
clc;

PV=[235 180 664 463];

m_gui_win_h=figure('Position',PV,...
		'Resize','off',...
		'Numbertitle','off',...%'color',BACK_COLOR,...
		'Name','过零率');
    
set(m_gui_win_h,'MenuBar','none');

uicontrol('Style','frame',...
      'Position',[5 5 180 455],...
      'Callback',[]);

  
  uicontrol('Style','pushbutton',...
      'Position',[10 400 165 30],...
      'FontSize',10.0,...
      'String','载入语音',...
      'Callback','loadsp');
   
   m_gui_pb_speechegg_h=uicontrol('Style','pushbutton',...
      'Position',[10 350 165 30],...
      'FontSize',10.0,...
      'String','各帧振幅能量 ',...
      'Callback','zhenfu');

   m_gui_pb_formant_h=uicontrol('Style','pushbutton',...
      'Position',[10 300 165 30],...
      'FontSize',10.0,...
      'String','过零率',...
      'Callback','guoling');
   
   m_gui_pb_vocos_h=uicontrol('Style','pushbutton',...
      'Position',[10 250 165 30],...
      'FontSize',10.0,...
      'String','基音周期',...
      'Callback','jiyin');
   

   m_gui_pb_time_h=uicontrol('Style','pushbutton',...
      'Position',[10 200 165 30],...
      'FontSize',10.0,...
      'String','共振峰频率',...
      'Callback','gongzhen');

   
   m_gui_pb_vocalfold_h=uicontrol('Style','pushbutton',...
      'Position',[10 150 165 30],...
      'FontSize',10.0,...
      'String','自相关函数',...
      'Callback','zixiangguan');

   
   m_gui_pb_formanttrk_h=uicontrol('Style','pushbutton',...
      'Position',[10 100 165 30],...
      'FontSize',10.0,...
      'String','平均幅度差',...
      'Callback','fuducha');
uicontrol('Style','pushbutton',...
      'Position',[10 50 165 30],...
      'FontSize',10.0,...
      'String','返回',...
      'Callback','main_can_shu_fen_xi');
  
ax1=axes('Position',[235 180 664 463]);
axes('Position',[.36 .1 .60 .77],'Box','on','Visible','on');
s=A;
fs=FS;
n=5;fc1=60;fc2=900;
[b,a]=butter(n,[fc1/(fs/2) fc2/(fs/2)]);
y=filter(b,a,s);
total=length(y);
    W=rectwin(640);
    for i=1:(total/160-3)
        for j=1:640,
             B(i,j)=y(j+(i-1)*160)*W(j);
        end
    end

[nrows,ncols]=size(B);
for i=1:nrows,
    G(i)=0;
    for j=1:ncols-1,
        G(i)=G(i)+abs( sgn(B(i,j+1)) - sgn(B(i,j)));
    end
    G(i)=G(i)/2;
end
plot(G);xlabel('语音帧数');ylabel('语音短时过零率/次');title('语音短时过零率分析');

⌨️ 快捷键说明

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