基于螳螂眼算法无人矿车图像处理系统研究
2017-09-22杨会
杨 会
(宿迁学院 信息工程学院,江苏 宿迁 223800)
基于螳螂眼算法无人矿车图像处理系统研究
杨 会
(宿迁学院 信息工程学院,江苏 宿迁 223800)
为了提高矿下恶劣环境中无人车图像处理的时效性和准确性,设计了一种基于螳螂眼算法的图像处理系统。采用专用数字图像处理芯片CV220x作为无人矿车图像处理系统的核心处理器,并运用基于螳螂眼算法扩展的边缘检测技术、图像形态运算以及神经元学习算法对矿下拍摄的视频流进行实时、高效的处理。最后通过MATLAB对算法进行仿真,并以矿下实时拍摄的视频数据为实验对象,实验结果表明此算法适用于矿下无人车安全运行所需的固件控制模块,能够对车前人员进行明确的检测并及时做出安全警报。
无人矿车;图像处理;螳螂眼算法
0 引言
中国工业界高危操作的存在导致对无人机的需求增加,其中矿下作业事故频发引起了人们越来越多的关注,为了解决矿下作业由矿车引起的人员死伤问题,国内很多煤矿企业把矿车改造成无人矿车,减少了人员的使用也就减少了危险性。但是亟需解决的关键问题就是对于恶劣矿下环境中无人车图像处理的时效性和准确性[1-2],具体来讲是对硬件上图像处理芯片的处理速度的需求以及软件上图像处理算法是否可以与之高效匹配的问题。
当前的无人机图像处理大多采用嵌入式DSP处理器[3-4]、嵌入式微处理器ARM[5]等来实现高速数字图像处理。基于这些普通的图像处理芯片处理速度和效率的限定,与之相应的图像处理算法也得到了相当大的限制,因此只能以优化算法的方法来提高图像处理的效率和质量[6]。已有研究中有采用整数小波变换(IWT)和改进 SPIHT 的图像压缩编码、级联格状编码和正交频分复用调制(OFDM)的方案来实现无人机载图像的实时传输[7];也有基于 SIFT 算法对无人机影像进行特征点的提取,并采用最小二乘算法对影像进行精准匹配[8-9]等。但是这种优化对图像处理效率来说只是从某种程度上有所改善。
因而这双重限制导致现有图像处理固件很难做到对实时视频流的准确信息分析,而本文中所描述的基于螳螂眼算法的无人矿车图像处理系统就解决了这一问题。本文首先介绍了基于螳螂眼算法的无人车图像处理系统的设计原理,然后分析了本系统中运用的相关算法并对这些算法进行优化,最后通过MATLAB对以上算法进行仿真,实现了对实时的矿下拍摄的视频数据分帧解析、背景切割、彩色图像分割、神经元学习算法训练等。
1 无人矿车图像处理系统设计
无人矿车图像处理系统原理框图如图1所示。系统通过摄像头检测矿工身上穿着的反光背心的反光条,拍摄到的视频流数据经过传感器接口输入到图像处理芯片内部,经过内部的视频/图像处理单元进行图像处理,处理数据存储到相应的数据存储单元;另一方面利用激光测距传感器检测旷工与无人车之间的距离,距离数据通过UART接口输入到图像处理芯片内部,经过ARM处理器处理后,将该数据传给视频/图像处理单元。该图像处理单元集成有ARM96内核处理器,并且可以嵌入基于螳螂眼算法扩展的相关算法,比如利用神经元学习算法对反光条的大小与所对应的矿车与人距离的比例尺进行学习,另外当距离小于安全距离时通知ARM处理器给出控制信号。该控制信号一方面控制报警器报警以警示前方的旷工进行躲避,另一方面给无人机的运动控制器发送规避信号进行障碍物的规避。
图1 无人矿车图像处理系统原理图
本系统采用Cognivue公司的CV220x图像处理芯片,该芯片集成了两个ARM96 核处理器,使用单指令多数据的并行处理,使得图像处理能够达到非常快的处理速度。这款芯片的优势是对视频流信息的及时高效处理,而能将它的优势发挥到很高水准的就是本文算法中选取的螳螂眼算法。
螳螂眼算法是仿照螳螂眼的工作原理,螳螂有一对复眼和三只单眼,根据两种眼睛的不同特性,螳螂眼算法也有两个不同特性的部分。螳螂的复眼所进行的是图像分割并行处理工作,眼睛提取到的信息是传输到大脑进行信息处理的,而螳螂的单眼进行的是图像分帧对比工作,图像信息直接提交到腿部神经进行处理,因此螳螂单眼一旦捕捉到物体的变化,腿部神经就会直接带动螳螂跳离危险区域,远比大脑反应速度要快。
螳螂单眼每秒处理30帧图像,图像变化的计算是通过计算帧与帧之间的最小方差获得的。运算方程如下:
(1)
式中m是指图像帧数,i的取值是1,2,3,…m。
当螳螂单眼捕捉到在5帧内有10个及以上像素点发生了变化,就说明目标物体进行了移动。
2 无人矿车图像处理算法
本系统采用与图像处理芯片完全匹配的基于螳螂眼算法扩展的边缘检测技术、图像形态运算以及神经元学习算法等。算法处理流程如图2所示。
图2 算法处理流程图
首先对摄像头录入的视频进行分帧解析处理,然后利用Sobel算子对图像进行边缘检测,计算其动心、亮心以及中心并对图像进行初步背景切割;在初步处理后的帧中选取模板帧和测试帧,分别对模板帧和测试帧利用基于HSV模型的彩色图像分割、腐蚀、膨胀等处理方法进行进一步识别;在此基础上采用基于B-P模型的神经元学习算法对模板帧进行学习,生成学习结果,用学习结果对测试帧进行安全距离判定,最后生成判定结果。
2.1 Sobel边缘检测算法
该算子是由两个卷积核g1(x,y)与g2(x,y)对原图像f(x,y)进行卷积运算而得到的。其数学表达式为:
(2)
实际上Sobel边缘算子所采用的算法是先进行加权平均,然后进行微分运算,此处可以用差分代替一阶偏导,算子的计算方法如下:
(3)
Sobel算子垂直方向和水平方向的模板如图3所示,图3(a)可以检测出图像中的水平方向的边缘,图3(b)则可以检测图像中垂直方向的边缘[10]。
图3 Sobel算子模板
实际应用中,图像中的每一个像素点都用这两个卷积核进行卷积运算,取其最大值作为输出。
2.2基于HSV模型的彩色图像分割
HSV模型是用于描述颜色的一种色彩空间模型,如图4所示,类似的还有 RGB、HIS、HSB 模型,而相比之下,HSV 更加接近于人类感知色彩的方式。在该模型中,颜色的参数分别是色相(H)、色彩饱和度(S)和色彩灰度(V)。
图4 HSV色彩空间模型
H(hue)是色相,用于表示色彩的基本色调,在HSV色彩空间模型中,H表现为 360°的圆周,红色为 0°;S(saturation)是色彩饱和度,用于表示色彩的浓淡,在HSV 色彩空间模型中,S 表现为横向的百分比,饱和度最低(白色)为0%,饱和度最高为100%;V(value)是指色彩灰度,在 HSV 色彩空间模型中,V 表现为纵向的百分比,灰度最低(黑色)为0%,灰度最高为100%[11]。
2.3基于B-P模型的神经元学习算法
B-P模型是一种利用误差反向传播训练算法的前馈神经网络模型,是目前应用最广泛的神经网络模型之一,该网络模型包含3个神经元层:输入层、隐含层和输出层,是一种含有隐含层的多层前馈网络[12]。
该神经元学习算法需要利用输入和输出样本集对网络进行训练,也就是对网络的权值和偏差进行学习和修正,以使网络的给定输入和输出实现预期响应的关系。学习分为两个阶段:
第一个阶段是把已知的学习样本输入,借助设计好的网络结构和前一次迭代的权值和偏差,从网络的首层开始逐层向后计算各神经元的输出。
第二个阶段是修改权值和偏差,从尾层开始逐层向前计算每个权值和偏差对总误差的梯度,据此修改各个权值和偏差。
以上两个过程循环进行,直到误差达到要求为止。B-P算法的基本原理是梯度最速下降法,即通过调整权值使网络总误差最小。基于B-P模型的神经元学习算法的具体流程如图5所示。
图5 基于B-P模型的神经元学习算法流程图
3 仿真结果及分析
本文主要通过MATLAB编程处理图像并模拟安全距离判定过程来验证矿下无人车图像处理算法的可行性。
3.1视频流的分帧以及初步背景切割
对采集到的视频流进行分帧处理,同时用Sobel 算子以及中心分析对图像进行切割。首先读入一个视频流,对视频流计算大小,一帧一帧地进行Sobel算子处理,然后对每帧进行中心计算,在动心、亮心以及中心的基础上去除背景,最后输出处理过的每一帧。
本文通过在MATLAB中编写相关算法的代码来进行测试,获得的仿真结果如图6所示。
图6 初步背景切割图
图6(a)为每一帧的原始图像。图6(b)为进行 Sobel 算子处理前的已进行灰度处理过的灰度图像。图6(c)为灰度图像经梯度边缘算子Sobel滤波,并计算标明动心、亮心以及中心的梯度值图像,动心是摄像机的镜头中心,亮心是图中高亮处的中心,中心是指检测物体的中心。图6(d)是根据三心进行背景切割后的图像,从图中可以
图7 基于HSV模型色彩图片处理算法的运行结果图
看出成功滤除了背景杂音。
3.2基于HSV模型彩色图像分割算法实现
首先定义 H、S、V数值存储空间,对应背心反光条进行 HSV 的值范围限定,并在这些限定值内进行像素点扫描对准,最后点亮在取值范围内的像素点。图像处理结果如图7所示。
HSV模型在MATLAB 中的取值范围与一般认为的取值范围有所不同,所以在限定范围时需要特别注意。处理结果的边上还有些细小的像素点,那是没能处理掉的噪音,后面会进行降噪处理。
3.3图像形态运算算法实现
直接调用MATLAB中常用的算法对图像进行降噪等处理,然后框出最终的识别目标。对上述经彩色图像分割处理后的图像进行开操作、腐蚀、膨胀等图像形态运算处理,处理过程如图8所示。
图9 识别的图像切块
图8 图像形态运算处理过程
首先对在 HSV 模型基础上切割点亮的图像进行像素点补全操作,这是为了保证图像的完整性和连续性,然后进行开操作、腐蚀操作、膨胀操作,最后给出识别目标的边界,框选出目标图像。图9是框选出的目标图像,从图中可以看出算法成功地捕捉到了旷工身上穿着的反光背心的反光条。
3.4神经元学习算法的实现
首先从经过初步背景切割的视频帧中选出模板帧和测试帧。选取20组清晰可行的帧作为神经元学习的模板帧,并选取20组帧作为测试帧,以便对训练过的神经元进行测试。模板帧需要选取两个相似的为一组,这样能使神经元学习更加精确,测试帧没有选取标准。
接下来需要先定义训练数据量并对训练样本图像命名,从模板帧目录读入训练样本图像,然后用上述HSV 模型彩色图像切割算法、开运算、腐蚀算法以及膨胀算法对图像进行处理,再根据 HSV 模型为基础的直方图进行神经元训练,最后根据训练结果对测试组进行对比识别,对对比结果进行分析,并指出安全系数(危险、警示、安全)。
对神经元学习算法编写MATLAB代码并进行仿真,在训练成功以后对测试帧进行测试,得到结果如表1所示。其中R表示危险,Y表示警示,G表示安全,从中可以看出不同序号的测试帧其安全系数不同。
表1 神经元学习算法训练结果
4 结论
本文设计的矿下无人车图像处理系统,硬件上使用了
国内外最先进的专用数字图像处理芯片CV220x,软件上运用螳螂眼算法对Sobel边缘检测算法、图像形态运算算法以及神经元学习算法等进行了优化,实现了恶劣环境中视频数据的实时、高效处理。运用MATLAB进行算法的仿真,实验结果表明该算法有较好的精度和较快的识别速度。从而也表明该系统能够实现对无人机前方工作人员警示的作用,保障矿下无人机安全运行。
[1] 曹清梅. 基于WSN的金属矿井矿车定位及安全监测系统研究[D]. 赣州:江西理工大学, 2015.
[2] 杨臣. 金属矿山中无人驾驶矿车控制系统的研究[D]. 昆明:昆明理工大学, 2012.
[3] 刘天奇. 无人机视觉稳定避障系统的设计与实现[D]. 北京:北京工业大学, 2015.
[4] 鲁剑锋. 无人机光电载荷图像处理器的设计[J]. 中国光学, 2011, 4(5):448-452.
[5] 陆兴华. 基于嵌入式的无人机勘察系统设计[J]. 电子设计工程, 2015(24):170-172.
[6] 尹珠,黄友锐,陈珍萍.煤矿井下压缩感知图像处理算法[J].工矿自动化,2016,42(11):38-41.
[7] 刘荣科, 张晓林. 无人机载图像实时传输方案的研究[J]. 北京航空航天大学学报, 2002, 28(2):208-212.
[8] 赵启兵, 王养柱, 胡永浩. 基于改进SIFT算法的无人机遥感影像匹配[J]. 电光与控制, 2012, 19(3):36-39.
[9] 索效荣, 齐苑辰. 基于SIFT算法的无人机航空遥感影像匹配[J]. 测绘科学, 2012, 37(1):92-94,106.
[10] 郑英娟. 基于八方向Sobel算子的边缘检测算法研究[D]. 石家庄:河北师范大学, 2014.
[11] 郭楠.彩色图像分割技术在农作物测量系统中的应用[D]. 北京:首都师范大学, 2005.
[12] 孙慧颖, 林中鹏, 黄灿,等. 基于改进BP神经网络的矿用通风机故障诊断[J]. 工矿自动化,2017,43(4):37-41.
Research on unmanned mine car image processing system based on algorithm of mantis eyes
Yang Hui
(Institute of Information Engineering, Suqian College, Suqian 223800, China)
In order to improve the timeliness and accuracy of the unmanned mine car image processing under the bad environment, an image processing system based on mantis eyes algorithm is designed. Using digital image processing dedicated chip CV220x as the core processor of the unmanned mine car image processing system, and applying edge detection technology, image morphology operation and neuron learning algorithm extended by mantis eyes algorithm, this image processing system can process video streaming from the mine real-timely and efficiently. At last, simulating the algorithm by MATLAB and using the real-time video streaming data from the mine as experimental object. The experimental result verifies that the algorithm is suitable for the firmware control module of the unmanned mine car and can carry on the test to the front of personnel and make security alert in a timely manner.
unmanned mine car; image processing; mantis eyes algorithm
TP75
:A
10.19358/j.issn.1674- 7720.2017.17.027
杨会.基于螳螂眼算法无人矿车图像处理系统研究[J].微型机与应用,2017,36(17):92-95.
2017-04-07)
杨会(1989-),女,助理实验师,硕士,主要研究方向:动态测试与智能仪器。