热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

基于动态时间规整算法(DTW)的语音识别技术研究含Matlab代码

⭕⭕目录⭕⭕⏩一、引言⏩二、动态时间规整算法基本原理⏩三、语音识别实例分析⏩四、参考文献⏩五、Matlab代码获取⏩一、引言在语音识别技术的发展过程中,动态时间规整




⭕⭕ 目 录 ⭕⭕


  • ⏩ 一、引言
  • ⏩ 二、动态时间规整算法基本原理
  • ⏩ 三、语音识别实例分析
  • ⏩ 四、参考文献
  • ⏩ 五、Matlab代码获取



⏩ 一、引言

在语音识别技术的发展过程中,动态时间规整算法(Dynamic Time Warping,DTW)一直处于重要地位,其本质上是一种距离度量算法。在过去的几十年中研究者们提出了几十种距离度量算法,实验证明,动态时间规整算法仍然是最佳的距离度量技术。然而,目前的各种嵌入式语音识别方案中,由于动态时间规整算法本身庞大的计算量和相邻数据处理过程中的高度依赖性极大地限制了它的实际应用,同时也使得计算资源和存储空间相对有限的嵌入式设备无法更好地发挥其性能。


⏩ 二、动态时间规整算法基本原理

动态时间规整算法是一种准确性高、鲁棒性强的时间序列相似性度量方法。通过在测试语音序列和模板语音序列之间利用规整函数建立一条非线性的弯折路径,不断对比两序列之间弯折路径的距离,距离越小,相似度越高,以此找到声学相似性最大的两个序列。

设T={t1,t2,t3,t4,t5,…,tN}和H={h1,h2,h3,h4,h5,…,hM} 分别为长度为 N 和 M 的语音序列。动态时间规整算法需要不断搜索得出一个时间规整函数C=z(n),该函数将T序列的时间轴非线性的映射到H序列的时间轴上。同时,该函数z满足公式(1):

在这里插入图片描述

式中,d[T(n),H(z(n))] 是序列 T 中第 n 个数据 tn和序列 H 中第 C = w(n) 个数据 hm 之间的距离度量,D 为最优时间规整情况下两个序列的累积距离。为了保证两个序列之间的搜索匹配路径具有实际意义,规整函数 z(n) 必须满足以下 3个条件:

单调性:z(n)≤z(n+1),1≤n≤N-1;

边界性:z(1)=1,z(N)=M;

连续性:z(n+1)-z(n)≤1。

根据上述3个条件,由N和M两个序列中任意两点的距离构成N×M的距离矩阵





A



N


×


M





{{A}_{N\times M}}


AN×M
,其中任意两点A1、A2使用公式(2)计算其欧氏距离。

在这里插入图片描述

边界性是为了保证搜索路径的起点从矩阵





A



N


×


M





{{A}_{N\times M}}


AN×M
的左下角(1,1)开始到右上角(N,M)结束。单调性和连续性是为了保证搜索路径的下一个方向在当前点的上方、右上方或者右方。从而在所有有效路径中找到唯一最优路径可以使累积距离最小。

为了找到唯一最优路径,动态时间规整算法采用逆序决策过程,求其任意点处累积距离,需先找出其所有满足上述 3 个条件的前序节点 ,利用公式(3)递推求得所有节点。

在这里插入图片描述


⏩ 三、语音识别实例分析

一个完整的基于统计的语音识别系统可大致有这样的步骤:

①语音信号预处理;

②语音信号特征提取;

③声学模型选择;

④模式匹配选择;

⑤语言模型选择;

⑥语言信息处理。

基于Matlab GUI设计的语音控制光信号等识别系统用户界面如下图所示:

在这里插入图片描述



图1 语音信号识别系统

语音信号“停止”,用控制台中的“黄色”来表示。

在这里插入图片描述



图2 语音信号识别结果(黄色对应停止的语音)

语音信号“关闭”,用控制台中的“绿色”来表示。

在这里插入图片描述



图3 语音信号识别结果(绿色代表语音:关闭)

⏩ 四、参考文献

[1] 温玉华.基于DTW算法的英语发音错误自动校正系统设计[J].现代电子技术,2020,43(10):124-126.
[2] 钟颖.基于DSP的语音识别系统的研究与实现[J].数字技术与应用,2017(5):48-49.
[3] 杨凡,杨迎尧,邹杰,等.基于语音识别的智能家居系统的设计与开发[J].现代信息科技,2019,3(9):164-167.
[4] 贺霄琛,韩燮,李顺增.改进的LB算法在动态手势识别中的应用[J].微电子学与计算机,2016,33(4):55-59.


⏩ 五、Matlab代码获取

上述Matlab代码,可私信博主获取





博主简介:研究方向涉及智能图像处理、深度学习等领域,先后发表过多篇SCI论文,在科研方面经验丰富。任何与算法程序科研方面的问题,均可私信交流讨论










推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • 建立分类感知器二元模型对样本数据进行分类
    本文介绍了建立分类感知器二元模型对样本数据进行分类的方法。通过建立线性模型,使用最小二乘、Logistic回归等方法进行建模,考虑到可能性的大小等因素。通过极大似然估计求得分类器的参数,使用牛顿-拉菲森迭代方法求解方程组。同时介绍了梯度上升算法和牛顿迭代的收敛速度比较。最后给出了公式法和logistic regression的实现示例。 ... [详细]
  • 3年半巨亏242亿!商汤高估了深度学习,下错了棋?
    转自:新智元三年半研发开支近70亿,累计亏损242亿。AI这门生意好像越来越不好做了。近日,商汤科技已向港交所递交IPO申请。招股书显示& ... [详细]
  • 移动传感器扫描覆盖摘要:关于传感器网络中的地址覆盖问题,已经做过很多尝试。他们通常归为两类,全覆盖和栅栏覆盖,统称为静态覆盖 ... [详细]
  • 本文讨论了同事工资打听的话题,包括同工不同酬现象、打探工资的途径、为什么打听别人的工资、职业的本质、商业价值与工资的关系,以及如何面对同事工资比自己高的情况和凸显自己的商业价值。故事中的阿巧发现同事的工资比自己高后感到不满,通过与老公、闺蜜交流和搜索相关关键词来寻求解决办法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 人淋巴细胞活化基因3蛋白(LAG3)的性质、应用及相关研究
    本文介绍了人淋巴细胞活化基因3蛋白(LAG3)的性质,包括其化学性质、物种来源、重组蛋白序列和应用说明。该蛋白可通过MHC II信号传导激活抗原呈递细胞,促使抗原特异性T细胞反应。关于MHC II分子是否单独调控LAG-3的抑制功能存在争议。此外,本文还介绍了LAG3抗体的相关研究,包括抗体的类型和应用领域。 ... [详细]
  • 颜色迁移(reinhard VS welsh)
    不要谈什么天分,运气,你需要的是一个截稿日,以及一个不交稿就能打爆你狗头的人,然后你就会被自己的才华吓到。------ ... [详细]
  • 知识图谱表示概念:知识图谱是由一些相互连接的实体和他们的属性构成的。换句话说,知识图谱是由一条条知识组成,每条知识表示为一个SPO三元组(Subject-Predicate-Obj ... [详细]
  • 本人学习笔记,知识点均摘自于网络,用于学习和交流(如未注明出处,请提醒,将及时更正,谢谢)OS:我学习是为了上 ... [详细]
  • 当写稿机器人真有了观点和感情,我们是该高兴还是恐惧?
    目前,写稿机器人多是撰写以数据为主的稿件,当它们能够为文章注入观点之时,这些观点真的是其所“想”吗?最近,《南 ... [详细]
author-avatar
手机用户2702936363
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有