基于深度学习的LED车载语音交互氛围灯设计

2020-06-16 13:15:10费孝峰樊嘉杰
照明工程学报 2020年1期
关键词:声学车载语音

费孝峰,樊嘉杰,邓 亮,刘 健,邢 文

(1.河海大学机电工程学院,江苏 常州 213022;2.常州星宇车灯股份有限公司,江苏 常州 213022;3.常州市武进区半导体照明应用技术研究院,江苏 常州 213161;4.荷兰代尔夫特理工大学电气工程、数学和计算机科学学院微电子系,荷兰 代尔夫特 2628)

引言

车载氛围灯是一种新型的车内装饰灯具[1],它通过颜色和亮度改变,兼具照明及氛围调节作用。LED具有能耗低、寿命长、响应快、易控制等特点,已经逐渐成为车载氛围灯的主流光源[2]。传统车载氛围灯的调节通过按键或者车载导航界面实现[3],在正常驾驶时,驾驶员手动操作氛围灯会转移视线,存在交通事故隐患。

目前,语音交互技术正在车辆上推广使用,语音识别技术应用于车载设备上,将会提高产品的使用价值,使用户界面更加友好。传统的语音识别算法通常采用基于动态时间规整(dynamic time warping,DTW)[4]和基于隐马尔科夫模型(hidden markov model,HMM)[5]等。然而,DTW算法存在无法适用非特定人、大量识别词的问题;HMM算法存在响应速度慢、识别率偏低等问题[6]。因此,基于深度学习(deep learning,DL)的语音识别算法已经被提出[7]。目前车载智能产品实现语音识别的方法有采用专用语音识别芯片的语音库以及传统的语音识别算法等[6,8]。

本文提出一种基于深度学习实现语音识别与控制氛围灯的系统,对预识别语音进行训练得到声学模型,移植该模型到嵌入式平台中,利用声学模型对在线语音的音频特征进行分类判别。

1 LED车载语音交互氛围灯系统总体框架

如图1所示,LED车载语音交互氛围灯系统主要由i.MX6为语音处理MPU,该处理器广泛应用工业自动控制设备、人机交互设备、航空电子设备、机器人等领域,性能良好[9]。麦克风采用USB接口麦克风,具有智能降噪、抗噪抗干扰等功能,自带声卡,使声音更加清晰,传输时可以有效防止声音卡顿、降低延迟。氛围灯控制处理器采用S32K144,S32K144是应用汽车工业的32位ARM处理器,适用于通用汽车和高可靠性的工业应用[8]。具体操作原理为:首先通过PC训练声学模型,其次将训练好的模型移植到i.MX6,进而与S32K144通信;然后将汽车故障码和汽车行驶记录通过OBD-II接口传递到CAN收发器,进而与S32K144通信。

图1 LED车载语音交互氛围灯系统总体框架

2 卷积网络语音识别原理

本文采用基于多层卷积神经网络的语音识别原理,输入为经过处理的声纹,输出为识别的种类(如“上下左右”等指令)。卷积神经网络(convolutional neural network,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络,属于一种深度学习方法[10]。该网络可以提供在时间上和空间上的平移不变性卷积,利用卷积的不变性来克服语音信号本身的多样性[11,12]。相比传统声学建模,采用该网络搭建声学模型,可以省去大量的特征提取工作[10]。如图2所示,音频信号通过语音检测、降噪处理,采用梅尔频率倒谱系数(mel frequency cepstral coefficient,MFCC)方法提取音频特征[13];将提取的声纹特征与移植的声学模型,通过声纹辨认的方式进行特征匹配,将识别结果输出到S32K144,实现语音识别功能。

图2 CNN语音识别流程图

3 离线语音训练过程

3.1 语音数据集的构建

语音数据样本通过麦克风采集,数据采样率为8 000 Hz,位数为8位,时间为3 s,一共6个识别单词,每个识别单词样本数为500个。数据集按照8∶2拆分为训练集、测试集。为了模拟复杂的背景环境,提高系统的鲁棒性,训练数据增加了背景噪音[14]。

3.2 数据预处理和特征提取

针对原始的语音数据,需要进行预加重、分帧和加窗、端点检测等数据处理操作[15]。当整段语音进行分帧时,语音的帧长设置为1028采样点,帧移设置为512采样点,选用汉宁窗对每一帧语音数据进行加窗操作。如图3所示,音频提取声纹特征。步骤如下:①进行快速傅里叶变换(fast fourier transform, FFT)得到相应的频谱。设置FFT参数为2048,通过FFT运算得到每帧数据的实部和虚部,并以实部和虚部的平方和作为能量谱。②创建梅尔三角滤波器组,对每帧音频数据进行梅尔频率变换。首先设置梅尔三角滤波器组数为128,通过梅尔三角滤波器组将线性的自然频谱转化为能体现人类听觉特性的梅尔频谱;其次,能量值取对数;最后进行离散余弦变换。

图3 提取声纹特征

3.3 搭建卷积神经网络结构的声学模型

典型的卷积神经网络主要由输入层、卷积层、池化层、全连接层和输出层组成。目前针对网络结构方面的研究主要针对增加神经网络的深度和优化神经网络的结构,降低网络的复杂度[16]。卷积层、池化层的激活函数采用“ReLU”函数,该函数成功解决了深度学习网络的分类性能和训练稳定性,应用于卷积神经网络,效果明显[17]。全连接层采用“softmax”作为激活函数,可以有效将识别结果分类[18]。本文卷积神经网络结构图如图4所示。

图4 卷积神经网络结构图

3.4 声学模型的训练

该离线语音训练过程如图5所示。在深度学习工具Keras[19]上使用分类交叉熵损失函数[18]和Adam优化器[20]去训练声学模型,初始学习率设置为0.0001,批量尺寸大小设置为20。

3.5 模型分类结果与分析

在语音识别领域,评估是一项必要的工作,评价分类器性能的常用方法有准确率和混淆矩阵。准确率是预测正确的结果占总样本的百分比。混淆矩阵(confusion matrix,CM)本质是一个误差矩阵,它描绘样本数据的真实属性与识别结果类型之间的关系[21]。本文语音识别模型训练和测试准确率如图6所示。本文测试数据对应的混淆矩阵如图7所示。对于准确率、精确率、召回率和综合评价指标F1值的计算公式如下:

(1)

(2)

(3)

(4)

其中NTP表示正类样本被正确分类的数目,NTN表示负类样本被正确分类的数目,NFP表示负类样本被分为正类样本的数目,NFN表示正类样本被分为负类样本的数目。

测试集的准确率达到90%,训练集的准确率达到95%,见图6。根据式(1)~式(4)可得,以下对6个识别词的识别结果,每个识别词的平均精确率为89.05%、平均召回率为89.17%和平均F1值为89.01%,见图7。各项指标表明该分类器的识别率较高,声学模型的性能较好,可以快速准确地识别语音[22]。

图5 离线语音训练过程

图6 模型训练和测试准确率

4 氛围灯控制系统组装和测试

氛围灯控制系统主要接受i.MX6识别的语音信号和车载CAN总线信号。氛围灯控制程序流程如图8所示。当系统接受到命令单词后,语音信号首先被准确识别出,进而将信号传递给氛围灯的控制MCU,MCU将信号判断后再去控制LED驱动器,实现车载氛围灯[23];同时当汽车行驶过程中发生故障或者出现超速行驶,故障诊断ECU和仪表显示ECU将CAN总线数据通过OBD-II接口传递到CAN收发器,进而与MCU通信[24],该部分的组装和测试需要试验车,本文只探讨理论研究的可行性。

图8 氛围灯控制程序流程图

在i.MX6中搭建CNN神经网络框架,通过PC训练的声学模型参数输入到框架中,实现基于嵌入式平台的声学模型,即完成声学模型的移植[25]。其次搭建语音识别测试装置,实物装置见图9,包括麦克风、电源线、i.MX6、S32K144、显示屏、RGB氛围灯以及接插件若干。测试过程中,选取识别词中“上”、“下”、“左”、“右”四个,每个识别词在线测试20次,计算平均响应时间和平均准确率,并运用传统语音识别方法与本文所用的深度学习方法进行对比,如表1所示。本文所述方法比HMM方法的响应时间平均缩短52.3%,识别准确率提升7.4%。当识别词“上”被准确识别时,氛围灯呈现出多色灯光流动变幻,见图9。

5 结论

本文基于深度学习算法设计了一款LED车载语音交互氛围灯,并在嵌入式平台上实现了语音识别与智能化控制。研究结果表明:与传统车载氛围灯相比,该系统可以替代氛围灯的触摸和机械操作,扩展了氛围灯的操作方式;与传统语音识别算法相比,该系统的深度学习算法解决了识别率低、响应速度慢等问题;与目前基于专用识别芯片的车载语音识别产品相比,该系统可以节约硬件或软件成本。由此可见,该LED车载语音交互氛围灯系统设计是一种有效的嵌入式离线语音识别方案,可以推广至其他车载照明产品的智能设计中。

猜你喜欢
声学车载语音
爱的就是这股Hi-Fi味 Davis Acoustics(戴维斯声学)Balthus 70
高速磁浮车载运行控制系统综述
魔力语音
基于MATLAB的语音信号处理
电子制作(2019年14期)2019-08-20 05:43:38
基于MQ3与MP3的价廉物美的酒驾语音提醒器
电子制作(2019年9期)2019-05-30 09:42:10
Acoustical Treatment Primer:Diffusion谈谈声学处理中的“扩散”
Acoustical Treatment Primer:Absorption谈谈声学处理中的“吸声”(二)
对方正在输入……
小说界(2018年5期)2018-11-26 12:43:42
Acoustical Treatment Primer:Absorption 谈谈声学处理中的“吸声”
智能互联势不可挡 车载存储需求爆发