【语音识别】基于匹配滤波器语音识别附matlab代码

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 【语音识别】基于匹配滤波器语音识别附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信      无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机

⛄ 内容介绍

匹配滤波器的原理

匹配滤波(matched filtering)是最佳滤波的一种,当输入信号具有某一特殊波形时,其输出达到最大

在数字通信系统中,滤波器是其中重要部件之一,滤波器特性的选择直接影响数字信号的恢复。在数字信号接收中,滤波器的作用有两个方面,使滤波器输出有用信号成分尽可能强;抑制信号带外噪声,使滤波器输出噪声成分尽可能小,减小噪声对信号判决的影响。

对最佳线性滤波器的设计有两种准则:

一种是使滤波器输出的信号波形与发送信号波形之间的均方误差最小,由此而导出的最佳线性滤波器称为维纳滤波器;

另一种是使滤波器输出信噪比在某一特定时刻达到最大,由此而导出的最佳线性滤波器称为匹配滤波器

匹配滤波器对信号做的两种处理

1)去掉信号相频函数中的任何非线性部分,因而在某一时刻可使信号中所有频率分量都在输出端同相叠加而形成峰值。

2)是按照信号的扶贫特性对输入波形进行加权,一边最有效地接收信号能量而一直干扰的输出功率。

⛄ 部分代码

function [x1,x2] = vad(x)


%幅度归一化到[-1,1]

x = double(x);

x = x / max(abs(x));


%常数设置

FrameLen = 240;

FrameInc = 80;


amp1 = 10;

amp2 = 2;

zcr1 = 10;

zcr2 = 5;


maxsilence = 8;  % 6*10ms  = 30ms

minlen  = 15;    % 15*10ms = 150ms

status  = 0;

count   = 0;

silence = 0;


%计算过零率

tmp1  = enframe(x(1:end-1), FrameLen, FrameInc);

tmp2  = enframe(x(2:end)  , FrameLen, FrameInc);

signs = (tmp1.*tmp2)<0;

diffs = (tmp1 -tmp2)>0.02;

zcr   = sum(signs.*diffs, 2);


%计算短时能量

amp = sum(abs(enframe(filter([1 -0.9375], 1, x), FrameLen, FrameInc)), 2);


%调整能量门限

amp1 = min(amp1, max(amp)/4);

amp2 = min(amp2, max(amp)/8);


%开始端点检测

x1 = 0;

x2 = 0;

for n=1:length(zcr)

  goto = 0;

  switch status

  case {0,1}                   % 0 = 静音, 1 = 可能开始

     if amp(n) > amp1          % 确信进入语音段

        x1 = max(n-count-1,1);

        status  = 2;

        silence = 0;

        count   = count + 1;

     elseif amp(n) > amp2 | ... % 可能处于语音段

            zcr(n) > zcr2

        status = 1;

        count  = count + 1;

     else                       % 静音状态

        status  = 0;

        count   = 0;

     end

  case 2,                       % 2 = 语音段

     if amp(n) > amp2 | ...     % 保持在语音段

        zcr(n) > zcr2

        count = count + 1;

     else                       % 语音将结束

        silence = silence+1;

        if silence < maxsilence % 静音还不够长,尚未结束

           count  = count + 1;

        elseif count < minlen   % 语音长度太短,认为是噪声

           status  = 0;

           silence = 0;

           count   = 0;

        else                    % 语音结束

           status  = 3;

        end

     end

  case 3,

     break;

  end

end  


count = count-silence/2;

x2 = x1 + count -1;

⛄ 运行结果

⛄ 参考文献

[1] 韦春丽,霍春宝.基于DTW的语音识别在MATLAB中的实现方法浅析[J].数字技术与应用, 2011(12):2.DOI:CNKI:SUN:SZJT.0.2011-12-123.

[2] 张培玲,成凌飞.基于MATLAB的汉语数字语音识别系统[J].机械管理开发, 2011(4):3.DOI:10.3969/j.issn.1003-773X.2011.04.099.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料
相关实践学习
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
相关文章
|
9月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
770 0
|
9月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
1094 0
|
9月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
287 0
|
9月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
394 8
|
9月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
389 8
|
9月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
345 8
|
9月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
456 8
|
机器学习/深度学习 自然语言处理 算法
未来语音交互新纪元:FunAudioLLM技术揭秘与深度评测
人类自古以来便致力于研究自身并尝试模仿,早在2000多年前的《列子·汤问》中,便记载了巧匠们创造出能言善舞的类人机器人的传说。
14666 116
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。
1293 4
|
机器学习/深度学习 自然语言处理 搜索推荐
智能语音交互技术:构建未来人机沟通新桥梁####
【10月更文挑战第28天】 本文深入探讨了智能语音交互技术的发展历程、当前主要技术框架、核心算法原理及其在多个领域的应用实例,旨在为读者提供一个关于该技术全面而深入的理解。通过分析其面临的挑战与未来发展趋势,本文还展望了智能语音交互技术如何继续推动人机交互方式的革新,以及它在未来社会中的潜在影响。 ####
1548 0

热门文章

最新文章