当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要 :文中设计了一款智能家居系统,主要介绍了语音识别技术的相关基础原理以及流程。详细分析了一段语音信号从采集到预处理,提取特征值后与语音库中的声学模型比对得出识别结果的过程及隐马尔科夫的建模过程、算法流程,最后利用 Arduino 开发板搭建智能家居系统。

0 引 言

第一次工业时代后,生活方式大不同前,越来越多的机器设备开始代替手工作业,而在家居行业也出现了类似的机器人帮人们处理家居生活中的简单工作,不仅解放了人们的双手,又节省了大量时间。智能家居的发展与人机交互技术有着密不可分的关联,在长期探索中,语音识别技术脱颖而出。本文详细分析了语音识别过程,并设计了一套基于Arduino平台的智能家居系统实现对家居灯光、环境(温度和湿度)、光线、安防监督的语音化控制。

1 语音识别系统相关理论技术

语音识别的信号处理流程如图 1 所示。语音识别系统由语音前期预处理、语音信号特征参数提取、参考模型库建模、模式匹配以及语音后处理五个部分组成 [1]。语音识别可分为如下四大阶段 :

(1) 第一个阶段先通过性能优良的语音采集设备采集语音信号,然后进行相关预加重、分帧、加窗、端点检测等预处理操作。

(2) 第二阶段是声学模型训练阶段。提取语音库中已知语义的语音信号特征参数,将其作为模板存入参考模型库中。使用训练算法建立声学模型,而声学模型的训练过程也是建模过程,通过训练语音库的特征参数训练声学模型参数 [2], 因此要设置合理的模型初始值。

(3) 第三阶段是识别阶段,将输入语音的特征参数经过一定的识别算法与训练好的参考模型库中的特征参数进行相似度对比,匹配相似度概率最高的即为输入语音最终识别结果 [3]。

(4) 第四阶段是语音后处理阶段,确定当前哪个词语可以跟随上一个已经识别的词,排除不可能的单词,将最佳匹配结果语音信号进行语言建模,匹配出文本语义。

基于智能语音的智能家居系统设计

2 语音信号的时域处理

在对语音信号分析前,要先对语音信号进行预处理,包括端点检测、预加重、加窗和分帧等技术 [4]。


预加重采用一个 6 dB/ 倍频的一阶高通数字滤波器实现, 其传递函数为 H(z)=1-μz-1,加窗可以让一帧信号的幅度在两端平滑的衰减渐变到零,以避免短时语音段边缘的影响。但由于加窗削弱了语音边缘的信号,为了使相邻帧连续不中断,一般采用重叠分帧方法 [5]。

端点检测技术的目的是检测出有效语音信号的起始点和终止点 [6],从而减少需要处理的数据量和运算量,同时还能降低噪声对语音识别系统的影响,一般采用双门限端点检测法。

3 语音信号的特征提取

语音信号提取的特征值应该准确、完全地包含语音信号的全部信息。同时提取能有效反映语音特性、减少语音信号中与识别无关的信息,减少识别数据量。本文分析了语音信号的三种特征参数,即线性预测系数(LPC)、线性预测倒谱系数(LPCC)、梅尔频率倒谱系数(MFCC)[7]。

3.1 线性预测系数(LPC)

线性预测的原理 :语音信号 S(n)的值可由过去若干时刻的采样值或其线性组合来逼近 [8]。在逼近过程中,逼近值与原始值之间的差值称为预测误差,当预测误差达到最小时, 即预测效果最接近,也是模型建立最完美的值。可以推得, 线性预测系数 ai 的值达到了收敛。线性预测方法得到的参数可以很好地反映语音信号的频谱幅度。

3.2 线性预测倒谱系数(LPCC)

LPCC 可以将语音模型中的声门激励信号与声道冲激响应信号进行分离,计算量小,实现相对简单,提高了特征参数的稳定性 [9]。该值是对语音信号进行 FFT 后再取对数,求IFFT 后得到的。

3.3 梅尔频率倒谱系数(MFCC)

Mel 频率倒谱系数(MFCC)充分考虑了人耳听觉的感知特性后进行语音信号处理。MFCC 具有更好的识别性能[10], 语音信号中的能量主要集中在低频部分,对人耳的听觉特性模拟地更好,而人耳对低频分量也更敏感。语音信号低频部分的一个参数淡化了易受环境噪声干扰的高频部分,提高了语音识别系统的抗噪声能力。

4 隐马尔科夫模型 HMM

隐马尔科夫过程是一个双重随机过程 :其一用于描述每帧语音信号的统计特性(可直接观测到);其二用于描述每帧语音信号如何转变到写一个语音帧信号(隐含在观察序列中)。隐马尔可夫模型就像一个黑箱子,内部状态外部不可见,外界只能看到各个时刻的输出值 [11]。可观测部分是人的语音,而隐含部分则是人组织语言的大脑激励信号。隐马尔可夫模型可用 λ=(π,A,B)表示 [12]。

本文详细分析了 HMM 模型三个基本问题的解决算法。假设已知可观察状态值序列 O=(O1,O2,…,OT)(T是语音信号的帧数)和马尔科夫模型参数 λ=(π,A,B),计算可观察序列的概率 P(O|λ)时一般使用向前 - 向后算法 [13]。

已知可观察状态值序列 O=(O1,O2,…,OT) 和模型 λ=(π, A,B),计算最有可能生成该可观察序列的隐含状态序列,通常使用 Viterbi 算法 [14]。

在已知可观察状态的序列 O=(O1,O2,…,OT) 的前提下,确定 HMM 的模型参数 λ=(π,A,B),使得可观察序列的概率 P(O|λ)最大,通常使用 Baum-Welch 算法 [15]。

5 智能家居系统实现

结合 Arduino 开发平台实现智能家居模块的交互系统,对家居系统整体以及软硬件需求进行分析与总体设计,实现通过语音控制家居设备的目标。该系统具有灯光控制,光线以及温度湿度检测和危险气体警报功能。为了拥有更好的人机交互环境,本文系统还添加了语音播报功能。

调试并连接智能家居的软硬件系统,分别测试智能家居系统的语音识别率,以及相应的语音命令能否实现对应功能。在安静的环境下,系统功能能够全部实现,测试非特定人 100 次的语音识别率均在 90% 以上。在有噪声的环境下,系统功能均未实现,测试非特定人 100 次的语音识别率均在50% 以下甚至更低。由实验结果可知,与安静环境对比,噪声环境下的语音识别效果大大降低,且长语音命令的识别率同之前一样低于安静环境下的语音识别率。

智能家居系统框图如图 2 所示,系统测试实验见表 1所列。

基于智能语音的智能家居系统设计

6 结 语

本文主要对语音识别技术做了大致分析,比较了特征提取线性预测技术、线性预测倒谱系数以及梅尔频率倒谱系数之间的优缺点。详细分析了隐马尔科夫的建模过程以及相应算法,结合 Arduino 开发平台,对智能家居系统做出简单设计,实现了语音命令“开灯”“关灯”“温度湿度检测”“环境光线检测”等操作,同时还采用危险气体警报对家居安防进行布施。语音播报提供了良好的人机交互环境,通过智能家居各模块功能语音识别测试可知,提高语音识别率不仅需要安静的环境,还需要说标准的普通话。语音识别如何在有较大噪音的环境中进行准确识别是一道难关,也是未来科研人的努力方向。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

双方的合作促成了尖端人工智能视觉解决方案,提高了效率、连通性和成本效益

关键字: 人工智能 智能家居 机器学习

在智能家居日益普及的今天,无线开关作为实现家居自动化的重要工具,受到了越来越多消费者的青睐。然而,对于许多家庭来说,如何将现有的普通灯具接入无线开关,实现远程控制,仍然是一个值得探讨的问题。本文将详细阐述普通灯具接入无线...

关键字: 无线开关 智能家居

本文中,小编将对语音识别技术予以介绍,如果你想对语音识别技术的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 语音识别 语音识别技术

在这篇文章中,小编将为大家带来语音识别技术的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 语音识别 语音识别技术

今天,小编将在这篇文章中为大家带来语音识别的有关报道,通过阅读这篇文章,大家可以对语音识别具备清晰的认识,主要内容如下。

关键字: 语音识别 智能家居

语音识别技术将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对语音识别技术的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 语音识别 芯片

在这篇文章中,小编将对语音识别模块的相关内容和情况加以介绍以帮助大家增进对语音识别模块的了解程度,和小编一起来阅读以下内容吧。

关键字: 语音识别 语音识别模块

一直以来,语音识别都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来语音识别的相关介绍,详细内容请看下文。

关键字: 语音识别 智能家居 智能客服 人工智能

在下述的内容中,小编将会对语音识别技术的相关消息予以报道,如果语音识别技术是您想要了解的焦点之一,不妨和小编共同阅读这篇文章哦。

关键字: 语音识别 语音识别技术

以下内容中,小编将对语音识别模块的相关内容进行着重介绍和阐述,希望本文能帮您增进对语音识别模块的了解,和小编一起来看看吧。

关键字: 语音识别 语音识别模块
关闭
关闭