• 大小: 44KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-14
  • 语言: Matlab
  • 标签: Matlab  语音识别  

资源简介

在Matlab环境下识别男女声,主要方法是利用倒频谱检测基音频率,基因频率是区分男女声的特征

资源截图

代码片段和文件信息


function y1=cut(s_address)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% function: cut() 把静音段裁剪掉
% input :   音频文件地址
% output:   裁剪之后的音频
% author:   yuhansgg(Shi Gaige)
% time:     2017.4.9
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
y=audioread(s_address);
h=hamming(320);

% 计算短时平均能量SAE(short average energe)
%信号的平方在与窗函数相卷
% E(n)=[x(m)]^2*h(n-m)m从负无穷到正无穷求和,h(n-m)为汉明窗
e=conv(y.*yh);    % y.*2对y中各元素平方;conv(uv) 求u与v的卷积

% 对语音信号进行切割,当SAE小于能量大值的1/100时,认为是起点或终点

mx=max(e);
n=length(e);
y(n)=0; % 将原始语音信号矩阵扩充至n维
for i=1:n
    if e(i)        e(i)=0;
    else e(i)=1;    % e中非0的数用1来代替
    end
end
y1=y.*e;
y1(find(y1==0))=[]; % 把0元素剔除
fs=16000;
audiowrite(s_addressy1fs);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件         845  2017-04-09 23:25  cut.m
     文件        2804  2017-04-09 23:25  PitchDetect.m
     文件        1068  2018-01-03 20:07  pitchUI.m
     文件         245  2018-01-03 20:09  ReadMe.txt
     目录           0  2018-01-03 20:07  test_record\
     文件         698  2017-04-09 23:21  test_record.m
     文件       50750  2018-01-03 20:07  test_record\1.wav

评论

共有 条评论