一种复杂环境下的街道垃圾识别方法与流程

文档序号:12670766阅读:914来源:国知局
一种复杂环境下的街道垃圾识别方法与流程

本发明属于计算机视觉与机器学习领域,尤其涉及一种街道垃圾识别方法。



背景技术:

随着社会经济水平的迅速发展,居民生活水平明显提高,商品消费量迅速增加,垃圾的排出量也随之增加,不仅污染环境,也影响城市美观。

目前,针对街道垃圾的处理方式主要是环卫工人定时巡视与清扫,由于垃圾的产生没有固定的时间和空间规律,所以这种方法容易造成清扫不及时或者巡视一番并没有发现垃圾,从而浪费人力,并且不能保障城市卫生和形象。因此采用一种能够远程实时监视街道垃圾情况并实现垃圾定位的方法显得格外迫切并且有价值。

现有的街道垃圾识别方法,例如中国专利文献号CN106203498A,公开了一种基于深度学习框架的城市场景垃圾检测方法:具体包括构建数据集,使用深度学习框架caffe选择并训练模型,最后利用训练好的模型对城市图像进行自动垃圾识别。该方法实现了全天候地监测和检测城市无序垃圾情况,但这种方法是对整个图像进行检测,由于深度学习网络错误率始终不可能为0,因此检测非垃圾的对象越多,出现误检测的几率越大,且城市场景极其复杂,经常会有类似垃圾但不是垃圾的静态物体出现在背景中,无疑会给这种方法带来大量误检测。

因此,在复杂环境下的街道垃圾识别的过程中,有效地分离目标与背景,尽可能缩小检测范围,是非常有效且必要的。



技术实现要素:

本发明的目的是公开一种尽量不遗漏垃圾目标的同时,有效抑制复杂环境以及光照变化等干扰因素所导致的误检测,实现复杂环境下的全天候街道垃圾识别的方法。

本发明通过以下技术方案来实现上述目的:一种复杂环境下的街道垃圾识别方法,步骤如下:(1)首先获取街道图片并对有垃圾和没有垃圾的区域进行裁剪,构建样本集来训练深层卷积神经网络DCNN;(2)对于要检测的实时街道图片,将其与干净街道图片进行配准以及像素级作差,得到图像的变化区域,实现目标与背景的分离并缩小检测范围,采用R-CNN算法框架,在作差后的图片上使用图像分割算法获取局部视觉突出区域,即可能出现垃圾的位置,然后将实时图像上每一个可能出现垃圾的区域内的图像数据输入训练好的深层卷积神经网络DCNN进行识别,根据深层卷积神经网络DCNN的输出向量来判断该区域是否为垃圾,如果是垃圾,则在实时图像上进行标记。

进一步地,所述构建样本集是指将图像中标记过的垃圾区域裁切出来,在裁切下来的图像块中垃圾面积要超过50%,作为正样本,同时裁切图像中的典型非垃圾区域,作为负样本,将正负样本图片归一化到相同大小。

更进一步地,所述配准做差是指使用SIFT算法对实时图像与同一个街道场景的干净图像进行特征点提取、匹配并解出变换矩阵,利用变换矩阵将两幅图像调整到同一基准面上,然后将对应位置像素的R、G、B三个通道进行做差,获取作差图片。SIFT算法所提取的特征点具有旋转,缩放,亮度不变性,对视角变化也具有一定的稳定性,保证了图像抖动时垃圾识别功能的稳定运行。

更进一步地,所述图像分割算法采用的是selective search,通过该算法直接得到可能出现垃圾的局部视觉突出区域,大幅缩小了检测范围,与传统的使用滑动窗口对整幅图像进行检测的策略相比,本发明中首先通过selective search获得可能区域,再对可能区域进行检测的方法,计算量更小,更节省时间。

更进一步地,训练DCNN模型的具体步骤如下:

A1:构建DCNN模型,所述DCNN模型由四个卷积层,两个平均池化层,一个最大池化层以及一个全连接层组成,每个卷积层采用RELU函数作为激活函数。

A2:对DCNN模型的连接权值进行随机初始化。

A3:将正、负样本混合在一起,并随机打乱顺序。将混合之后的数据集分成两份,分别为训练集和测试集。训练集数据量占总数据量的80%,测试集数据量占总数据量的20%。

A4:将训练集输入DCNN模型,设置学习率和最大迭代次数,使用反向传播算法,调整网络中神经元之间的连接权值,使损失函数的值最小。每调整一次网络权值,使用测试集进行验证,保留测试精度最高的网络权值参数,作为DCNN模型最终的连接权值。

更进一步地,所述DCNN模型第一、三、五、七层均为卷积层,第二、四层为平均池化层,第六层为最大池化层,第八层为全连接层,第一至八层依次正向级联。

更进一步地,selective search目标面积参数设置为100至2000之间,目标长宽比阈值设置为3,高斯滤波参数设置为1.0。面积参数以及长宽比参数的设置尽量宽松,具有普适性,能够适应日常的街道垃圾。

更进一步地,RELU激活函数表示为f(x)=max(0,x),与传统的sigmoid激活函数和tanh激活函数相比,使用RELU激活函数可以使DCNN模型的收敛速度更快。

本发明的有益效果在于:本发明包括训练样本获取部分,配准做差部分以及R-CNN算法框架三个部分,其中将训练样本获取部分的样本集输入DCNN模型,将DCNN模型训练成一个能够识别垃圾图像的分类器,再对要检测的实时图片进行变化检测,即将其与干净街道图像进行配准做差,该操作实现了背景的分离,缩小检测范围。最后对做差后的图片使用图像分割算法得到局部视觉突出区域,获得可能出现垃圾的位置,并排除了因为光照变化等干扰因素所造成的大面积图像变化区域,然后利用前面训练好的DCNN模型来对上述局部视觉突出区域进行识别。与现有技术相比,这种方法通过变化检测与局部视觉突出区域提取,逐步剔除了图像背景区域与光照变化等干扰因素造成的大面积变化区域,因此能在尽量不遗漏垃圾目标的同时,有效抑制复杂环境以及光照变化等干扰因素所导致的误检测,实现复杂环境下的全天候街道垃圾识别。

附图说明

图1是本发明所述复杂环境下的街道垃圾识别方法的流程图;

图2是本发明所述DCNN模型的示意图。

具体实施方式

下面结合附图对本发明作进一步说明。

本发明中的一些术语解释。R-CNN算法:R-CNN算法包含selective search部分和DCNN部分,前者首先使用基于图的高效分割算法对整幅图像进行过分割,产生大量的子区域,再通过颜色、纹理、形状等指标将相似度较高的子区域两两合并,从而尽量保证物体的完整性,最后将面积超过设定范围的区域剔除,得到图像中的局部视觉突出区域,即疑似目标区域;DCNN是分类器,在本发明中的作用是判别疑似目标的类别是否为垃圾。SIFT算法:SIFT是一种检测局部尺度不变性特征点的算法,是当今计算机视觉领域中特征描述方面最热门的算法之一,它主要包括多尺度极值检测、关键点定位、计算方向、添加描述四个部分。在本发明中,通过检测实时街道图像与干净街道图像的局部尺度不变性特征点并且匹配,再使用RANSAC算法能够计算出两幅图像之间的变换矩阵,从而可以将两幅图像变换到同一个基准面上。

如图1所示,本发明通过获取街道图片构建样本集,对DCNN模型进行训练,DCNN输入为RGB三波段图像,输入尺寸为61×61×3。对于要检测的实时街道图片,将其与干净街道图片进行配准以及像素级作差,获取变化区域,采用R-CNN算法框架,在作差后的图片上使用图像分割算法得到局部视觉突出区域,即可能出现垃圾的位置,然后将实时图像上每一个可能出现垃圾的区域内的图像数据归一化到61×61×3后输入到训练好的DCNN模型进行识别,根据DCNN模型的输出向量来判断推荐框内是否为垃圾,如果是垃圾,则在实时图像上进行标记,采用矩形框将图像中的垃圾区域标记出来,如果出现多个同类垃圾连成一片的情况,则仅仅用一个大矩形框将其全部包括在内。

其中样本集中的正样本为图像中的垃圾区域裁剪所得到的图像块,且图像块中垃圾面积至少要超过50%,样本集中的负样本为图像中的典型非垃圾区域。由于正样本数量远远小于负样本,本发明将正样本进行扩增,即将每个正样本分别旋转90、180、270度,旋转之后的图像也被认为是正样本。

其中selective search目标面积参数设置为100至2000之间,目标长宽比阈值设置为3,高斯滤波参数设置为1.0。其中DCNN模型的构建与训练采用的是64位matlab环境下的深度学习工具箱Matconvnet-1.18。

在具体操作中,在不同天气,不同街道场景下拍摄街道图片(包括出现垃圾的街道以及没有垃圾的街道)共500张,其中垃圾的种类包括果皮,塑料瓶,塑料袋,纸屑等常规生活垃圾,每种垃圾出现次数大于100次。完成拍摄图片以及标记后,从图片中截取正负样本,其中正样本扩增后数量为3000张,负样本数量为6000张,并将截取出的图像长宽归一化到61,完成样本库的构建。

如图2所示,本发明所采用的DCNN模型第一、三、五、七层均为卷积层,第二、四层为平均池化层,第六层为最大池化层,第八层为全连接层,第一至八层依次正向级联。Conv1-4层用来做特征提取,其中前三个Conv操作的核大小为5,第四个Conv操作的核大小为3,所有Pooling操作的核大小都为3,Conv操作的步长都为1,Pooling操作的步长都为2,所有操作都没有进行填充。CNN卷积神经网络参数如表1所示:

表1

DCNN模型训练步骤如下:

A1:构建DCNN模型,所述DCNN模型由四个卷积层,两个平均池化层,一个最大池化层以及一个全连接层组成,每个卷积层采用RELU函数作为激活函数,该激活函数表示为f(x)=max(0,x)。

A2:对DCNN模型进行初始化,用标注差为0.05的高斯分布随机初始化网络中的连接权值。

A3:将正、负样本混合在一起,并随机打乱顺序。将混合之后的数据集分成两份,分别为训练集和测试集。训练集数据量占总数据量的80%,测试集数据量占总数据量的20%。

A4:将训练集输入DCNN模型,设置最大迭代次数为100,其中前50次迭代的学习率为0.002,第50-100次迭代的学习率为0.001。训练过程中,首先进行前向传播,得到预测类别,并计算误差,然后使用误差反向传播算法,调整网络中神经元之间的连接权值,使损失函数的值最小。每调整一次网络权值,使用测试集进行验证,保留测试精度最高的网络权值参数,作为DCNN模型最终的连接权值。

复杂环境下的街道垃圾识别方法实施如下:提前获取清扫后的干净街道图像,将要检测的街道图像与干净街道图像进行配准做差,在做差后的图像上使用selective search得到可能出现垃圾的疑似区域,再把每一个疑似区域的图像归一化到61×61×3后输入到训练好的DCNN模型,进行一次前向传播,若模型输出向量中表示垃圾类别的那一位数的值最大,则将该区域判定为垃圾并在图像上用矩形框标记,反之,该区域不是垃圾。本发明能够有效抑制复杂环境以及光照变化等干扰因素所导致的误检测,实现复杂环境下的全天候街道垃圾识别,和人工巡视街道相比,大大降低了人力成本与时间成本。

以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1