当前位置:首页 期刊杂志

基于神经网络的智能盲人物体识别和避障仪设计*

时间:2024-07-28

陈威宇,朱 颖,钟其麟,曾焕凯

(广东工业大学华立学院,广州 511325)

0 引言

根据世界卫生组织的数据显示,截至2010年,中国的视力残疾人数仍高达7 500万,其中盲人数量达824万,如何帮助盲人更像一个正常人去生活早已成为各界人士的思考问题。针对盲人的日常出行问题,目前最普遍解决方法就是使用盲杖,但这种方法仍然无法使盲人感知到超过盲杖长度以外的东西,在该距离以外未知因素,很有可能使盲人找不到正确的行走路线,甚至会对盲人造成安全问题,所以其具有一定的局限性。同时也有盲人在使用导盲犬作为辅助工具,这是一个很好的解决方案,但是训练一条导盲犬耗时耗力,符合条件的犬类数量也不多,这使得该解决方案的费用高昂,无法被大量推广使用。

导盲犬这个角色可以被不需要休息时间的、更加可靠的,同时也是更加安全的电子智能产品代替[1]。基于这个想法,本文设计制作了一款基于神经网络的智能盲人物体识别避障仪,能在成本低廉、结构简单和便于携带的情况下,帮助盲人获取外界环境信息,满足盲人的日常出行需求,回归普通人生活。

1 总体系统设计原理

该避障仪由STM32单片机、摄像头、语音播报模块、电子罗盘定位模块4个部分构成。摄像头采集图像数据传输给STM32单片机进行图像处理在数据库中进行匹配,运用电子罗盘定位模块给特定物体提供精确3D位置和对盲人的运动方向进行实时测量,匹配到特定物体后,STM32驱动语音播报模块进行语音提示,告知盲人某物体的位置,从而帮助了盲人的日常出行,达到了导盲的作用;避障仪的总体设计如图1所示,需要解决的核心问题是:障碍物检测等环境信息检测、神经网络的数据集的建立、图像信息处理及声音映射,避障仪上的摄像头模块可以获取盲人周围的环境信息,Elman神经网络能够建立并处理环境信息的数据集。

图1 总体设计

2 系统硬件设计

2.1 单片机最小系统

该避障仪的主控采用STM32F745单片机,其体积小巧,方便嵌入避障仪中使用,串口丰富,能够满足控制避障仪中的语音播报模块和电子罗盘等多个外设,其集成了ChromARTAccelerator™,该图形加速器创建内容的速度达到单独使用内核时的两倍[2]。除了高效的2-D原始数据复制以外,Chrom-ART加速器还支持其他功能,比如图像格式转换或图像混合(透明度混合)。这样,Chrom-ART加速器就提高了图形内容创建速度,使得避障仪的反应更加迅速,也为其余程序节省了MCU内核处理带宽[3],经测试,STM32F745单片机适合作为避障仪的主控板。

2.2 电源模块

选择一个合适的电源模块对一个控制系统来说是十分重要的,经过实践,该产品决定使用microusb口进行供电,使用SPX3819M5稳压3.3 V电源模块为单片机供电,SPX3819M5稳压降压电源模块原理图如图2所示。使用LM1117稳压3.3 V电源模块为避障仪的各个模块供电,LM1117稳压降压电源模块原理如图3所示,外部电流的电压经过稳压降压模块能够输出避障仪内部各个模块的工作电压,保证了避障仪的正常工作。

图2 SPX3819M5稳压降压电源模块原理

图3 LM1117稳压降压电源模块原理

2.3 电子罗盘模块

电子罗盘是一种重要的导航工具,能实时提供移动物体的航向和姿态,该避障仪采用LSM303DLH高精度三维电子罗盘,该电子罗盘拥有三维补偿技术,产品40°的倾斜角在一定程度上补偿了在稳定的磁环境下的磁偏差[4],双度下仍然可以提供精确的航向数据。而且LSM303DLH里的复位电路给其带来了很多区别与其他电子罗盘模块的优点,即使遇到外界强磁场的干扰,在干扰消失后LSM303DLH也能恢复正常工作而不需要用户再次进行校正;即使长时间工作也能保持初始磁化方向实现精确测量,不会因为芯片温度变化或内部噪声增大而影响测量精度,除此之外还能消除由于温漂引起的电桥偏差。轴倾角传感器、三轴磁阻传感器和MCU构成一个三轴电子罗盘,双倾角传感器能够对磁力仪在其非水平状态下进行补偿,三轴磁阻传感器能够测量地球的磁场大小以及方向,MCU可以处理倾角传感器和磁力仪反馈回来的信号。传感器产生的模拟信号经过放大后传输到MCU中进行处理,从而达到了对盲人的运动方向进行实时测量的功能,单片机按照一定的时间间隔来记录盲人的运动方位,从而实现了盲人行走轨道的存储功能[5]。也会给特定物体提高3D位置,大大提高了智能盲人仪的性能。电子罗盘模块接口电路如图4所示。

图4 电子罗盘接口电路

2.4 语音播报模块

该避障仪采用内嵌了XFS5152CE芯片的TTS语音模块,采用TTS技术,使得摄像头获取的图像信息通过主控板转换成相应物体的文本,再经过语音播报模块转换成语音,从而实现了文本转换为语音。模块内部有多种提示音效,能够适用于多种场合的信息提示和警报等功能[6]。该语音模块能够合成中英文文本,说明其对服务人群具有广泛性,适用于避障仪的应用。

2.5 摄像头模块

该避障仪采用OV5640摄像头模块,其拥有的500万像素能够满足避障仪对于道路信息的获取,摄像头利用OmniBSI这一项技术使得其拥有高灵敏度、低噪声和低串扰等高性能,还有自动白平衡、自动曝光等自动图像控制算法[7],以上技术能够排除一些外部因素(光线、阴影)对摄像头识别度的干扰,大大提高了避障仪对障碍物的识别率,使得避障仪识别到的物体更加清晰和准确;通过镜头生成的光学图像把摄像头看到的画面投射到感光传感器上从而被转化为模拟信号,经过模数转换器变成数字图像信号,接着经过图像处理器传输到主控系统的存储器中,摄像头就可以把获取的画面传输到主控板中,最后通过主控板中特定的程序输出图像画面中障碍物的文本,经过语音播报模块转化为声音信号传达给盲人,从而达到引导盲人日常出行的作用[8]。

3 系统软件设计

3.1 Elman神经网络

Elman神经网络是一个具有局部记忆单元和局部反馈连接的递归神经网络,其由输入输出层、承接层以及隐含层组成,Elman神经网络适应时变特性,有短期记忆功能,能够内部反馈、存储和利用过去时刻输出信息,因此能够记录盲人的行走路线以及方位,适合应用于避障仪。它的记忆功能的原理是承接层存储前一时刻隐层神经元的输出值,然后承接层将前一时刻的隐层神经元的输出值返回给隐含层的输入,不仅有对于动态信息较强的处理、计算能力,还增强了网络的全局稳定性,因此适合应用在快速寻优以及时间序列预测的问题上。通过一些学术理论和实验结果表明,网络本身拓扑结构能够限制神经网络的泛化能力,所以运用一种优化的Elman-IOC神经网络,若想实现增强网络并行信息处理的能力,则要将输入-输出层连接到Elman神经网络中,Elman-IOC神经网络结构如图5所示。

图5 Elman-IOC神经网络结构

数学模型如下:

式中:U(f)为网络输入;Xc(t)为承接层输出;X(t)为隐含层输出;Y(t)为网络输出[9]。

误差反向传播算法是神经网络中训练的重要一环,其能修正网络中各个参数,从而达到减小误差的作用,使得训练结果更加准确,当误差函数收敛到提前设定的误差精度的时候,说明训练结束,Elman神经网络算法流程如图6所示。

图6 Elman神经网络算法流程

3.2 神经网络数据集及其训练

神经网络可以进行一些基本物体的识别以及笑脸检测、数字识别等。神经网络数据集Cifar10可用于普适物体识别,可以分辨10种不同的物体,比如:其可以分辨飞机、船、汽车、鸟、猫、狗、杯子等。神经网络数据集能识别迁移普通的适物体,并且能够应用于多分类中(一个子类数据集Cifar100可以达到100类)。神经网络的训练,例如Cifar10,是由6万张32×32的RGB彩图构成的,它共有10种分类,还有用于交叉验证的5万张的训练以及1万张的测试。构建并训练Elman神经网络是其应用于避障仪的重要环节,其具体步骤如图7所示,首先应该采集数据集,生成序列数据,然后建立波形数据集,接着构建并训练模型并用训练好的模型预测新样本,最后比较得到的结果和预测值之间的差异。

图7 构建并训练Elman神经网络步骤

4 结束语

智能盲人物体识别与避障仪由STM32单片机、摄像头、语音播报模块、电子罗盘定位模块构成。该避障仪体积小巧,携带方便,满足盲人的日常出行。STM32单片机在摄像头采集的图像中通过算法可以对物体进行识别,准确知道物体的方位。以STM32为主芯片,在图像识别上运用神经网络的数据集来识别物体并采用特征点检测实现避障。采用电子罗盘定位模块确认障碍物方位的效果和对盲人的运动方向进行实时测量,从而达到了对盲人出行的避障效果,让其能够独立出行。避障仪可以被广泛应用于眼睛患有疾病或遭遇意外事故而导致失明的人当中,符合现代化、智能化生活的理念,可以作为盲人智能健康生活迈出第一步。避障仪大大方便了盲人的生活和减少他们的心理问题,不仅解决了自己的一些生活问题还为社会减少一份压力。该避障仪具有较高的投入产出比,而且市场针对性强,适用性好,有着较大的应用价值和发展前景[10]。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!