首页 > 其他分享 >基于MATLAB的人声音特征的识别和控制设计

基于MATLAB的人声音特征的识别和控制设计

时间:2024-11-07 13:49:08浏览次数:6  
标签:基于 匹配 算法 MATLAB 语音 识别 方法 模板

语音识别控制技术是人机交流技术重要的研究方向,也是人工智能的基础技术,这项技术目前已经广泛运用于各个领域。

本次设计内容是一个语音识别控制系统,具体是利用MATLAB调用笔记本电脑的声卡采集声音的功能,采集人说话的语音信号,再对语音信号进行预处理、端点检测、特征参数提取等操作。如果是在模板训练过程就将参数储存起来,保存为模板语音,如果是在语音识别过程中,有待测语音输入时用DTW(Dynamic Time Warping)的模板匹配算法将语音信号参数与模板参数进行匹配。该算法是为了解决发同一音而发音时间长短的不同的问题,采用对输入语音信号进行伸长或缩短直到与标准模式的长度一致,将模板参数和待识别参数按照一定的规整路径进行一个最小距离计算,找出最佳的匹配模板。匹配的结果通过红外模块从笔记本发往单片机,让单片机控制电机的启动停止,转动速度等,其中转速的控制部分是利用的PID(Proportion Integral Derivative)控制算法。

为了研究语音识别,本论文做了大量的模板训练,总共训练了五个动作词汇。然后逐一进行了测试,识别率良好,系统的响应时间在规定的范围内,系统的抗噪性能比较好,控制也比较稳定,实现了课题要求。

2.1 语音识别方式选择

目前语音识别的研究方向有3个:基于声道模型和语音知识的方法、利用人工神经网络的方法以及模版匹配的方法[7]。其中,方法1需要建立人类发音的数学模型,让计算机能够听懂人类的话。方法2是模仿人的大脑的神经活动,学习一门新的语音,从字到词语,从词语到句子,需要大量的数据库。方法3是模版匹配的方法,这种方法是目前使用得最多的方法,而且其算法相对简单,所以本次设计选择的是模板匹配方法。在模板匹配中也有多种匹配方式:

① 矢量量化方法(VQ)

矢量量化是将人的语音样品训练变为码本,辨别中把样品语音遵循训练得到的码本展开编码,其确定标准为量化形成的失真度。使用矢量量化进行语音识别,具有速度非常快的优势,并且辨别准度也很高。

② 隐马尔可夫模型方法(HMM)

隐马尔可夫模型技术有着非常广泛的使用。它将语音转换成为一些符号,并且把这些符号的序列合成看作随机的过程,此种符号在导出时表示为系统发声状态。简单地说HMM模型就是关于概率矩阵的一个数学模型,从已知推断未知。

③ 动态时间规整方法(DTW)

说话人信息不但存在稳定性原因(发声的器官构成与惯性),并且还存在变化性原因(语音速度及其声调,发声轻重与规律)。把辨别模板和参考模板在时间一致下进行对比,然后按照一定的距离检测出这两块模板之间的相同程度[5]。

以上三种方法,各有优点缺点,其中矢量量化方法主要是用于说话人识别的场合,而这次的设计不针对特定的人,而是识别语音的内容,所以不合适使用。隐马尔可夫模型建立起数学模型比较复杂,对出初学者而言难度有点大。所以综合以上,最终选择用动态时间规整(DTW)算法来实现本次设计。选择动态时间规整(DTW)算法的主要原因是,算法相对容易理解,在人语音识别领域应用比较广泛,比其他几种方法更容易编程实现。最终的识别率来看也是比较理想的,在软件设计一章将会对此做详细介绍。

2.2 语音识别/控制系统总体设计

语音识别就是指通过一定的数据信号处理,让机器理解说话人的意思。识别语音内容是从许多个词汇中分辨出该词汇的内容,是一种一对多的关系,这种技术利用的方式一般为模式匹配。语音控制就是将识别出的命令通过特定的一种通讯方式发送到下位机,实现对下位机单片机的控制,从而达到语音识别的目的。

要实现语音识别控制,就必须先对样本进行训练,训练后才可以达到识别的目的。样品训练一般表示为对数据的挖掘,通过对大量的样品训练,再从中抽取其实质参数。模式匹配即根据一种特殊的算法,让待识别的样本与训练后的样本的特征参数进行相似度的计算分析,最后得到一个最佳匹配。

语音识别/控制系统,显然包括了识别和控制两个部分,系统的主要组成部分包括上位机和下位机两个部分:

上位机模块:上位机主要是笔记本,笔记本声卡采集语音信息,利用MATLAB的数据处理功能首先对声音信号进行预处理、特征参数提取,语音规整,然后利用模板匹配算法进行语音识别,最后转化为指令发送到下位机,上位机和下位机之间的通讯方式为红外通讯。

下位机模块:下位机主要是基于单片机,接收到上位机信号后,单片机开始运行,控制被控对象完成相应的动作,本次控制对象对直流电机,通过语音信号控制电机的正反转,加速、减速、停止动作。

标签:基于,匹配,算法,MATLAB,语音,识别,方法,模板
From: https://blog.csdn.net/2401_87911692/article/details/143592339

相关文章

  • 基于SpringBoot的Java教学支持系统开发指南
    1系统概述1.1研究背景随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理教学辅助平台的相关信息成为必然。开发合适的教学辅助平台,可以方便管理人员对教学辅助平台......
  • 基于SpringBoot+Vue的网上超市设计与实现
    前言网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。因此超市商品销售信息的管理计算机化,系统化是必要的。设计开发网上超......
  • 基于springboot+vue的毕业生实习与就业管理系统的设计与实现
    前言使用旧方法对毕业生实习与就业管理系统的信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在毕业生实习与就业管理系统的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次开发的毕业生实习与就业管理......
  • 使用 PureScript 实现文字识别程序
    由于PureScript本身不直接支持图像处理和OCR,我们将模拟文字识别的过程,创建一个假设的程序框架。环境设置首先,你需要安装PureScript和Pursuit(PureScript的包管理工具)。你可以从PureScript官方文档获取安装指南。代码实现moduleMainwhereimportPreludeimportDat......
  • 基于DSP的移相全桥ZVZCS直流变换器研究
    基于DSP的移相全桥ZVZCS直流变换器研究pwm是脉冲调制技术,对于pwm,我们或多或少有所了解。在前文中,小编对pwm控制原理、spwm控制原理有所介绍。为增进大家对pwm技术的了解程度,本文将对单极性pwm模式以及双极性pwm模式予以阐述。如果你对pwm具有兴趣,不妨继续往下阅读哦。一、单极性......
  • 使用 Fantom 实现简单识别程序
    由于Fantom语言本身不提供直接的图像处理和OCR支持,我们将通过简单的模拟程序来展示如何进行文字识别的基本流程。实际的文字识别通常涉及复杂的图像处理和机器学习,但在这个示例中,我们将重点展示如何组织这些步骤。环境设置你可以从Fantom官网下载并安装Fantom语言的运行......
  • 使用 Fantom 实现简单的文字识别程序
    由于Fantom语言本身不提供直接的图像处理和OCR支持,我们将通过简单的模拟程序来展示如何进行文字识别的基本流程。实际的文字识别通常涉及复杂的图像处理和机器学习,但在这个示例中,我们将重点展示如何组织这些步骤。环境设置你可以从Fantom官网下载并安装Fantom语言的运行......
  • 基于PLC立体车库控制系统设计
    自动化立体车库是集自动化技术、机器人技术、计算机技术为一体的智能化、立体化的物流储运系统,能够自动而可靠的完成车辆的存储以及相关信息的管理。对该系统的开发与研究,可以解决我国停车难的问题,具有非常大的理论意义和使用价值。在程序设计之前,首先确定车库的类型和平面结......
  • 思通数科纸质档案扫描与识别与档案馆应用场景介绍
    在传统档案馆中,纸质文件的处理和管理是一个重要且繁琐的环节,特别是面对庞大的历史资料库。思通数科的AI能力平台提供了一种高效的数字化解决方案,利用OCR技术将纸质档案中的信息自动提取并转化为数字文本,具体过程包括以下几个步骤:1.扫描与图像预处理首先,系统将纸质档案文件进行......
  • 【含文档】基于ssm+jsp的茶产品销售平台(含源码+数据库+lw)
    1.开发环境开发系统:Windows10/11架构模式:MVC/前后端分离JDK版本:JavaJDK1.8开发工具:IDEA数据库版本:mysql5.7或8.0数据库可视化工具:navicat服务器:apachetomcat主要技术:Java,Spring,SpringMvc,mybatis,mysql,vue2.视频演示地址3.功能系统定义了两个......