一种基于深度学习的盲人助行装置实现
2020-04-30刘全伟戴魏邦梁正宇王默涵满建涛
刘全伟 戴魏邦 梁正宇 王默涵 满建涛
摘 要:文章提出一种新型的盲人助行装置,为盲人朋友的便利出行提供一种新方案。主要是通过深度学习与传感器相结合的嵌入式开发,增加盲人朋友的道路信息获取量,突破以往单一辅助设备的不足,具有一定的实用意义。
关键词:深度学习;盲人助行;嵌入式开发;传感器应用
据世界卫生组织在2019年提供的数据显示,中国大陆盲人约有1 700万。盲人群体在我国乃至世界都是不可忽视的弱势群体,其生活质量也影响着社会的和谐发展。
如今,盲人出行依靠的工具主要有:无障碍设施、导盲犬和盲人专用拐杖等,但是对盲人正常出行的帮助有限,体验性、实用性、交互性等无法充分满足盲人的需求,目前盲人的个人出行依然很困难,影响其生活质量[1]。
21世纪以来,尤其是近年来,深度学习和移动便携式终端设备的不断发展使得可穿戴设备的研发备受瞩目,能够帮助盲人群体,切身享受到科技带来的福音。
1 实现方法
该设计是基于深度学习的嵌入式开发,使用者通过YOLO3深度学习模型、Python-OpenCV、树莓派以及传感器的应用,可以突破单一的信息获取,实时获取更多的外界路况信息,从而使使用者的出行更加容易。系统结构设计如图1所示。
2 主要功能
(1)通过图像识别技术识别到交通中的物体并给予使用者语音提示,例如车辆、红绿灯、斑马线等[2]。
(2)通过超声波测距传感器获取障碍物的距离,并给予使用者提示。
(3)通过GPS给予使用者位置信息等。
3 深度学习模型
3.1 模型阐述
本设计主要采用YOLO3模型进行目标识别工作,如红绿灯识别、车辆识别、行人识别等。近年来,目标检测技术层出不穷,从基本的计算方式来看,可以分为基于候选区域和基于回归两类。
所谓基于候选区域是指对图像的基本特征做分析,选取一定的区域对图像进行特征提取,该类目标识别的特点是准确度高、流程简单,但是因为要逐一提取每个候选区域,所以速度较慢。Fast R-CNN是基于候选区域的目标识别模型。而YOLO模型属于基于回归的目标识别,相较于基于候选区域的目标识别,YOLO模型的识别速度大大提高,可以满足实时识别的需求,但是会存在识别准确度较低的问题。
考虑到YOLO的轻量化,本文采用基于回归的YOLO模型。YOLO模型的特征提取流程:首先,將输入的图像划分成S×S的网格;其次,特征提取器对每个网格进行卷积操作,得到每个特征矩阵;再次,输出到全连接层,继而在全连接层进行预测,输出每个边框在指定类中匹配的概率以及边框的坐标信息、置信度;最后,通过设定的区间值来判定目标窗口的最大可能,同时使用非极大值抑制除去其他不需要的冗余窗口。
3.2 模型训练过程
(1)下载YOLO源码和预训练权重文件。使用YOLO的开源模型代码,其中包含模型文件和训练文件,可以通过开源的训练代码训练自己的模型,设置需要的标签,并且准备好训练数据集[3]。
(2)模型训练。需要不断调整模型参数和数据集进行训练,增加模型的鲁棒性。
(3)模型测试。将权重文件YOLOV3.CFG和YOLOV3-TINY.CFG转换成.H5格式,方便使用,然后对训练得到的模型进行准确率和鲁棒性的测试。
3.3 实现的功能
(1)调用摄像头,使用不同颜色的框框出人脸、红绿灯、公共汽车、轿车、卡车、自行车、摩托车等马路上可以看到的物体,在识别成功后可以显示识别出几个物体,每个物体的标签名称和识别的准确率,以及物体在摄像头中的位置。
(2)在识别成功后可以调用麦克风,将识别的物体名称通过语音播报出来。
4 硬件实现
该便携式盲人助行器的硬件系统主要是基于树莓派(微型卡片电脑,其系统基于Linux),各个功能模块依赖于摄像头、超声波测距以及GPS模块等传感器,具体功能则由Python程序实现,总体上具有轻量、便携、处理能力强等特点。
4.1 摄像头模块
该摄像头模块主要用于采集视觉信息,并交由树莓派处理,在本系统所使用的树莓派中内建了Opencv环境,可以通过特殊算法识别如红绿灯、人行道、各种障碍物等特定物体,并给予用户反馈。比如:当前方有障碍物时,助行器会提示用户注意障碍;当前方交通灯为红灯时,助行器会提示用户停止穿越路口等。
4.2 超声波测距模块
该超声波测距模块使用的是市面上常用且技术成熟的HC-SR04。该模块有4个引脚,分别为:VCC电源引脚、GND 接地引脚、触发控制信号的输入端TRIG和回响信号输出端ECHO。该超声波模块性能稳定,测量距离精准,可以提供 2~400 cm的非接触式距离感测功能。
该模块的工作原理:树莓派向超声波传感TRIG端口提供一个脉冲触发信号,模块内部开始自动发送超声波脉冲并检测有无返回信号。一旦检测到返回信号,便通过ECHO端口输出回响信号。树莓派通过发射信号与收到回响信号的时间间隔计算出与障碍物之间的距离。超声波测距功能中数据传输方式如图2所示。
该模块的实际功能如下:HC-SR04实时监测与障碍物的距离并向树莓派回传数据,当用户与障碍物的距离超过设定的阈值后,系统即向用户发送语音警告,提醒用户以避免碰撞障碍物。
4.3 GPS定位模块
GPS定位模块是集成了RF射频芯片、基带芯片和核心CPU,并加上相关外围电路而组成的一个集成电路。该系统采用的是NEO-6M的GPS导航模块,带有Micro USB接口,可以进行初始配置调节,其误差在2.5 m左右。GPS模块通过TTL转USB线与树莓派USB口连接。树莓派则通过Raspbian系统开发与安装minicom软件,以获取串口数据并进行功能测试,从而使树莓派获得相应地理定位信息。
GPS定位模块的功能主要为获取用户的位置信息,可供用户实时调用,以了解自己所处的位置,避免用户因不了解自己的位置任意跑动而迷路或置身危险环境之中。如果树莓派联网的话,用户的家人亦可获取用户的位置信息,方便他们寻找用户。
4.4 人机交互语音提示模块
人机交互语音提示模块主要与各传感器模块配合使用,主要功能是对信息采集与数据分析处理的结果进行反馈,从而达到盲人避障与导航的功能。因此,需要实现将分析得到的文本信息转换成可以听到的音频信息输出(Textto Speech,TTS)。
树莓派支持多种文字转语音服务,有Festival Text to Speech,Espeak Text to Speech,Google Text to Speech,Ekho Text to Speech等。考虑到前期使用本系統的用户大多为中国人,而以上多种文字转语音服务大多不支持中文文本转语音,因此,模块采用百度的ilangbd语音库,并且使用Python调用shell库来完成,最后合成的语音通过树莓派的 3.5 mm立体声音频接口连接耳机输出,便可以为盲人提供语音提示。其过程如图3所示。
4 结语
本设计基本能够实现模型的轻量化,在一定程度上能够满足使用者的部分需求。但是在实际应用中依然需要不断改进,例如增加丰富的语音交互功能、硬件的轻量化和便携化等。
[参考文献]
[1]王建红.一种模拟蝙蝠回声定位法的盲人助行器[J].国际生物医学工程杂志,1991(6):49.
[2]胡嘉浩.基于工业4.0下的盲用智能助行产品设计研究[D].武汉:湖北工业大学,2017.
[3]徐行祥.美国盲人的出行[J].中国残疾人,2002(7):31.
Realization of a blind walk aid device based on deep learning
Liu Quanwei, Dai Weibang, Liang Zhengyu, Wang Mohan, Man Jiantao
(Jiangnan University, Wuxi 214122, China)
Abstract:A new type of blind walking aid device is proposed to provide a new scheme for convenient travel of blind friends in this paper. Mainly through the embedded development of deep learning and sensor combination, it is of practical significance to increase the amount of road information acquisition of blind friends and break through the shortcomings of single auxiliary equipment in the past.
Key words:deep learning; blind walking aid; embedded development; sensor application