注:湖南省创新训练项目“智行眼镜”(No. 2033);湖南省教育科学“十三五”规划课题青年项目(No. XJK19QGD004)
摘要:本文针对我国盲人出行困难的问题提出“智行”导盲系统,“智行”导盲系统又分为基于Openmv 的导盲避障及基于安卓的导航仪,分别为盲人提供避障以及语音导航的功能。详细说明了各个系统的内部资源,以及各个系统的功能,同时阐述了红绿灯识别及盲道识别算法计算过程。最后,本系统可以和盲人语音交互,指导盲人出行。关键词:盲人;Openmv ;避障;导航
中图分类号:TP23
;TP368.2 文献标识码:A 文章编号:1006-883X(2020)07-0026-04收稿日期:2020-05-09
“智行”导盲系统
孙智灵 彭洋 岳凌霞 曹威 吴林
湖南文理学院数理学院,湖南常德 415000
一、引言现
在国家为盲人的出行提供了很多的设施,但盲人的出行[1]还是受到很大限制。比如盲道经常
被占用,过红灯时的不便......并且盲人容易迷失方向,从而导致迷路。当前,盲人出行时靠的是一根手杖或是导盲犬。然而,手杖不能为盲人判别方向和避开障碍物,没有很好地解决盲人出行的问题;而导盲犬,很多盲人无法承受其昂贵的价格。所以,本文针对盲人出行的难处提出了一套“智行”导盲系统,可以定位、导盲、识别盲道和红绿灯,同时提醒盲人避开障碍物。
二、系统总体设计
“智行”导盲系统分为两个主要部分,一个是导盲避障系统,另一个是导航仪。导盲避障系统用于和盲人进行人机交互,导航仪主要用于查询数据库,以便获得导航信息。盲人可以通过语音输入,当输入一级口令“导航”时,“智行”导盲系统进入导航模式,提醒盲人说出自己想去的目的地。导盲避障系统利用GPS 获得当前位置,同时获得盲人所说的目的地之后,与导航仪进行通信,查询相关命令,同时通过语音信
息告诉盲人如何前进。在盲人前进过程中,导盲避障系统可以识别红绿灯及盲道,同时将相关信息告
诉盲人,帮助盲人避开障碍物。系统总体流程图如图1所示。
三、硬件设计
1、导盲避障系统硬件设计
导盲避障系统基于Openmv ,利用Openmv 作为中央控制器,控制外部设备以及进行数字图像处理。
Openmv通过串口与蓝牙模块进行通信,发送、接收导航仪的信息。Openmv通过串口与陀螺仪进行通信,通过I2C总线与光学测距模块通信,利用上述两个模块分别收集倾角、距离信息及相应数据处理,判断前方是否有障碍物。Openmv通过串口与GPS模块[2]进行通信,可采集到当前位置的经纬度。Openmv本身可以采集图像信息,识别红绿灯及盲道。Openmv通过串口与语音模块[3]、语音识别模块通信,用于与盲人进行语音交互。导盲避障系统硬件设计如图2所示。
2、导航仪硬件设计
导航仪基于ARM Cortex-A9内核,便于嵌入安卓操作系统及调用导航数据库。ARM Cortex-A9基于先进的推测型八级流水线,便于运行安卓操作系统。ARM Cortex-A9内核如图3所示。一个嵌入式Linux 系统从软件角度看可以分为四个部分:引导加载程序(Bootloader)、Linux内核、文件系统、应用程序。当程序运行在用户模式下的时候,开机自动加载BootLoader:初始化RAM、初始化串口端口、检
测处理器类型、设置Linux启动参数、调用Linux内核映像,Linux的内核是由bootloader装载到内存中的。开启Linux内核之后加载文件系统,启动安卓操作系统,开机自启动无界面安卓应用程序。
linux内核设计与实现 pdf四、软件设计
1、Java安卓应用程序设计
运用Java语言编写一个可下载到手机的应用程序,通过蓝牙串口模块将其与导盲眼镜连接起来。此应用程序运用数据库存储地图路线及行走记录。Java是一种简单的、跨平台的、面向对象的、分布式的、解释的、健壮安全的、结构中立的、可移植的、性能优异的、多线程的、动态的语言,编写程序更为方便安全。以下是Java安卓应用程序所使用的部分类及方法:蓝牙的打开方法: able();
蓝牙数据发送方法: connectThread.sendData(text. getBytes() );
蓝牙数据接收方法: mTextView.append(String. valueOf(msg.obj));
Java连接MySQL数据库类
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
2、红绿灯及盲道识别算法设计
(1)红绿灯识别
红绿灯识别分为两个步骤:一个是颜识别[4],
另一个是形状识别[5]。颜必须保证在红或者绿置信区间内,形状在阈值范围内保证是圆形。
方法:取n 帧红灯、绿灯度方向的图像,构建红灯及绿灯模型,通过计算得出稳定的置信区间,以实现红绿灯状态识别。分别取区域正态分布90%的数据为红灯、绿灯度特征,从而识别红绿。
红灯置信区间为:
[x 1, x 2]=[μR -1.65σR , μR +1.65σR ] (1)其中,x —置信区间边缘值;
R —红;μ —均值;σ —标准差。绿灯置信区间为:
[x 3, x 4]=[μG -1.65σG , μG +1.65σG ] (2)其中,G —绿。
当满足以下条件时为红灯:
(3)其中,I θ —置信区间;
x 1、x 2 —红灯置信区间边界值; R L —判断结果,1为真。当满足以下条件时为绿灯:
(4)其中,I θ —置信区间;
x 3、x 4 —绿灯置信区间边界值;G L —判断结果,1为真。
利用分割结果对圆形度进行阈值分割并判定,设圆形度为:
(5)其中,S —区域块面积;
p —区域块周长。
对结果进行圆形度判定为以下条件成立,则为有效圆形:
(6)
其中,Z c —判断结果,1为真;
T c —圆形阈值。
红绿灯识别结果如图4、图5所示。(2)盲道识别
盲道识别[6]运用了梯度和颜特征的盲道跟踪识别算法。梯度算法是基于小范围ROl 和梯度特征的边界跟踪。颜特征的算法是基于颜分布的跟踪有效性检验。
梯度算法:l 、θ分别为左边界的长度、倾斜角和Zone 的最小宽度W min 和最小高度H min 。
Zone 的宽度和高度可以取为:
(7)其中,l 、θ —左边界的长度、倾斜角和Zone 的最小宽度W min 和最小高度H min 。
首先,使用水平Sobel 核与Zone 内灰度图像作卷积以检测垂直方向的梯度,再对Zone 内梯度图像使用Otsu 法,自适应二值化的阈值,最长的那条边缘被认为是前帧的盲道边界。本算法通过Hough 变换到最符合条件的边界直线。
颜算法:假设Z i (r i , g i , b i )(i =1,2,…,n )为前一帧图像Zone 内位于location 左侧的各个像素点,每个像素的颜有RGB 三通道组成。每次检验前,本算法记录左侧所有RGB 向量的均值 ,⎩
⎨
⎧≤≤=211
x I x R θL ⎩⎨⎧≤≤=431
x I x G θ
L 4p s
πS c =
⎩⎨⎧≥=c
c c T S
Z 1
⎪⎪⎩
⎪⎪⎨
⎧⎪
⎭⎫ ⎝⎛⋅=⎪⎭
⎫
⎝⎛⋅=min min ,3cos max ,3sin max H θl H W θl W ∑∑∑
∑====⎪⎪⎭⎫ ⎝⎛==
n i n i n i i i n
i i i b g r n Z n b g r mean 1111
,,11),,(
以及所有像素RGB 向量与mean (r , g , b )向量的平均欧式距离:
(8)
其中,D —处理后得到的图像矩阵;
Z i (r i , g i , b i ) —各个像素点R 、G 、B 像素值,0≤R<255,0≤G<255,0≤B<255;
。阈值化的规则为:
(9)
加权平均灰度值V L 的定义为:
(10)其中,W L —左侧白像素点个数;
B L —左侧灰像素点个数。盲道识别结果如图6所示。
五、总结
该系统针对盲人难以出行,出行工具难以实现盲人的出行需求问题进行深入探讨,并提出“智行”导盲系统,首先对“智行”导盲系统进行总体设计,提出盲人与该系统交互方式,以及表达如何方便盲人出行;然后对导盲避障系统及导盲仪内部结构进行解析,阐述该系统如何在硬件层面进行设计;最后剖析该系统软件层面的设计以及识别算法的计算过程。
参考文献
[1] 郭嵩, 张钰莹, 韩少华. 关于盲人出行解困的设计研究[J]. 设
计, 2014(06): 35-36.
[2] 李明峰. GPS 定位技术及其应用[M]. 北京: 国防工业出版社, 2006.
[3] 黄仿元, 陈飞. 带有语音报警功能的输液监测系统的设计[J]. 电子制作, 2017, Z1:17-19.
[4] 赵浩杰, 金德智, 李彦. 基于OpenCV 的彩目标识别[J]. 中国科技信息, 2016(2): 36-37.
[5] 徐俊艳, 方敏, 王经维. 识别技术研究综述[J]. 电脑与电, 2000(2): 46-47.
[6] 杜凯, 宋永超, 巨永锋, 等. 改进的光照不变道路检测算法[J]. 交通运输系统工程与信息, 2017, 17(5): 45-52.
"Wisdom" Blind Guide System
SUN Zhi-ling, PENG Yang, YUE Ling-xia, CAO Wei, WU Lin (School of Mathematics and Physics, Hunan University of Arts and Science, Changde 415000, China )
Abstract: In view of the difficulty of traveling for blind people in China, this article proposes the "intelligent travel" guide system. The "intelligent travel" guide system is divided into openmv-based obstacle avoidance and Android-based navigators. Navigation function. The internal resources of each system and the functions of each system are explained in detail, and the calculation process of traffic light recognition and blind lane recognition algorithms is also explained. Finally, the system can interact with the blind voice to guide the blind to travel.Key words: blind; Openmv; obstacle avoidanc
e; navigation 作者简介
孙智灵:湖南文理学院数理学院,学生,研究方向:物联网。
通信地址:湖南省常德市湖南文理学院邮编:415000 邮箱:*****************
彭洋:湖南文理学院数理学院,学生,研究方向:物联网。
岳凌霞:湖南文理学院数理学院,学生,研究方向:物联网。
曹威:湖南文理学院数理学院,学生,研究方向:物联网。
吴林:湖南文理学院数理学院,学生,研究方向:物联网。
∑
=-=n i i i i i b g r mean b g r Z D 1
),,(),,(1 ∑∑∑
∑====⎪⎪⎭⎫ ⎝⎛==n
i n i n i i i n i i i b g r n Z n b g r mean 1111
,,11),,( ()()()()255,
,,128,,0,,d i j D g i j i j NewLocation d i j D <⎧⎪
=∈⎨⎪≥⎩
L
L L L B W W V +⋅=
255
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论