一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【语音判别】基于matlab双门限法判别语音信号【含Matlab源码 1720期】

获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、短时能量简介

1 基本概念
双门限法最初是基于短时平均能量和短时平均过零率而提出的,其原理是汉语的韵母中有元音,能量较大,所以可以从短时平均能量中找到韵母,而声母是辅音,它们的频率较高,相应的短时平均过零率较大,所以用这两个特点找出声母和韵母,等于找出完整的汉语音节。双门限法是使用二级判决来实现的。

2 第一级判决
①根据在语音短时能量包络线上选取的一个较高阈值(门限)T2(图中以虚水平线表示)进行一次粗判,就是高于该T2阈值肯定是语音(即在CD段之间肯定是语音),而语音起止点应位于该阈值与短时能量包络交点所对应的时间点之外(即在CD段之外)。
②在平均能量上确定一个较低的阈值(门限)T(图中以实水平线表示),并从C点往左、从D点往右搜索,分别找到短时能量包络与阈值T:相交的两个点B和E,于是BE段就是用双门限法根据短时能量所判定的语音段的起止点位置。

3 第二级判决
以短时平均过零率为准,从B点往左和从E点往右搜索,找到短时平均过零率低于某个阈值(门限)T3的两点A和F(图中T3以水平虚线表示),这便是语音段的起止点。
根据这两级判决,求出了语音的起始点位置A和结束点位置F。但考虑到语音发音时单词之间的静音区会有一个最小长度表示发音间的停顿,就是在小于阈值T3满足这样一个最小长度后才判断为该语音段结束,实际上相当于延长了语音尾音的长度,如图6-1-1中在语音波形图上标出语音的起止点分别为A和F+(从图中看出终止点位置为F,而实际处理中延长到F+)。
在端点检测的具体运行中,首先是对语音分帧(第2章已做过介绍),在分帧基础上方能求出短时平均能量和短时平均过零率, 然后逐帧地依阈值进行比较和判断。

三、部分源代码

clear all; clc; close all;
filedir=[];                             % 指定文件路径
filename='s.wav';                % 指定文件名
fle=[filedir filename]                  % 构成路径和文件名的字符串
[x,fs]=audioread(fle);                    % 读入数据文件
x=x/max(abs(x));                        % 幅度归一化
N=length(x);                            % 取信号长度
time=(0:N-1)/fs;                        % 计算时间
pos = get(gcf,'Position');              % 作图
set(gcf,'Position',[pos(1), pos(2)-100,pos(3),(pos(4)-200)]);
plot(time,x,'k');
title('男声“蓝天,白云,碧绿的大海”的端点检测');
ylabel('幅值'); axis([0 max(time) -1 1]); grid;
xlabel('时间/s');
wlen=200; inc=80;                       % 分帧参数
IS=0.1; overlap=wlen-inc;               % 设置IS
NIS=fix((IS*fs-wlen)/inc +1);           % 计算NIS
fn=fix((N-wlen)/inc)+1;                 % 求帧数
frameTime=frame2time(fn, wlen, inc, fs);% 计算每帧对应的时间
[voiceseg,vsl,SF,NF]=vad_ezm1(x,wlen,inc,NIS);  % 端点检测

四、运行结果

五、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]韩纪庆,张磊,郑铁然.语音信号处理(第3版)[M].清华大学出版社,2019.
[2]柳若边.深度学习:语音识别技术实践[M].清华大学出版社,2019.
[3]宋云飞,姜占才,魏中华.基于MATLAB GUI的语音处理界面设计[J].科技信息. 2013,(02)

【语音判别】基于matlab双门限法判别语音信号【含Matlab源码 1720期】相关推荐

  1. 【Matlab图像检索】综合特征图像检索【含GUI源码 395期】

    一.代码运行视频(哔哩哔哩) [Matlab图像检索]综合特征图像检索[含GUI源码 395期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  2. 【Matlab条形码识别】二维条形码识别【含GUI源码 607期】

    一.代码运行视频(哔哩哔哩) [Matlab条形码识别]二维条形码识别[含GUI源码 607期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  3. 基于双门限法的语音端点检测及语音分割

    voice_activity_detection Audio Split 基于双门限法的语音端点检测及语音分割 代码在我的github上voice_activity_detection 如果您觉得有一 ...

  4. 【Matlab语音分析】语音信号分析【含GUI源码 1718期】

    一.代码运行视频(哔哩哔哩) [Matlab语音分析]语音信号分析[含GUI源码 1718期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊,郑铁 ...

  5. 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】

    一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...

  6. 【Matlab语音加密】语音信号加密解密(带面板)【含GUI源码 181期】

    一.代码运行视频(哔哩哔哩) [Matlab语音加密]语音信号加密解密(带面板)[含GUI源码 181期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆 ...

  7. 【Matlab语音隐写】DCT+DWT音频数字水印嵌入提取【含GUI源码 836期】

    一.代码运行视频(哔哩哔哩) [Matlab语音隐写]DCT+DWT音频数字水印嵌入提取[含GUI源码 836期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1 ...

  8. 【Matlab语音隐写】DWT音频数字水印【含GUI源码 712期】

    一.代码运行视频(哔哩哔哩) [Matlab语音隐写]DWT音频数字水印[含GUI源码 712期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊, ...

  9. 【Matlab语音处理】汉宁窗FIR陷波滤波器语音信号加噪去噪【含GUI源码 1711期】

    一.代码运行视频(哔哩哔哩) [Matlab语音处理]汉宁窗FIR陷波滤波器语音信号加噪去噪[含GUI源码 1711期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 ...

  10. 基于JAVA层次分析法食堂评价系统计算机毕业设计源码+系统+lw文档+部署

    基于JAVA层次分析法食堂评价系统计算机毕业设计源码+系统+lw文档+部署 基于JAVA层次分析法食堂评价系统计算机毕业设计源码+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语言: ...

最新文章

  1. mysql插入性能_mysql 数据量大时插入和查询性能
  2. 数据结构与算法—图论之dfs、bfs(深度优先搜索、宽度优先搜索)
  3. 在Windows2012R2中如何安装IIS8.5
  4. 汉王拉开人脸识别产业化大幕 市场应用前景广阔
  5. 读懂mysql慢查询日志
  6. mysql增加超级用户_Mysql添加远程超级用户
  7. Taro框架中开发H5使用微信分享
  8. 小米5splus安装鸿蒙OS,小米5Splus 魔趣OS 安卓10 MagiskV21版 完美ROOT 纯净完美 原生极简 纯净推荐...
  9. uni-app项目利用HBuilder X工具使用命令一键自动编译导出APP资源
  10. php工厂模式计算器,php设计模式之工厂模式(工厂模式实现计算器功能)
  11. 苹果连接电脑 计算机不显示硬盘,苹果连接电脑没反应怎么办?苹果连接电脑没反应解决方法...
  12. 使用大白菜U盘启动盘制作工具去除预装软件(安装纯净系统)
  13. 有什么软件可以免费下载歌曲?99%不知道这3款软件!
  14. 寒月聊健康;手指麻 刺痛 无力你可能是腕管综合症
  15. 用户管理和用户组管理
  16. 微信开发MySQL篇(一)
  17. Robomongo的安装和配置
  18. GIT 与 GitHub简介
  19. 主导资源公平DRF:多种资源类型的公平分配
  20. 【博学谷学习记录】超强总结,用心分享|大数据之数仓分层

热门文章

  1. 探索与发现,我们在路上
  2. webconfig.xml文件golbalization节的作用
  3. Java-重复性代码统计第一篇
  4. spring-第七篇之深入理解容器中的bean
  5. 打造个人多媒体服务器之二
  6. 步步为营100-开发前的思考
  7. Jzoj4384 Hashit
  8. 框架设计知识点纵览(笔记)
  9. C#实现在图片上斜着写字
  10. OpenGL蓝宝书第五章代码勘误以及惯性坐标系去解释模型变换:Pyramid.cpp