日期
04/29
2019
咨询
  • QQ扫一扫

  • Vision小助手
    (CMVU)

基于图像识别的草垛检测研究
收藏
2019-04-29 11:59:39来源: 中国视觉网

刘尧 严律 王明松
(南京市埃克里得视觉技术有限公司研发部,江苏南京210000)


摘要:
   随着社会经济的高速发展,生态环境和能源问题愈发严峻。秸秆因为其清洁、可再生、价格低廉等,在新能源发电领域发展迅速[1]。为了提高发电生产流程的自动化水平,增加生产效率,草垛搬运的自动化亟待解决。本文通过现场采集点云数据,并对比传统图像处理方法和深度学习方法的检测结果,得到有效满足现场应用的草垛检测方法。
关键词:新能源、草垛、图像处理、深度学习

Research on haystack detection Based on image recognition
With the rapid development of social economy, ecological environment and energy problem increasingly serious concern.Straw because of its clean, renewable and low price, in the field of new energy power generation has developed rapidly .In order to improve the automation level of electricity production process, increase production efficiency, haystack handling automation need to be addressed. In this paper, comparing with the traditional image processing method and the results of deep learning method to meet the effective application of haystack detection method.

1. 引言
   图像技术在自动化领域的应用越来越广泛,是智能制造的推动性技术之一。其中,2D图像技术已经大规模应用在平面物体识别,检测和测量等只需要二维平面信息的工况。得益于硬件水平和计算机视觉的发展,3D图像技术也趋于成熟,3D图像可以完整的描述空间信息,所以其对于处理涉及各种空间位置和姿态的问题具有本质的优势。
在草垛搬运过程中,草垛呈多层堆叠放置,如果需要引导工业机器人对其进行搬运则必须获取它的三维空间坐标和平面旋转角度。因此,本项目采用三维视觉传感器进行数据采集,再综合应用图像处理方法计算得到所需信息。
2. 系统搭建
   本草垛检测系统包括三维传感器、高性能工控机和检测软件组成,如图1所示。三维传感器的选型需要综合考虑系统工作视场、精度和速度等参数。工控机配备inteli7处理器,为了保证算法性能,软件开发采用C++语言。



图1系统结构简图


3. 数据处理
   采集的草垛目标和点云数据如图2(a)、(b)、(c)所示。从图中可以看出、由于草垛自身的杂乱无章导致点云不连续、错叠和边界不清晰,因此直接在点云中查找草垛是比较困难的,而且花费的处理时间也较多。本文利用点云投影方法将点云的高度信息映射为二维深度图像[2],深度图像的灰度值表示点云的高度,如图(d)所示为一副深度图像。在深度图像中寻找草垛目标比在点云中直接寻找要更简单,速度也更快。



(a)实际草垛图(b)草垛整体点云图



(c)草垛局部点云图(d)深度图
    图2草垛及其图像


   传统的图像处理过程,如图3所示:图像预处理一般包括图像裁剪、图像增强等,图像分割常用的方法是阈值分割、基于形状的分割等。对分割后的二值图像进行标记称为连通域处理,它是连接物体底层信息和特征分析的桥梁。对标记完的图像便可以进行特征提取和物体识别。如图4所示,(a)为自适应阈值分割后的图像,(b)为最终提取出来的结果。


图3传统图像处理方法



(a)分割图像(b)识别结果
图4 传统图像处理方法


   从图4中可以看出,传统的图像处理方法虽然可以分割出草垛,但无法将紧密连接的草垛分开,从而无法计算草垛位置。为了解决传统图像处理方法在提取草垛中的缺点,本文引入深度学习的方法进行草垛识别。深度学习是人工智能的一个分支,从2012年AlexNet[3]在图像识别大赛夺魁开始,深度学习在图像领域的应用日趋成熟且不断拓展,典型的应用包括图像分类、物体检测、物体分割等。深度学习已经成功应用在字符识别、物体分拣、自动驾驶、城市规划等工作场景,正在逐步地改变人们的生活和工作习惯。
   本文采用残差网络[4]提取草垛特征,再将特征映射到物体的矩形边框,残差网络基本结构如图5所示,残差网络解决了训练过程中梯度消失问题的困扰,即来自误差函数的梯度信号会在反向传播回更早的层时呈指数级下降。本质上讲,在误差信号反向回到更早的层时,它们会变得非常小以至于网络无法学习。但是,因为残差网络的梯度信号可以直接通过捷径连接回到更早的层,所以我们可以构建 50 层、101 层、152 层甚至 1000 层以上的网络了,而且它们的表现依然良好,本文使用的是101层残差网络。



图5残差基本结构


   网络结构如图6所示,本结构是一种端到端的图像识别方法,网络最后通过全局池化输出g*g*5的张量,g一般取26,是输入图片的等比例缩小特征图,前4个是矩形的左上角和右下角点x,y值,它们均为相对图片宽和高的比例值,最后一位是该矩形区域是目标的概率。该网络具有识别速度快,准确率高,同时也保证了高召回率。在训练网络之前,采集合理数量的图像进行物体标注和训练文件制作,最后,神经网络读取训练文件和数据进行反复迭代学习,在验证集的精度达到一定要求后终止训练。



图6网络结构


4. 实验结果与分析
   本文采用草垛分类权重作为检测网络预训练权重,从而大大加速学习过程。训练曲线如图7所示,从该曲线可以得出,精度和损失在50个epoch后取得了良好的结果。从测试图像结果中可以得出,该网络对紧密连接的草垛仍然可以有效区分和识别。同时该处理方法对点云成像效果要求不高,适应草垛块缺失、变形等多种情况,且可以直接对深度图像进行处理,节省了运行时间。


图7训练过程


图8识别结果1



图9识别结果筛选


   由于神经网络学习到的是多尺度特征,在图9左侧图像中,该网络将半截草垛识别为一个草垛,为了避免这种情况,我们利用边框的面积和比例特征对识别到的结果进行筛选,结果如图9右侧图像所示,并在筛选的结果上计算长宽比,得到草垛的粗略角度信息,再依据草垛所在中心点,重新映射回点云中获取该点的三维位置信息,最终得到全部有效的草垛识别结果。

5. 结束语
   本文利用了神经网络强大的特征学习功能,实现了对传统图像处理方法无法识别的物体进行检测,达到了预期效果。本文识别的草垛基本都位于平面,没有姿态检测的需求,后续工作中可以继续开发同时具备位置和姿态检测的网络结构。

6. 参考文献
[1] 刘晓. 我国秸秆发电项目运营现状及发展建议[J]. 农业工程, 2017, 7(5):66-67.
[2]刘波, 朱伟兴, 杨建军,等. 基于深度图像和生猪骨架端点分析的生猪步频特征提取[J]. 农业工程学报, 2014, 30(10):131-137.
[3]KrizhevskyA ,Sutskever I , Hinton G E . ImageNet Classification with Deep Convolutional Neural Networks[C]// International Conference on Neural Information Processing Systems. Curran Associates Inc. 2012.
[4] He K , Zhang X , Ren S , et al. Deep Residual Learning for Image Recognition[J]. 2015.