电子语音交互系统的设计与医学工程专业的教学应用

2023-06-03 18:47李康平
中国医学工程 2023年4期
关键词:特征提取语音芯片

李康平

(安徽医科大学第一附属医院 医学工程部,安徽 合肥 230000)

随着互联网的飞速发展,信息网络技术和远程医疗技术不断进步,互联网技术给教育带来了机遇和挑战[1]。新冠疫情依旧持续,极大地改变了我们的生活,一方面“互联网医疗”在实际生活中的应用越来越多,用户使用习惯进一步养成[2];另一方面在此次疫情的催化下,也给教育发展提供了新的平台,在线教育的优势越来越明显。在疫情的影响下,教育部门提出了“停课不停学”的方案,改变了传统的教学模式[3]。按下线下教学暂停键的同时,也按下了线上教学开启键,扩大了“互联网+教育”的市场。

“互联网+教育”最常用的人机交互方式之一是语音交互,在绝大多数场景中,均利用语言来完成信息传递,原因就在于其信息容量与智能水平均处在最高位[4]。结合现阶段有关于需求的研究可以明确,人机交互与智能控制领域研究的目光主要聚焦于人类语音控制机器的实现[5]。在人工智能、自动化控制等方面的技术持续革新发展背景下,语音交互的实现已经具备了充足的条件,由于其效率高、灵活性强,从而备受众多研究人员的青睐,实现程度也在不断加深[6],可以说,智能控制的发展必然与语音控制技术的完善与突破紧密关联。

国内外已经有部分学校尝试采取机器人辅助教学。国内名为“NAO”的机器人在东北大学的课堂为该校机械工程与自动化学院大四的学生们讲授了《机电信号处理及应用》课程,引来了大家的关注和学习[7]。国外也有非常成功的教学案例,美国佐治亚理工大学引入了叫做吉尔-沃特森的机器人来充当助教,其能够实现授课的功能,帮助毕业生们解决毕业论文中遇到的各种问题,并且该机器人为学生答疑五个月也未被发现[8]。机器人教师走进学校开始进行试验性教学,可以完成教学大纲里规定的教学任务,虽然助教机器人可以应用到不同的科目中,但还未应用于高等院校的医学工程、医学影像学等专业,因此我们以《医学影像设备学》的课程为依托,进行语音问答的收集、整理和存储,本文设计一款助教机器人帮助学生学习该课程的专业知识,同时减轻老师教学压力。

1 总体方案设计

语言控制系统基于模块化体系来进行设计,以此来给系统的后续维护与功能提升提供便利。在总体结构上,系统由四个模块所构成,各自为电源模块、主控模块、语音识别模块、语音合成模块以及存储模块。具体来看,电力来源为电源模块,其他各子模块所需电能均来源于此,主控模块主要负责和其他模块进行数据通信与数据处理,麦克风把获取到的语音信息传送至语音识别模块,通过语音识别模块实现语音指令的采集,同时进行指定语音指令的识别,识别内容具体包含对话语音指令与语音合成指令,其后语音合成模块完成文本文件内容的语音转换,完成播放,存储模块用来存储用户将要转换成语音的文本文件,语音控制系统总体设计框图见图1。

图1 语言交互系统总框图

2 材料与方法

2.1 语音识别基本流程

语音识别能够完成人类语音信号的预处理与特征提取,通过测试以及训练,将其和计算机所存储的标准模型进行比较,随之进行结果的识别与判定[9]。语音识别具体包含两个流程,各自是训练与识别阶段,见图2。对于训练阶段而言,用户在进行相应次数训练语音的输入后,利用预处理与特征提取将语音信号来进行分组,实际分组过程以帧为依据[10],其后对各帧对应的特征矢量进行计算,求得此语音模板,最终利用特征建模的方式构建的训练语音对应的参考模型库。在识别时,对待识别的语音信号进行特征提取后,模块依据相应的算法,把输入语音的特征矢量参数与参考模型库所包含的参考模型实施相似性度量比较,之后把相似性最高的输入特征矢量当作识别结果予以输出。

图2 语音识别原理框图

2.2 语音识别主要原理

(1)特征提取

语音识别系统的工作过程中,关键步骤就是进行特征提取,具体包含时域特征提取和频域特征提取两方面内容。本系统采用的是频域特征提取[11],使用的特征提取方法为线性预测分析(linear predictive coding,LPC)。此类分析能够无须复杂特征参数便可以实现反映语音信号频谱幅度目的,利用较少的计算量就能够得到此组语音信号的特征参数。基于此组特征参数,除了能够有效减少编码语音信号过程中数码率,还能够把LPC 参数训练为模板完成存储,提升识别准确率,运算效率较高。识别过程的信号序列是随机序列[12],其对应的稳态函数具体如下式①:

(2)非特定人语音识别技术

基于语音识别对象来看,实际识别技术包含两类,各自是特定人与非特定人语音识别技术。根据本文设计的助教机器人的使用对象为《医学影像设备学》课程的所有学生,该系统采用非特定人语音识别。对于非特定人语音识别训练而言,必须要先针对进行足够量语音信号的语音模型分类分析[13],而后构建对应模型进行相应的训练,进行细节特征的提取,并明确特征差异。采取统计学方式确定相应基元语音特征,据此得出参考模型库,经过学习,达到较高的识别率。

2.3 系统硬件设计

(1)系统主控模块

主控模块是语音识别系统的核心所在[14],其工作过程中具体为:对识别指令予以判断,提取文本信息,将文本数据传输到语音合成模块,进行语音转换,由此实现语音交互控制过程。在硬件设计方面,主控模块为STM32F103C8T6,其是基于ARM Cortex-M3 内核的32 位微控制器,兼具稳定的中断管理系统与电源管理系统,存在丰富的扩展接口。这一芯片的优势在于性能稳定、功耗较低、开发简便等[15],有效满足人机语音交互系统主控制器的要求。

(2)语音识别模块

语音识别模块主要是完成语音识别并将结果传输到主控模块,利用主控芯片实现数据的处理。本系统在嵌入式处理器外围扩展语音芯片,方法较为便利,仅要求将语音芯片接口和微处理器连接,结构简易,易于搭建,有效减小了微处理器的计算压力,可靠性进一步提升,开发周期显著缩短。

对于语音识别方案而言,系统采取ICRoute 公司所发布的LD3320 高性能芯片,此芯片专注于非特定人语音识别,利用频域特征提取基元语音特征,不要求事先进行训练,且能够达到至少95%的准确率。LD3320 和主控制器通信方式具体包含两类,各自是并行通信与串行外设接口(serial peripheral interface,SPI)串行通信,相对而言SPI串行通信占用引脚资源较少,是最佳选择,因而以其来进行数据传输和控制[16]。LD3320 具备最多50 条候选识别句的容量,用户能够结合实际需求对语句进行动态修改识别。

(3)语音合成模块

语音合成模块采用了文字转语音(text to speech,TTS)的转换技术[17],TTS 语音合成的一般步骤见图3,编码后的语音参数存储在Flash ROM 中,通过单片机控制把存储的语音参数数据进行提取且进行译码,基于既定语音合成方法,实现语音参数到数字语音信号的转换,采取D/A转换器进行模拟语音信号转换,放大功率传输至扬声器。

图3 TTS 语音合成的步骤

在语音合成方案上本系统选用语音合成芯片SYN6288(北京宇音天下科技)。与其他形式的TTS 语音芯片相比,SYN6288 进行文本控制标记用来对输入语音音量大小进行控制,并进行语速以及语调的调节等操作,尤其是能够进行标点符号静音时间、字和字间的静音时间的调节,使得语气能够产生加重或是停顿的感觉。接收需合成的文本数据并进行语言转换,直接利用脉冲宽度(pulse width modulation,PWM)输出方式对扬声器进行获取,也能够与放大电路驱动扬声器外接[18],实现语音输出。

2.4 系统软件设计

基于Keil MDK 集成环境,使用C 语言进行系统软件设计。语音控制系统软件采取硬件模块化设计,模块化使得系统可以由多个子系统构成,子系统功能逐步实现后,整体软件的开发完成。

(1)软件开发环境

语音控制软件选择Keil MDK 作为开发工具,能够提供C 编译器、宏汇编、连接器、库管理以及具备丰富功能的仿真调试器,具备整体性的开发方案,利用集成开发环境(uVision)来实现功能组合。

(2)主程序设计

语音控制系统的主程序设计选择中断方式,具体包含四个步骤,各自是芯片初始化、写入识别列表、开始识别与响应中断。芯片初始化具体为工作模式设定、时钟频率设定等;写入识别列表具体为微控制器针对芯片进行标准普通话拼音条目的写入;开始识别具体为实现有关寄存器的设定;响应中断具体为识别工作启动后发出中断信号,麦克风进行声音采集过程能够引起中断信号,而中断程序能够依据寄存器值对结果进行分析。

语音识别产生的中断信号传给微控制器处理,完成正确有效的语音识别,利用对LD3320 语音识别结果的读取,使得寄存器能够获取到相应的编号,各语音指令均有匹配的编号,依据编号并基于FATFS 文件系统,选取既定音频文件,之后通过安全数码卡(secure digital memory card,SD 卡)抽取512 字节,按照32 字节每次的速率输入到SYN6288 的RAM 内,通过数据处理之后,通过D/A转换器来得到模拟音频信号,扬声器放大后输出信号,语音控制系统主程序流程图见图4。

图4 系统主程序流程图

2.5 医疗器械课程数据库的存储

针对该语音识别系统的使用对象为《医学影像设备学》课程的学生,课程主要学习内容主要分为8 个部分(X 线计算机体层成像设备、X 线发生装置、诊断X 线机、数字X 线设备、磁共振成像设备、超声成像设备、核医学成像设备、图像存储与传输系统)。利用统计学方法对该课程的内容,包括380 张照片和40 个视频进行问答提取和数据整理,共提取出450 个问答,进行数据库的存储。

存储模块用来存储合成语音的文本文件,基于可以获取更为充足存储容量进行文件存放,并给数据读写提供便利的目的,文中设计将SD 卡当作存储设备,其具有便携、通用和安全的特性,采取FATFS 文件系统进行文件管理。SD 卡支持SD 模式与SPI 模式存储。这之中,SPI 模式使用较为普遍,实现难度小,并且主控模块存在硬件SPI 接口,所以存储模块选择SPI 通信模式更为适用,利用SPI 接口与主控模块完成数据通信。

3 性能测试与教学验证

基于使得所设计语音交互系统的语音识别准确率、系统稳定性以及识别响应时间符合要求,要对系统进行测试,具体选择安静课堂环境与嘈杂课间环境两类,选取4 名非特定测试人员,分别对二、四、六音节进行测试,其中每音节有3个测试词语,各词语进行20 次测试,并对指令识别成功次数予以记录,对系统语音识别准确率进行统计,测试结果见表1。

表1 语音交互系统测试效果统计

进行测试的非特定人共计四名,男女各两名。结合表1 数据能够明确,处于安静课堂环境条件下,非特定人语音识别率能够达到92%,处于嘈杂课间环境条件下,非特定人语音识别率能够达到91.5%。基于语音识别率来看,较之于安静环境而言,嘈杂环境的语音识别率要更低;基于稳定性来看,较之于安全环境而言,嘈杂环境的稳定性也要更低;基于实时性来看,安静环境条件下的语音可以确保系统响应实时性,并能够控制在1 s 以内的响应时间,而噪声环境条件下所需要的响应时间明显更长。

本系统应用于2022 年第二学期开设的课程(《医学影像设备学》)中,能够与该课程的学生进行语音交互,完成应用与系统验证,取得了良好的教学效果。实践表明,文中设计的语音识别模块具有较高的稳定性以及语音识别率,较强的抗噪声干扰能力、结构简易、使用便利等优势。并且,由于其强大模块实用性,有效适用于服务机器人智能空间、智能家居以及消费电子等众多领域,理论价值较高,应用前景广阔。

4 结论

人机语音交互是当前语音信号处理领域的研究热点和难点,本文对基于STM32 的嵌入式语音识别模块的设计与实现进行了介绍,阐述了模块软件以及硬件构成与原理。此系统选择STM32 微处理器当作控制器,采取LD3320 芯片来进行非特定人语音识别,应用SD 卡进行存储,利用语音合成芯片完成模拟语音信号的输出,共同作用下实现人机语音交互的要求。此语音控制系统设计具备较高的模块化程度,用户能够结合自身需求的针对性增加要求的模块内容。

利用对各音色人员所进行的测试验证,以及医学工程、医学影像学等专业中《医学影像设备学》课程教学实践的验证,该助教机器人语音控制系统识别效果良好,语音合成自然流畅,系统功能稳定,识别正确率平均达到90%以上,语音交互系统整体达到了较好的实验效果,取得了良好的教学效果。

猜你喜欢
特征提取语音芯片
魔力语音
基于MATLAB的语音信号处理
基于MQ3与MP3的价廉物美的酒驾语音提醒器
对方正在输入……
基于Daubechies(dbN)的飞行器音频特征提取
Bagging RCSP脑电特征提取算法
芯片测试
多通道采样芯片ADS8556在光伏并网中的应用
基于MED和循环域解调的多故障特征提取
74HC164芯片的应用