当前位置:首页 > 工业控制 > 工业控制
[导读]摘要:随着机器人技术不断发展,本文提出机器人的语音识别这一智能人机交互方式。在研究了基于HMM语音识别基本原理的情况下,在实验室的机器人平台上,利用HTK和Julius开源平台,构建了一个孤立词的语音识别系统。利

摘要:随着机器人技术不断发展,本文提出机器人的语音识别这一智能人机交互方式。在研究了基于HMM语音识别基本原理的情况下,在实验室的机器人平台上,利用HTK和Julius开源平台,构建了一个孤立词的语音识别系统。利用该语音识别系统可以提取语音命令用于机器人的控制。
关键词:机器人;语音识别;HMM;HTK;Julius

引言
    随着现代科技和计算机技术的不断发展,人们在与机器的信息交流中,需要一种更加方便、自然的交互方式,实现人机之间的语音交互,让机器听懂人话是人们梦寐以求的事情。语音识别技术的发展,使得这一理想得以实现,把语音识别技术与机器人控制技术相结合,正成为目前研究的热点,不但具有较好的理论意义,而且有较大的实用价值。
    语音识别技术应用于机器人系统大多是针对特定的环境,设计出语音命令来进行控制的。只需要对几十个字或词的命令行进语音识别,便可使得原本需要手工操作的工作由语音轻松完成。本文针对现有机器人平台,设计一个非特定人的孤立词语音识别系统。

1 语音识别原理及JuliUS简介
1.1 基于HMM的语音识别原理
    语音识别系统是一种模式识别系统,系统首先对语音信号进行分析,得到语音的特征参数,然后对这些参数进行处理,形成标准的模板。这个过程称为训练或学习。当有测试语音进入系统时,系统将对这些语音信号进行处理,然后进行参考模板的匹配,得出结果。此时便完成了语音识别的过程。
    目前,HMM作为语音信号的一种统计模型,是语音识别技术的主流建模方法,正在语音处理各个领域中获得广泛的应用。现在许多商用语音软件,以及各种具有优良性能的语音识别系统,都是在此模型上开发的,已经形成了完整的理论框架。
    基于HMM模式匹配算法的语音识别系统表现为:在训练阶段,采用HMM训练算法为每一个词条建立一个HMM模型。词条经过反复训练后,将得到的对应HMM模型加入HMM模型库中以数据的形式保存。在匹配阶段,也就是识别阶段,采用HMM匹配算法将输入的未知语音信号与训练阶段得到的模型库中的模型进行匹配,输出语音识别的结果。
1.2 JuliUS简介
    Julius是日本京都大学和日本IPA(Information-tech-nology Promotion Agency)联合开发的一个实用高效双通道的大词汇连续语音识别引擎。目前已经能较好地应用于日语和汉语的大词汇量连续的语音识别系统。Julius由纯C语言开发,遵循GPL开源协议,能够运行在Lin-ux、Windows、Mac:OS X、Solaris以及其他Unix平台。Julius最新的版本采用模块化的设计思想,使得各功能模块可以通过参数配置。
    Julius的运行需要一个语言模型和一个声学模型。利用Julius,通过结合语言模型和声学模型,可以很方便地建立一个语音识别系统。语言模型包括一个词的发音字典和语法约束。Julius支持的语言模型包括:N-gram模型,以规则为基础的语法和针对孤立词识别的简单单词列表。声学模型必须是以分词为单位且由HMM定义的。
    应用程序可以有两种方式与Julius交互:一种是基于套接字的服务器一客户端通信方式,另一种是基于函数库的嵌入方式。在这两种情况下,要识别过程结束,识别结果就被送入应用程序中,应用程序就能得到Julius引擎的现有状态和统计,并可以操作官。Julius概述如图1所示。



2 系统框架
2.1 硬件结构
    在语音识别的机器狗控制系统中Atom Z510为训练学习机大脑(1.1 GHz主频的Intel Atom Z510嵌入式控制平台),它主要完成语音识别的功能。PXA270控制器(Intel公司于2003年底推出的性能强劲的PXA27x系列嵌入式处理器,基于ARMv5E的XScale内核,最高频率可达624MHz)作为机器狗本体上的核心智能控制器,接收Atom Z510识别后的结果,发出控制命令。ATmega128控制器(Atmel公司的8位系列单片机中的一种,运行频率16 MHz)完成基于串行总线的数字舵机控制,完成对机器狗的前后腿以及尾巴等关节控制。机器狗硬件结构平台如图2所示。


2.2 软件结构
    整个机器人系统包括3个模块:Julius语音识别模块、GUI人机界面、机器人控制模块。Julius将识别的语音命令提交给GUI模块,并在GUI上显示;同时GUI将语音命令转化为动作控制命令并发给机器人控制模块;GUI还可以控制Julius的启动和停止。其中机器人控制模块主要在PXA270上,而语音识别和GUI是在Atom Z510上。系统软件模型如图3所示。



3 语音识别系统构建
    一个完整的语音识别系统一般包括3部分:声学模型、语言模型和识别器。在本系统中只建立基于控制命令(动词)的识别语法,其他词忽略,因此没有构建语言模型;识别器采用Julius开源平台,此部分只用配置参数和相关文件。本文主要工作是声学模型训练和语音识别系统构建
3.1 声学模型训练
    声学模型是识别系统的底层模型,是语音识别系统中最关键的一部分,它是每个声学单元的声学模型参数集合。本系统的声学模型是使用HTK对采集的语音库进行多次迭代训练后提取的,基于词的声学特征向量集。HTK(HMM Tools Kit)是由英国剑桥大学工程系的语音视觉和机器人技术工作组(Speech Vision and Robotics Group)开发,专门用于建立和处理HMM的实验工具包,主要应用于语音识别领域,也可用于语音模型的测试和分析。其具体训练步骤如下:
    (1)数据准备
    收集汉语标准普通话的语料库,并将语料库中的语音标记,创建语音识别单元元素列表文件。
    (2)特征提取
    本系统采用MFCC进行语音的特征参数提取,训练中将每一个语音文件用工具HCopy转换成MFCC格式。
    (3)HMM定义
    在训练HMM模型时要给出模型的初始框架,本系统中的HMM模型选择同一个结构,如图4所示。该模型包含4个活动状态{S2,S3,S4,S5),开始和结束(这里是S1.S6),是非发散状态。观察函数bi是带对角矩阵的高斯分布,状态的可能转换由aij表示。


    (4)HMM训练
    本系统先使用HInit工具对HMM模型进行初始化,再用HCompv工具来对模型进行平坦初始化。HMM模型的每个状态给定相同的平均向量和变化向量,在整个训练集上全局计算而得。最后用HRest的多次估计迭代,估计出HMM模型参数的最佳值,经多次迭代,将训练得到的单个HMM模型整合到一个hmmsdef.mmf文件中。声学模型HTK训练流程如图5所示。


3.2 Julius应用
3.2.1 Julius部署
    在本系统中语音识别部分是部署在Atom Z510上,而Atom Z510上首先需要移植linux操作系统(本系统采用的是ubuntu8.10)以上步骤在此不详细介绍,文献中有详细说明。语音识别的核心部分是Julius识别器,需要将Julius源码编译部署到Atom Z510平台。其步骤如下:
    ①要确保linux系统中有以下支持库:Zlib、flex、OSS音频驱动接口、ESounD和libsndfile。
    ②从Julius官网下载源代码Julius-4.1.5。
    ③解压:tar-zxjf julius-4.1.5。
    ④编译:%./configure,%make,%make install。
3.2.2 Julius配置
    Julius全部采用C语言代码实现,采用模块化设计方式,而且各功能模块可配置。在使用前需要将配置参数写入jconf文件,此文件作为运行参数载入系统,系统扫描参数配置并启动各功能块。其中重点介绍以下几个配置参数:
    ◆-dfa rtdog.dfa,指定语法文件rtdog.dfa;
    ◆-v rtdog.dict,指定字典文件;
    ◆-h rtdog.binhmm,指定HMM模型文件;
    ◆-lv 8000,设定音频的阈值便于滤去噪音;
    ◆-rejectshort 600,设定最小的语音长度;
    ◆-input mic,设定语音的输入方式为microphone。
3.3 语音识别系统软件设计
3.3.1 GUI设计
    本系统为了方便测试,采用QT4的图形库来开发人机界面(GUI),同时加入了手动控制的按钮。其总体功能如图6所示。通信线程是本系统的数据传输枢纽,十分重要。在QT中通过对线程类QThread继承来实现新的线程设计。该类提供了创建一个新线程以及控制线程运行的各种方法。线程是通过QThread::run()重载函数开始执行的。在本系统中设计了1个数据通信线程,用它来不断地读取共享内存中的语音命令,然后将其转化为控制命令传给机器人控制模块。


3.3.2 模块间通信
    由于系统的3个模块不在同一个平台上部署,运行过程中需要进行数据通信。GUI和Julius都部署在Atom Z510平台上,但属于2个进程,它们之间可以通过共享内存来交互数据。而GUI和机器人控制模块就需要通过网络通信来实现数据交互。这里采用的是基于TCP的socket编程接口来实现模块间的通信,模块间通信流程如图7所示。



4 实验测试
    演示系统界面如图8所示。本文使用大量的语音样本来完成HTK的训练和模式构建,语音样本采用16 kHz采样,16位量化。独立的语音识别测试中,将训练集以及测试集中语音样本和识别结果进行了对比分析。本文语音样本的内容包括训练集(语料库中的语音成分)和测试集(本实验中采集的语音)。由于本系统只用提取语音命令,不需要完整句子的识别,所以没有针对句子做测试。


    本文对于训练集基于词的识别率为71.7%,测试集基于词的识别率为56.5%,测试结果如表1所列。


    表中各符号所表示的意义如下所示:
    H,正确;S,替代错误;D,删除错误;I,插入错误;N,标记文件中单元总数;SENT,句子,WORD:基本单元。
   

结语
    本文在给定的实验室机器人平台上,设计了基于语音控制的机器狗系统。其中,语音识别子系统通过HTK和Julius的开源平台构建而成。经过测试分析,该系统能够较好地识别人发出的语音命令,简化了机器人的操作,使机器与人的交互更加智能化。

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

2024年4月28日 – 专注于推动行业创新的知名新品引入 (NPI) 代理商™贸泽电子 (Mouser Electronics) 宣布与Analog Devices, Inc. (ADI) 合作推出一本新电子书,重点介...

关键字: 柔性制造 机器人 机器视觉

上海2024年4月17日 /美通社/ -- 在2024 F1中国站即将拉开帷幕之际,高端全合成润滑油品牌美孚1号今日举办了品牌50周年庆祝活动。三届F1年度车手总冠军马克斯•维斯塔潘也亲临现场,共同庆祝这一里程...

关键字: BSP 汽车制造 行业标准 产品系列

北京2024年4月17日 /美通社/ -- 2024年4月13日,由北京康盟慈善基金会主办的"县域诊疗,规范同行"——肿瘤诊疗学术巡讲项目首站在广州隆重召开。本次会议邀请全国多位肺癌领域专家和县域同道...

关键字: AI技术 医疗服务 BSP 互联网

海口2024年4月16日 /美通社/ -- 4月14日,在中法建交60周年之际,科学护肤先锋品牌Galenic法国科兰黎受邀入驻第四届中国国际消费品博览会(以下简称"消博会")法国馆。Galenic法...

关键字: NI IC BSP ACTIVE

TDK 株式会社(东京证券交易所代码:6762)隆重宣布其具有片上处理能力的 InvenSense SmartSonic™ICU-10201 超声波飞行时间 (ToF) 传感器全面上市。该传感器可助力实现高性能和低功耗的...

关键字: 飞行传感器 物联网 机器人

ST4E1240 是意法半导体新系列收发器芯片的首款产品,为现代高性能工业应用提供强大而可靠的 RS-485信号传输解决方案。新收发器支持的数据速率远高于原有的RS-485 标准,可以延长电缆长度实现多点连接,总线上的收...

关键字: 工业自动化 智能建筑 机器人

机器人技术将与移动互联网、物联网、大数据、云计算、人工智能等新一代数字技术进一步融合,特别是5G技术将使工业机器人成为工业智能制造体系的一部分,通过实时传输数据提高效率。

关键字: 机器人 医疗机器人 互联网

这项民意调查使业界有助于了解工业5.0是否准备就绪

关键字: 工业5.0 工业4.0 机器人

在科技迅猛发展的今天,履带机器人在诸多领域展现出了广泛的应用前景,从现代农业的采摘、喷药,到消防领域的救援,再到现代化防疫中的喷雾消毒,甚至是复杂地形的运输任务,它们都能出色地完成任务。而驱动这些履带机器人的核心部件,便...

关键字: 履带机器人 机器人 电机
关闭
关闭