Health

基于FPGA的手语翻译系统

PR032

耀琦 王 (兰州交通大学)

Apr 02, 2022 2983 views

基于FPGA的手语翻译系统

Demo Video

[URL: https://v.youku.com/v_show/id_XNTg2MTE2MjI2NA==.html]

Project Proposal


1. High-level project introduction and performance expectation

基于FPGA的手语翻译系统

第一章设计目的及目标简述

  1. 1.1背景及需求分析

据第七次全国人口普查与第二次全国残疾人抽样调查的数据显示,目前我国各类残疾人总数已达 8500 万人,约占总人口的 6%。其中,听力残疾约 2054 万人,言语残疾约 130 万人。而我国手语行业发展缓慢,手语教育培训力量薄弱。手语翻译人员约有两千多名,而能够达到"对外翻译、得到聋人认同、手语运用熟练"这些最高标准的只有二十人左右,只占到所有翻译人员的十分之一,因此高水平手语翻译的市场缺口很大。

随着以科学发展观构建和谐社会脚步的迈近,全国奉献弱势群体,呼吁人文关怀的号召, 也惠及聋哑群体,作为弱势群体的聋哑人也越来越受到关注。聋哑人作为社会的重要成员,因此需要切实解决好聋哑人与健全人的沟通问题,帮助聋哑人融入社会。基于这一热点民生问题,经过一个多月的调查,结合聋哑人在日常生活中的不便,我们产生了做一个帮助聋哑人与正常人交流的工具的想法。

1.2 解决方案

本团队设计的基于FPGA的手语翻译器能够解决两个问题:

①便携性。方便聋哑人群体更好地融入社会,与健全人进行交流,故该系统外设装置的体积、质量以及功耗等应满足日常使用需求,同时还应稳定采集手语动作的相关信息。

②实时性。既然是日常交流,对手语动作的实时准确识别也是必须达到的效果。

1.3本产品简介与改进

系统设计采用DE10-Nano开发板作为主控制平台,完成手势信息的采集、基于K近邻分类算法手语智能化分类以及语音实时播报。手套以简单的白色工程手套为载体,五根手指各采用一根电阻式弯曲度传感器,用于在做出哑语动作时采集手部姿势,利用高精度陀螺仪获取手势的姿态和方位。利用FPGA高效并行的运算单元,提高了手势分类的运算速度和效率。

 

2. Block Diagram

3. Expected sustainability results, projected resource savings

第三章 目标性能参数

3.1手势识别率 

该翻译系统对不同手势的识别率基本是一样的,课题组分析了不同手势下翻译系统的识别情况,通过卷积神经网络大量数据训练,可以获得较好的鲁棒性和准确率,把不同手势的特征差异放大,让手势匹配路径更优,总欧式距离值更小,从而减少匹配过程中手势的误识和拒识率。手势识别成功率反应了手势翻译系统性能的优良程度,目前测得手势的平均识别率为88.1%,该参数目前还处于优化阶段,具体优化后的值将在后续展示中给出。

3.2手势识别反应时间

识别速度是当使用者做出手势动作时,翻译系统的响应时间,该值随着测试数据的不稳定性情况而变化。手势识别速度在一定程度上反应了总体性能的好坏。在支撑手势翻译速度性能参数的因素中,训练模板选取的好坏占有重要比重。本课题中涉及数据比对的部分是在FPGA中处理的,相比传统用arm 处理器,这一计算过程耗时大大降低了。手势平均识别时间为125ms

4. Design Introduction

第四章 设计需求分析

4.1背景及需求分析

据第七次全国人口普查与第二次全国残疾人抽样调查的数据显示,目前我国各类残疾人总数已达 8500 万人,约占总人口的 6%。其中,听力残疾约 2054 万人,言语残疾约 130 万人。另有统计数据表明,我国每年新生儿约为 2000 万,以千分之二的聋哑症实际发病率进行推算,每年不幸患有聋哑相关疾病的新生儿数量高达 4 万。而我国手语行业发展缓慢,除少数师范类高等院校在特殊教育专业中开设手语课外,手语教育特别是社会培训力量薄弱。由于无法与健全人进行有效的沟通交流,聋哑人在日常生活中会面临不同程度的歧视,部分聋哑人也因此变得自卑或自闭,甚至会有少数的聋哑人产生自残等过激行为。据了解,目前手语翻译员的一个主要来源是聋人学校教师,还有一部分来自各级残联组织,这些手语翻译人员约有两千多名,而能够达到“对外翻译、得到聋人认同、手语运用熟练”这些最高标准的只有二十人左右,只占到所有翻译人员的十分之一,因此高水平手语翻译的市场缺口很大。

随着以科学发展观构建和谐社会脚步的迈近,全国奉献弱势群体,呼吁人文关怀的号召, 也惠及聋哑群体,作为弱势群体的聋哑人也越来越受到社会各阶层的关注。聋哑人作为社会的一份子,是建设社会主义和谐社会不可或缺的重要成员,因此需要切实解决好聋哑人与健全人的沟通问题,帮助聋哑人能够积极乐观地融入社会。基于这一热点民生问题,经过一个多月的调查,结合聋哑人在日常生活中的不便,我们产生了做一个帮助聋哑人与正常人交流的工具的想法。至此,智慧手语手套的构思初具模型。

4.2 解决方案

目前,市面出现的帮助聋哑人的辅助设备大致可分为三种形式:电子人工喉、基于数据手套的识别系统以及基于机器视觉的手语识别系统。

  • 电子人工喉,又被称为助讲器,是一种手持的、由电池驱动的、利用电子振荡来产生声源的语音辅助设备,使用时置于下颌部,适用于部分喉切除术后患者或其它发声手术失败患者。但由于对发声时间和音调缺乏精准的控制以及价格昂贵难以投入使用。
  • 基于数据手套的识别系统是利用数据手套上装有的各类传感器完成对使用者手部运动数据的收集,然后对数据分析最后得出识别结果。基于数据手套的手语识别系统,有另外两种辅助设备不可比拟的优点:识别准确率高、不受外界条件限制。

但是该系统对于传感器要求极高,所识别的手势有限。

  • 基于机器视觉的手语识别系统比较多,它的主要工作过程是:通过各类摄像头对图像进行采集,获取手势数据,然后将手语转化为可视化的文字或语音片段进行播放。该方式不用携带大量设备,非常便捷的进行手势识别,通过卷积神经网络的深度学习之后识别准确率也大大提高。
  • 本团队设计的基于FPGA的手语翻译器能够解决两个问题:

①便携性。方便聋哑人群体更好地融入社会,与健全人进行交流,故该系统外设装置的体积、质量以及功耗等应满足日常使用需求,同时还应稳定采集手语动作的相关信息。

②实时性。既然是日常交流,对手语动作的实时准确识别也是必须达到的效果。

4.3本产品简介与改进

系统设计采用DE10-Nano开发板作为主控制平台,完成手势信息的采集、基于K近邻分类算法手语智能化分类以及语音实时播报。手套以简单的白色工程手套为载体,五根手指各采用一根电阻式弯曲度传感器,用于在做出哑语动作时采集手部姿势,利用高精度陀螺仪获取手势的姿态和方位。K近邻分类算法利用特征值距离最近思想实现训练模型的实时反馈优化进而实现手语的精确识别。同时利用FPGA高效并行的运算单元,提高了手势分类的运算速度和效率。

5. Functional description and implementation

第五章功能设计与系统实现简述

3 -1系统功能

展示,整个系统架构由0 -DE FLEX4.5弯曲传感器、MPU6050六轴传感器以及1个语音播报模块组成,各组件通电以后,进行系统初始化,初始化完成后用户开始计算动作数据采集,然后通过传输传输连接收集到的数据到 DE 1010,然后开发对数据进行的操作,由数据传输,实时传输,选择最合适的语音数据的数据,由转换播报模块发出来的数据为播放。

 

6. Performance metrics, performance to expectation

第六章特色与创新

  1. 6.1难点说明
  2. 1)手语动作较多,容易产生误判,对检索算法的判断的准确性要求高。

    2)为了采集手语动作,需要包含手势姿态数据采集模块,和手指弯曲数据采集模块。手势姿态数据采集模块使用陀螺仪来实现,手指弯曲数据采集模块通过使用5个弯曲传感器才采集手指弯曲程度,根据这两个模块的采集的数据进行算法检索从而获取手语动作。

    3)对采集后的手语动作通过检索算法判断后,需通过语音播报模块进行播报。

    4)然后把采集的图像信息与训练好的神经网络对比输出进行综合再进行同步传输。

    5)数据采集模块与语音播报要求高。

    6.2 创新点说明

    因此此次项目在FPGA上使用卷积神经网络实现手势识别具有如下优势:

    1)准确性。采用K近邻算法实现手语识别。利用特征值距离最近思想实现训练模型的实时反馈优化进而实现手语的精确识别。

    2)速度优势。以并行性计算为特征,能够提供较高的计算性能,提高算法的实时性。

    3)功耗降低。FPGA的功耗极低,与 CPU、GPU等比较,极大地较低了系统的功耗。

    4)体积更小。实验平台体积比 CPU、GPU小的多,更加适合于嵌入式移动平台应用。

    5)较好的可穿戴性。将多个传感器及核心模块、通信模块、功能模块集中在FPGA系统上,极大程度的减小了手套的体积和重量,让使用者具有较好的舒适性。

    6)利用FPGA高效并行的运算单元,提高了手势分类的运算速度和效率。

    6.3性能参数

    6.3.1手势识别率 

    该翻译系统对不同手势的识别率基本是一样的,课题组分析了不同手势下翻译系统的识别情况,通过卷积神经网络大量数据训练,可以获得较好的鲁棒性和准确率,把不同手势的特征差异放大,让手势匹配路径更优,总欧式距离值更小,从而减少匹配过程中手势的误识和拒识率。手势识别成功率反应了手势翻译系统性能的优良程度,目前测得手势的平均识别率为88.1%,该参数目前还处于优化阶段,具体优化后的值将在后续展示中给出。

    6.3.2手势识别反应时间

    识别速度是当使用者做出手势动作时,翻译系统的响应时间,该值随着测试数据的不稳定性情况而变化。手势识别速度在一定程度上反应了总体性能的好坏。在支撑手势翻译速度性能参数的因素中,训练模板选取的好坏占有重要比重。本课题中涉及数据比对的部分是在FPGA中处理的,相比传统用arm 处理器,这一计算过程耗时大大降低了。手势平均识别时间为125ms。

7. Sustainability results, resource savings achieved

第七章功能设计与系统实现

3 -1系统功能

如图所示,整个系统架构由DE10-Nano开发板,FLEX4.5弯曲传感器、MPU6050六轴传感器以及语音播报模块组成,各部件通电以后,进行系统初始化,待初始化完成后使用者开始做出对应动作,当动作做出时,会有数据采集,然后通过串口,将采集到的数据传输到DE10-Nano开发板,然后由开发板对数据进行多次分析配对,选择最正确的动作,发送对应的数据,由语音播报模块将发来的数据转换为语音播放。

7.1 各部分功能介绍

7.1.1 FPGA功能介绍

DE10-Nano作为整个系统的控制核心,主要负责数据的采集和处理工作,将采集到的数据进行综合分析运算,采用K邻近分类算法对手势数据训练模型与实时获取的手势进行最小距离计算,取最小值作为分类结果,从而实现手语的准确识别。同时利用FPGA高效并行的运算单元,提高了手势分类的运算速度和效率。

7.1.2 数据采集功能 

数据采集部分由电阻式弯曲度传感器和六轴高精度陀螺仪组成。电阻式弯曲度传感器配合外围电路,利用弯曲度不同时阻值的变化从而实现电压值的变化,从而实现手势数据的获取。六轴高精度陀螺仪负责对手势的方位和姿态进行解析和数据获取。

7.1.3 语音播报功能

语音播报模块采用YS-XFSV2语音合成模块,该模块支持支持任意中文文本、英文文本的合成,同时能够对文本进行分析,对常见的数字、号码、时间、日期、度量衡符号等格式的文本,能够根据内置的文本匹配规则进行正确的识别和处理;对一般多音字也可以依据其语境正确判断读法;另外针对同时有中文和英文的文本,可实现中英文混读

7.2 数据收集方案

数据采集主要包括手势姿态数据采集和手指弯曲数据采集,根据对这两项数据进行整合,从而得到手语所表示的数据。

手势姿态数据是通过MPU6050六轴传感器来采集数据,该模块中的MPU6050六轴传感器得到手的倾斜方向及运动特征。我们将直接使用现有的DMP库完成姿态解算以得到手的倾角和运动特征,从而得到手势姿态数据。

手指弯曲数据采集是通过五个弯曲传感器来进行数据采集,根据手语每个手指弯曲程度不同得到不同的电阻值。根据不同的阻值转换为不同的电压值,通过AD转换完成数据的采集,从而得到手指弯曲程度数据。

7. 3算法实现 

7. 3 .1 数据进行预分类算法

 

4 -1预分类样图

7.3.2具体检索算法:

二维数据空间:

4 - 3 数据空间

 

    这里代表着简单的二维单张图来我们实际在机中制作的八维空间单片数据,每个都为一个的模型。

    因为存在领域,对预期的问题进行预测。

  1. 检索算法面临的问题:

不能保证预先采集的样本只位于封闭空间的最中间,如图为理想预先设定模型:

 

4-4 默认标准

 

  1. 会出现这个问题:

 

4-5 数据对比

两个红色的点为每个封闭空间的典型样本值,但是他们不位于封闭空间的最中间,蓝色为实时采样到的样本值,若按照最近思想,蓝色的采样值就会被误判到左边的手势中,会出现误判。

  1. 为了解决这个问题,降低判罚率,我们采用以下方法:

4-6阿比对图

把采到的当前动作的数据,与和他处于同一类的每个封闭空间中的7个样本值计算平均多维可夫斯基距离,来判断当前动作处于哪一个封闭空间,大大降低了误判率。

7.4 硬件实现

手语部分系统主要主要信息采集系统数据采集、传输系统和广播报系统33部分,信息采集系统部分,系统结构包括数据采集系统和数据采集系统3部分,部分系统结构主要包括包括包括采集、系统信息采集和数据采集系统显示。

 

4-7 设计结构图

7.4.1主控制模块

 

4-8 DE10-Nano开发板

Terasic DE10-Nano 开发版是基于英特尔® Cyclone® FPGA,为硬件系统开发人员提供可重新配置的硬件设计平台。 该套件包括一块主板,该主板配备两个通用输入/输出 (GPIO) 扩展接头和一个 Arduino* 接头,因而可连接至多种传感器。

Terasic  DE10-Nano开发套件围绕Intel Cyclone® V片上系统 (SoC) FPGA构建,提供一个稳健的软件设计平台。基于ARM的高性能低功耗硬核处理器系统 (HPS) 由处理器、外设以及结合了FPGA架构的内存接口组成,采用高带宽互连内核。

DE10-Nano配备板载USB-Blaster II、SDRAM、2x40引脚扩充插头和12位分辨率的ADC。DE10-Nano开发套件提供了绝佳的设计灵活性,结合最新双核Cortex-A9嵌入式核心与领先业界的可编程逻辑。

7.4.2 更新数据采集模块

   为了准确的识别手语,需要获取手势的姿态、加速度等信息,系统采用MPU 6090模块如图3-6所示,MPU 6090为整合性6轴运动处理器件,相较与多组件方案,免除了组合陀螺仪与加速度时之轴间差的问题,减少了大量的包装空间。MPU 6090整合了3轴陀螺仪、3轴加速器,并含有加速器、磁力传感器或其他传感器的数位运动处理硬件加速引擎。同时MPU 6090的角速度全格感测范围为±250、±500、±1000与±2000°/sec(dps),可准确追踪快速与慢速动作,同时可以程式控制的加速度全格感测范围为±2g、±4g、±8g和±16g。MPU 6090可在不同的电压下工作,VDD供电电压为2.5V、3.0V或3.3V,逻辑接口供电为1.8V。该模块内部集成了姿态解算器,配合动态卡尔曼滤波算法,能够在动态环境下准确输出模块的当前姿态,姿态测量精度 0.01 度,稳定性极高。 我们主要用到该模块中的MPU6050六轴传感器得到手的倾斜方向及运动特征。我们将直接使用现有的DMP库完成姿态解算以得到手的倾角和运动特征。

 

 

7.4.3 手指弯曲数据采集模块

为获取手指弯曲数据,系统采用Flex 4.5弯曲传感器,该传感器如图3-6所示。传感器的弯曲程度能够转换成电阻值的变化,弯曲越大,电阻越高。在电路中将阻值变化转换为电压的变化,将得到的电压进行量化,从而建立了手指弯曲度与AD值之间的映射关系。弯曲传感器弯曲角度与电阻关系如图3-7所示。

4-10 弯曲度传感器

  4-11 弯曲度传感器阻值变化图

7.4.4语音播报模块


 

4-12 语音播报模块

 

通过手语数据报告模块采集、传输和识别后进行手语播报,系统采用中飞播的语音播送科大讯飞FS5152模块。模块支持文本、文本格式、图片文本的,中读网络,采用中文支持212、GBK、BIG5和GBUNICODE四种编码的通讯方式可以为I2C方式和SPI通讯方式,其中URAT支持四种通讯方式。频率,分别为4800bps、9600bps、57600bps和115200bps。

在本系统中,翻译文本数据量很小,对于传输速度要求不高,所以该系统采用相对简单的UART通讯方式来实现DE10-Nano开发板与语音播报模块的通讯。使用过程中,通过UART发送一帧有效数据实现语音播报,其中一帧数据包括固定帧头、翻译字符量、命令字、文本编码格式、文本数据和校验字。

8. Conclusion

第八章  总结与展望

人工智能已经是目前研究火热的技术,人机交互更是能够让人类更加深刻体会该技术所带来的便利。手势识别应用之广泛,研究前景之宽阔,都是驱使选该题的动力。通过不断更新的硬件平台与日益新颖的算法逻辑,手势识别将会在未来更加具有开发前景。 本文基于该背景下,研究了在微电子系统领域中的 FPGA 芯片应用与手势识别系统的结合相关的部分。现将工作总结如下:

1) 深入地研究了手势识别的技术,建立了基于优化后的数据传输协议来保证图像数据能够更有效地完成传输。研究了在之前利用现有 SPI 协议与优化后的协议的对比效果,发现优化后的协议在逻辑严谨上对本论文系统设计来说,是具有更好的逻辑效果。

2) 对手势识别的前后知识进行了梳理,掌握在图像处理中底层算法用软件平台计算耗费大量资源的本质,提出了硬件平台 FPGA 模块来进行解决,实现了底层算法的并行加速处理,得到了良好的效果。

3)建立了基于 k临近算法识别平台,并对于其中的参数进行了不断地调试,改进了该神经网络的识别速度与准确率。给出了在神经网络中识别手势的建立参数与识别率曲线图,实现了良好的手势识别效果。

4)所有的功能均按模块划分,采用自顶而下的方法设计了硬件平台与软件平台组成的系统联调。对每个模块的数据走向与端口设计都给出了结构图,可视化地给出了系统子模块设计的过程与思想。

   综上所述,本文对于基于 FPGA 的手势识别的相关研究取得了一定进展,对于该领域给出了自己的想法与解决方法。但由于手势识别是一个比较复杂的工作,其中面临的难题远不止这些,所以需要更加深入地去理解与考虑其中问题的更优解决方法。可以说更具有很多需要改进的地方,总结如下:

 (1) 应当采用更加灵敏且具有特殊功能的陀螺仪来研究在运动状态下的手势识

别工作,以适应当下不断先进的技术以及应用需求。

 (2) 在硬件平台的设计上,处理的速度还有比较大的提升空间,取决于所采用的

平台资源,缺乏了在更高资源的要求下,FPGA 是否可以更好胜任要求 证。

 (3) 如何在识别过程中更好地排除外部对识别效果的影响,识别率的提升空间还

没有追求到最佳状态,尚有进步空间,这也是未来工作需要进步的重要部分。

0 Comments



Please login to post a comment.