面向视障人群的视听辅助装置设计
2022-08-28李杲阳宋晓炜文秀静牛旭
李杲阳,宋晓炜,文秀静,牛旭
(1.中原工学院电子信息学院,河南 郑州 450007;2.开封大学,河南 开封 475004)
0 引 言
从20世纪80年代到21世纪初,我国进行两次残疾人调查。残障人士包括视力残疾、言语残疾、肢体残疾、智力残疾、精神残疾、多重残疾等,其中属于视力残疾的有视盲患者和低视力患者。视盲患者的患病率大约是低视力患者患病率的一半。造成视力残疾的病因有很多,两次的抽样调查总结得出,白内障是位居第一的致残原因,位居第二和第三的致残原因分别是角膜混浊与视网膜病,由此可以得出老年人的患病率明显高于儿童。从世界卫生组织发布的数据可以得出,中国的白内障患者人数是最多的,其导致视力残疾的人数排在世界首位。
虽然视障人群的数量很大,但是在日常生活中却很少见到他们的身影。这表明现有协助视障人群出行的设施还不够完善。决定视障人群出行与否的因素主要有盲道、导盲犬、盲杖、智能导航软件等。其中依靠盲道出行是视障人群最常用的出行方式,地铁站和马路边大多设有盲道。但是经调查发现,盲道的损坏情况还是很严重的。有些盲道本身就设计得不够合理,有些盲道由于自然原因遭到损坏之后没有得到及时的修缮、有些盲道则被一些物体遮挡或者占用。导盲犬对视障人群也是有很大帮助的,导盲犬可以代替人类陪伴以及照顾视障人群,但是导盲犬的培养过程是漫长且复杂的。因为导盲犬的训练过程既耗时又耗力,所以导盲犬的价格很高,并不是每一个家庭都有能力购买导盲犬。盲杖是视障人群出行的首选工具,也是视障人群的必备工具。但是在使用盲杖时需要有一个对视障人群友好的城市环境。当盲道被毁或者缺少导盲犬时,盲杖是起不到作用的。这样就造成了当前视障人群很少出行的现象。随着社会的不断发展,一些智能软件被开发出来帮助视障人群安全出行。各国都在不断提高对视障人群的关注,设计了一系列的电子导盲系统。对视障人群而言,他们最需要了解的就是周围的环境,所以有大量的研究员致力于利用视觉系统来帮助视障人群获得更多更全面的环境信息。依靠视觉系统获取环境信息用以补偿视障人群对视觉感知的缺失,弥补其内心的渴望和现实的需求。
随着技术的发展,各种各样的盲人辅助设备相继推出。2012年一款盲人视觉辅助系统NAVIG 被开发出来,这个系统主要是给视障人群提供视觉导航的提示,以及实现对周围目标的检测。2016年,一个基于彩色相机的深度相机视觉导航系统被研制出来,这个系统利用深度相机采集到的深度信息来辅助视障人群在家里行走。我国在2011年设计出一款导盲杖,这款导盲杖不仅可以给视障者的家属发送位置信息,还可以提示视障人群前方有障碍物。虽然有大量的助盲设备被设计制作出来,但是对于视障人群来说,这些设备都或多或少地存在视觉盲区,不能让视障人群全方位无死角地了解周围的环境。
本文针对视障人群不能看到眼前物体的问题,设计一款面向视障人群的辅助装置。该装置易于被视障者携带,成本低,功能完备,除了具备一般导盲装置的功能之外,还增加了目标检测与识别模块。该模块以近几年比较流行的深度学习为基础,经过对比分析,选用YOLOv4 目标检测算法进行目标检测与识别。检测结果经过液晶显示屏显示,并与超声波测距模块相结合,得出视障人士前方障碍物的类别及距离,通过语音模块的扬声器播报距离和类别信息,使视障人士能够快速找到室内的物品,还可以及时了解室外周围环境的情况,进而可以快速地对危险情况做出反应,有效提升了视障人群的安全感与便捷感。该辅助装置还具有可扩展性,可以针对不同的需求增加相应的模块,所以该辅助装置对视障人群具有很强的应用价值和现实意义。
1 硬件设计与分析
本设计以Arduino Mega 2560 为核心,通过与各个模块的连接来实现目标识别、超声波测距、语音播报、屏幕显示检测结果等功能。系统结构框架图如图1所示,电路板连接图如图2所示。
图1 系统结构框架图
图2 设计电路连接图
Arduino Mega 2560 使用的是精简指令系统计算机(RISC)。RISC 的输入和输出都很强大,可以支持54 路数字的输入与输出,且拥有四个串口。这些串口能够保证设备之间的快速通信,能够快速实时地完成信息的交换。另外还添加了ArduinoMEGASensorShieldV1.0 专用传感器扩展展板,便于增添一些传感器,比如超声波测距仪、语音合成模块、电池模块、视觉模块等。
视觉模块采用的是HuskyLens。因为它具有功能齐全、操作简单、体积小巧、内置2.0 寸IPS 显示屏等特点,所以非常适合视障人群使用。它不仅可以实现对图像信号的处理,还可以完成对视野内物体的识别。
语音合成模块采用的是SYN6288 中文语音合成芯片(一款非常实用的语音合成芯片)。语音合成效果让视障者听起来很自然,能够将日常生活中的常用文本快速准确地播报出来。对于英文字母,该芯片也可以按照字母的正确发音进行播报。
主控制器模块通过RTD(Receive(rx) Data)、TXD(Transmit(tx) Data)及SYN6288 语音合成芯片进行数据的发送和接收。控制器的工作流程主要包括串口的收发、语音合成、语音线路输出语音至功率放大器、喇叭等。主控制器的指令能够在每一部分得到快速准确的响应,进而实现语音播报功能。因此该芯片可以将视觉识别模块识别出的类别名称和超声波模块检测的距离播报给视障人士,工作流程如图3所示。
图3 SYN6288 工作流程图
显示模块采用OLED 液晶屏(有机发光二极管)。视障人士不需要观看显示的内容,因此OLED 液晶屏设计得很小。一方面节省了电池的耗电量,另一方面也减少了设备的体积和重量。OLED 液晶屏的尺寸设计为刚好能够让调试者顺利调试各项功能。
电池模块采用锂电池给主控板供电。该电池在充满电的情况下,能够使该辅助设备工作5 ~6 个小时。该电池充电方便,具有实际应用价值。
2 软件设计与流程
主控制器模块在整个软件中扮演着很重要的角色。它不仅要对各个模块的信息进行汇总分析,还需要控制各个模块做出相应的反应。启动小助手之后,首先需要进行初始化,接着HuskyLens 读取数据同时超声波模块开始工作,主控程序流程图如图4所示。
图4 主控程序流程图
现有的目标检测算法都是利用卷积神经网络的功能,提取输入图像中的深层特征。因为卷积神经网络能够自动获取到图像中的特征,所以逐渐替代了传统的手工设计特征的方法。越来越多的研究者致力于运用CNN 来提取图像中的特征。现有的目标检测算法可以同时输出目标的空间位置信息与目标的类别,很适合用来辅助视障人群了解周围的信息。视障人群因为看不到周围的物体,所以对辅助设备能否检测出周围物体的位置和类别十分看重。现有的目标检测算法就可以快速而准确地完成这项任务。目标检测算法按照是否回归可以分为两种:第一种是单阶段目标检测算法,第二种是两阶段目标检测算法。单阶段目标检测算法主要是YOLO系列,它们的检测速度相对较快。两阶段目标检测算法主要是Faster R-CNN系列,它们的检测精度相对较高。随着单阶段目标检测算法的不断发展,其检测精度也超越了两阶段目标检测算法,所以单阶段目标检测算法不仅检测速度快而且检测精度高。因为本实验针对的是视障人群的辅助避障,需要准确实时地检测目标,所以我们选用检测速度较快、检测精度较高的单阶段目标检测网络作为本课题的目标检测网络。通过对经典的四种单阶段目标检测网络进行对比,选取最优目标检测网络。实验训练用的数据集是常用的Pascal VOC 公共数据集。四种单阶段目标检测网络的网络参数都设置为相同的值,都不使用预训练权重。在训练好以后,对比四种检测算法的mAP 值,如表1所示。
由表1可以看出,Retinanet 的mAP 为79.34%,M2Det的mAP 为79.89%,YOLOv3 的mAP 为85.48%,YOLOv4的mAP 为88.56%。最后分析得出,选用mAP 值最大的YOLOv4 网络作为本课题的目标检测算法。
表1 四种检测算法的mAP 值
视觉识别采用的是HuskyLens,在Mind+图形化编程工具编写好代码以后,需要把写好的程序烧录到Arduino Mega 2560 中。首先需要一根USB 连接线把电脑与HuskyLens 连接起来,接着确认连接以后装置是否能够正常运行,然后运行代码上传软件,最后把写好的代码上传到Arduino Mega 2560 中。这个过程不是很快就可以完成的,需要耐心等待一段时间。等代码烧录完成就可以正常开机,视障人士便可以使用这个视障辅助装置来感知周围的环境信息了。
3 实验与结果分析
如图5所示,开机后,设备正常工作,事先已经学习了对感冒灵颗粒这个目标的检测,所以用感冒灵颗粒进行实验验证。由图5可以看出,物体检测框能够检测出感冒灵颗粒,准确地完成了目标检测任务。所识别出目标的标签会在AI图像识别平台以文本的形式显示出来。同时采用超声波模块测距,得出检测框内物体与视障者的距离。语音模块同步输出检测出来的物体标签以及物体与设备的距离。综上所述,该设备可以准确实时地完成视障者室内常用物体的识别与语音播报。
图5 室内检测
在室内,该装置对于视障人士常用的物体可以事先学习得到很高的识别率。但是室外的物体,对于视障者以及系统来说都是陌生的。为了实现对室外物体的识别,需要提前对对视障者阻碍比较多的物体进行学习,这里以车辆、电线杆、大树等为例进行实验,结果如图6所示。
如图6所示,设备开机后正常工作,可以分别识别出电动车、电线杆、大树、汽车。但是由于这几种物体的种类不同以及受光线强弱等影响,有时也会出现识别不出前方物体的情况,造成这一现象的主要原因是目标检测算法训练的数据集较小。为了提升识别的准确率及装置的稳定性,可以事先增加数据集的种类与数量,经过训练得到稳定而准确的网络权重。把训练好的网络权重烧录到Arduino Mega 2560 之中,实现对室内及室外目标的准确识别。
图6 室外检测
由此可以得出,该设备在室内物体测试以及室外物体测试中检测效果都很好,可以完成预期目标,可以为视障者的出行提供避障提醒,也可以为视障者找寻室内物体提供更方便快捷的方法。
4 结 论
本文设计的面向视障人群的视听辅助装置利用摄像机采集视障者身前场景的视频,利用卷积神经网络实现目标检测,利用语音合成模块实现语音播报。该装置能够快速准确地为视障人群提供反馈信息,构建了经济实用的智能辅助系统。该装置的集成程度较高,体积较小,方便随身携带,开机即用,实现了为视障人群提示眼前事物及其距离等功能。