《电子技术应用》

智能仿生双向手语翻译系统

2016年电子技术应用第7期 作者:李浩亮1,毛晓波1,宋纪元2,张肖宁3
2016/10/12 16:56:00

李浩亮1,毛晓波1,宋纪元2,张肖宁3

(1.郑州大学 电气工程学院,河南 郑州450001;2.郑州大学 机械工程学院,河南 郑州450001;

3.郑州大学 物理工程学院,河南 郑州450001)


    摘  要: 设计了一套智能仿生双向手语翻译系统,该系统主要由STM32微处理器、LD3320非特定语音识别模块、SYN6288语音合成芯片等组成,能够实现语音与手势的双向翻译。其中语音转手势部分可通过语音识别模块获得指令,手语机器人根据指令完成语音转动作的翻译。手势转语音部分通过数据手套捕获手臂的动作和姿态,识别手语动作,控制手语机器人发出语音。该系统具有成本低、识别度高、使用方便等优势,具有良好的应用前景。

    关键词: STM32;数据手套;语音识别;手语翻译

    中图分类号: TN6;TP24

    文献标识码: A

    DOI:10.16157/j.issn.0258-7998.2016.07.021


    中文引用格式: 李浩亮,毛晓波,宋纪元,等. 智能仿生双向手语翻译系统[J].电子技术应用,2016,42(7):83-86.

    英文引用格式: Li Haoliang,Mao Xiaobo,Song Jiyuan,et al. The intelligent two-way sign language translation system[J].Application of Electronic Technique,2016,42(7):83-86.

0 引言

    根据第六次全国人口普查数据显示,全中国听力残疾人数为2 054万人,言语残疾人数达130万人[1],他们无法像正常人一样交流沟通,造成了工作、学习、娱乐、就医、维权等不便。他们只能通过手语相互交流,而言语正常的人中只有很少一部分习得手语,聋哑人与普通人之间的交流变得更加困难。因此迫切需要一套智能翻译设备来帮助聋哑人与普通人进行正常的沟通和交流。

    2013年微软亚洲研究院和中科院计算所合作已经开发出了基于Kinect手语翻译系统,功能强大而且系统稳定。但该系统具有设备昂贵、检测范围固定、反向翻译需要借助于显示屏、与实际空间有隔阂等缺点,现在并没有普及。机器人是中国工业4.0发展的一个重要领域,未来科技的进步必将使得机器人从电脑屏幕的虚拟空间走进到现实的生活空间,将数据手套和智能手语机器人相结合,使普通群众能够享受智能化生活带来的便捷,符合未来发展的潮流。

1 总体结构与工作原理

    该双向手语翻译系统以STM32F103ZET6微处理器为主控制器,采用模块化设计思想,集成语音识别、动作捕捉、动作翻译、LED显示、蓝牙通信等功能,能够实现语音转手势和手势转语音双向翻译。语音转手势部分通过语音识别系统识别非特定人声,并将数据处理反馈给主控制器,然后匹配动作库,获取动作指令,完成指定的手语动作。手势转语音部分通过加速传感器和弯曲传感器捕获手势动作参数,通过比对动作库的值得出手势。此外,系统具有LED显示和语音合成功能,方便用户与机器人的交互。系统总体结构如图1所示。

ck4-t1.gif

2 系统设计

2.1 硬件电路设计

2.1.1 语音识别模块

    语音识别模块硬件电路包括单片机控制部分、语音识别部分和EEROM。其中单片机控制部分选用的是STM32F103ZET6芯片,该芯片为Cortex-M3内核,最高工作频率72 MHz,1.25DMIPS/MHz可实现单周期乘法和硬件除法,工作电压为2 V~3.6 V,同语音识别模块兼容。语音识别部分选用 LD3320 芯片作为识别芯片[2],该芯片内部集成了语音识别处理器和一些外部电路,包括AD/DA转换器、麦克风接口、声音输出接口等,不需要外接其他的辅助芯片如Flash、RAM等,直接集成在现有的产品中即可以实现语音识别功能,而且识别的关键词语列表是可以任意动态编辑的。语音识别模块总体结构图如图2所示,其中LD3320芯片内部的语音识别原理框图为虚线框内的部分[3],供电部分采用ASM117(3.3 V,1 A)稳压器。

ck4-t2.gif

2.1.2 LED显示模块

    LED显示模块采用64×32矩阵共阴极点阵屏,由高亮LED灯、74HC595芯片和UN2003构成。74HC595芯片具有8位移位寄存器和一个存储器,具有速度快、功耗低的特点。74HC595作为LED矩阵的驱动器[4],通过串行方式进行控制,具有电路简单、控制方便等优点。电源部分采用LM2596稳压器,最大输出电流可达3 A。LED显示模块原理结构图如图3所示。

ck4-t3.gif

2.1.3 语音合成模块

    语音合成部分选用SYN6288中文语音合成芯片[5],通过异步串口(Universal Asynchronous Receiver Transmitter,UART)直接同主控制器通信。SYN6288是一款性价比高、效果自然的中高端语音合成芯片。该芯片通过异步串口通信方式接收待合成的文本数据,实现文本到语音的转换。SYN6288芯片采用SSOP28L贴片封装,硬件接口简单、低功耗、音色清凉圆润,在识别文本、数字、字符串方面更智能、更准确,语音合成自然度更好,可懂度更高。

2.1.4 机械臂控制系统

    机械臂控制系统由32自由度机械臂、PCA9685芯片、LM2596芯片等构成。其中32自由度机械臂是模仿人手臂自主建模设计,并由3D打印机打印而成,关节处装有大扭矩的双轴舵机,能很好地模仿人体的手臂动作,通过控制舵机来实现关节精确移动,结构图见图4(a)。舵机控制器采用两块PCA9685芯片级联的方式,可同时控制32路舵机,电路原理图见图4(b)。PCA9685是一款I2C总线接口的16路PWM控制器,每路均可独立输出有12 bit分辨率(4096级)固定频率PWM。该PWM控制器运行在40 Hz~1 000 Hz范围的频率下,占空比在0%~100%范围内可调。供电部分采用LM2596(5 V,3 A)作为稳压芯片,并联一个1 000 μF大容量电解电容,提高电源的稳定性。

ck4-t4.gif

    舵机控制系统[6]实现对32个舵机的精确控制,通过特定算法实现了仅需要输入目标角度,关节便可匀速到达指定位置的目的。由于舵机较多,大大增加了控制的复杂性。程序控制将32个舵机分成了3组:左手(11个)、右手(11个)、左右胳膊(10个),并采取分组控制的方法。

2.1.5 数据手套设计

    数据手套[7]由微处理器STM32、弯曲传感器Flex4.5"、OLED显示屏和姿态传感器MPU6050[8]等构成,可以捕捉手指的弯曲程度和手臂的运动状态,经过滤波处理将计算后得到的值与手语库的值进行比对,得到对应的手语动作。其中弯曲传感器采用FLX-03A型Flex4.5",该传感器是一个特殊的电阻型传感器。当传感器弯曲或形变时阻值会发生改变,传感器正常状态时阻值大约是10 k?赘,当传感器向一个方向弯曲时阻值会增加。通过分压电路采集AD值可得到对应的电阻值,从而获得手指的弯曲程度。姿态传感器MPU6050集成了3轴微电子机械系统(Micro-electromechanical Systems,MEMS)陀螺仪、3轴MEMS加速度计,以及一个可扩展的数字运动处理器DMP(Data-Management Platform),可减少复杂的融合演算数据、感测器同步化、姿势感应等的负荷。传感器安装位置如图5(a)所示,图中:1为弯曲传感器,2为OLED显示器,3为MPU6050,4为微处理器STM32。图5(b)为自主设计制作的数据手套外观图。

ck4-t5.gif

2.1.6 蓝牙模块

    蓝牙模块在该系统中有两大功能:(1)可以和数据手套通信,将手套捕获的数据指令传至手语机器人,控制语音合成模块发出提示音;(2)可以同上位机通信,方便上位机发送调试指令,寻找动作的关键节点。蓝牙模块选用DX-BT05 4.0,该模块支持UART接口及SPP蓝牙串口协议,具有成本低、体积小、功耗低、收发灵敏性高等优点,只需配备少许的外围元件就能实现其强大功能。

2.2 软件设计

2.2.1 主系统软件设计

    主系统软件部分以STM32为主控制器,通过异步串口通信控制完成语音识别、LED屏显示、语音合成,并通过异步串口控制舵机驱动模块完成指定手语动作。主机软件通过内嵌的FatFS文件管理系统[9],完成对SD卡的数据存储与读取。

    具体实现过程如图6所示。系统上电初始化完成后,STM32发送控制指令控制手语机器人播放提示语音并通过LED显示模块播放开机动画,控制舵机驱动模块恢复至起始动作并等待识别。手语机器人获得识别的语音信息后对数据包进行解析,获得指令码并和动作库比对获得指令代码的指针。然后FatFS文件管理系统读取函数获得动作指令代码,并通过舵机控制器控制手臂关节实现手语翻译。同时,STM32可控制手语机器人发出提示信息,更好地实现人机交互。

ck4-t6.gif

2.2.2 主系统软件设计

    子系统软件设计包括语音转手势和手势转语音两部分。其中语音转手势子系统实现原理如下:语音识别进行系统初始化,读取位于存储器中的等待被识别的关键词句,等待语音识别指令。识别到语音信号后首先将非特定语音转换为文本。然后提取文本中的关键词,经过算法匹配获得相似度最高的动作,最后将动作指令码转换为数据包通过异步串口传送至主控制器。工作流程如图7所示。

ck4-t7.gif

    手势转语音子系统实现原理如下:数据手套通过姿态传感器捕获到手臂的动作后,启动定时器,通过弯曲传感器获得手指弯曲程度,并按照固定时间间隔记录手臂的动作和手指弯曲程度。一旦检测到动作停顿后,将每一帧的数据同手语库中的数据比对,寻找相似度最大的动作,然后清零计时器,将数据发送给主系统,OLED模块显示捕获到的动作。如果定时器超时,表示识别错误,结束本次识别,等待下一次动作的来临,工作流程图如图7(b)所示。

2.2.3 上位机调试软件设计

    为了方便动作库的编录,开发了一款动作库上位机调试软件。该软件通过VB可视化编程语言编写,能够通过异步串口与主机建立连接。通过拖动软件界面中滑块改变机器人关节角度值,寻找动作库中的关键节点。同时该软件可以将关键节点的值自动生成控制指令代码,提高动作库的编写效率。

3 实验结果

    系统上电后,自动启动初始化进程。完成初始化后等待语音输入。这里测试了词组“祝您身体健康”。通过向机器人说“翻译”,告知机器人进入翻译状态,机器人回复“好”,表示已经准备好,向翻译机器人说出“祝您身体健康”,机器人开始翻译预先编程好的“祝您身体健康”的手语动作库,回复“正在为您翻译”,同时LED显示屏显示正在翻译的动作名称。具体翻译过程如图8所示。

ck4-t8.gif

4 结论

    此款智能仿生双向手语翻译系统具有操作简单、词汇量较大以及双向转化的优势。产品成本低,识别率较高,不受光照等环境的影响,给聋哑人和正常人之间的沟通带来方便。同时该设备适合用于聋哑人家庭、公共场所以及公益机构进行手语教学,因此具有良好的应用前景。

参考文献

[1] 中国残疾人联合会.2010年末全国残疾人总数及各类、不同残疾等级人数[EB/OL].[2012-6-26].http://www.cdpf.org.cn/sjzx/cjrgk/201206/t20120626_387581.shtml.

[2] 洪家平.LD3320的嵌入式语音识别系统的应用[J].新器件新技术,2012(2):47-49.

[3] ICRoute.LD332X数据手册[EB/OL].[2011-10-13].http://www.icroute.com/web_cn/Download.htm1.

[4] 洪岳炜,王百鸣,谢超英.智能点阵电子显示屏控制系统设计[J].实验室研究与探索,2010,29(2):37-39.

[5] SYN6288--Manual[EB/OL].[2011-9-6].http://www.tts168.com.cn/bao/SYN6288--Manual.pdf.

[6] 梁锋,王志良,解仑,等.多舵机控制在类人机器人上的应用[J].微计算机信息,2008,24(1-2):242-243.

[7] 江立.基于CAS-GLOVE数据手套的手势识别技术研究[D].北京:北京交通大学,2006.

[8] 曲波,肖圣兵,吕建平.工业常用传感器选型指南[M].北京:清华大学出版社,2002.

[9] 崔鹏伟,闫学文.基于SD卡的FATFS文件系统的研究与应用[J].嵌入式控制系统,2013,26(11):141-142.

继续阅读>>