|
发布时间: 2019-07-16 |
图像分析和识别 |
|
|
收稿日期: 2018-09-21; 修回日期: 2018-12-07
基金项目: 国家自然科学基金项目(61876167,U1509207)
第一作者简介:
张剑华, 1980年生, 男, 副教授, 主要研究方向为计算机视觉、机器学习。E-mail:zjh@zjut.edu.cn;
陈嘉伟, 男, 硕士研究生, 主要研究方向为计算机视觉、深度学习。E-mail:1812260353@qq.com; 张少波, 男, 硕士研究生, 主要研究方向为计算机视觉。E-mail:alanzhangzjut@163.com; 郭建双, 男, 硕士研究生, 主要研究方向为计算机视觉。E-mail:534951043@qq.com; 刘盛, 男, 副教授, 主要研究方向为数字图像处理、计算机视觉。E-mail:edliu@zjut.edu.cn.
中图法分类号: TP391
文献标识码: A
文章编号: 1006-8961(2019)07-1136-12
|
摘要
目的 对城市发展过程中产生的建筑固废进行处理,并将之转换为资源和能源,是极佳的保护环境的经济发展模式。然而人工分拣处理存在效率低、污染严重、对人身危害大等问题。目前工业界在探索一种有效的基于机械臂自动抓取的建筑固废自动分拣系统,其中图像分割技术是非常必要的一个环节。但是工业现场的环境因素造成固废对象的颜色严重退化,会影响最终的固废对象分割。本文针对建筑固废图像分割难度大的现状,提出一种基于多模态深度神经网络的方法来解决固废对象分割问题。方法 首先,在颜色退化严重的场景下,把RGB图像和深度图一起作为深度卷积神经网络的输入,利用深度卷积神经网络进行高维特征学习,通过softmax分类器获得每个像素的标签分配概率。其次,基于新的能量函数建立全连接条件随机场,通过最小化能量函数寻找全局最优解来分割图像,从而为每一类固废对象产生一个独立的分割块。最后,利用局部轮廓信息计算深度梯度,实现同一类别的不同实例的固废对象精确分割。结果 在固废图像测试集上,该方法取得了90.02%均像素精度和89.03%均交并比(MIOU)。此外,与目前一些优秀的语义分割算法相比,也表现出了优越性。结论 本文方法能够对每一个固废对象同时进行有效的分割和分类,为建筑垃圾自动分拣系统提供准确的固废对象轮廓和类别信息,从而方便实现机械臂的自动抓取。
关键词
多模态信息; 固废对象分割; 卷积神经网络; 条件随机; 深度梯度
Abstract
Objective Construction waste is no longer useless nowadays. It has become an excellent economic development mode to protect the environment by recycling waste generated during construction and converting it into resources and energy. The current situation of construction waste in China has become increasingly severe. With the development of urbanization, old buildings have been demolished, rebuilt, and or replaced by skyscrapers. Moreover, once-inhabited areas have been gradually transformed into cities with ever expanding sizes. These cities develop quickly but entail serious hidden dangers. Construction waste generated by numerous construction work sites have become difficult to ignore. Urban construction waste refers to all kinds of construction waste generated during the construction, transformation, decoration, demolition, and laying of various buildings and structures and their auxiliary facilities. It mainly includes muck, waste concrete, waste brick, waste pipe, and waste wood. According to statistics, the amount of construction building waste in China now accounts for 30% to 40% of the total amount of municipal waste. In the next 10 years, China will produce more than 1.5 billion tons of construction waste per year on the average. By 2020, construction waste will reach 2.6 billion tons; by 2030, it will reach 7.3 billion tons. Resource utilization and recycling are inevitable options for dealing with construction waste in buildings. To deal with construction waste in buildings effectively, one can start from its characteristics. Construction waste is a mixture of various building material wastes, which are actually unutilized resources. In the 1990s, several communities in California first launched a single-stream recycling project, which referred to the mixture of all paper products, plastics, glass, metal, and other wastes. The mixture was separated into single items by a sorting system. In the sorting system, waste was mainly processed by a combination of hardware equipment and manpower. The system was not fully automated and relied mainly on human recycling; thus, it was inefficient. This attempt was meaningful because it let people understand the feasibility of recycling waste. Many construction wastes, such as waste bricks, waste rock, and scrap steel, can be recycled after being sorted, rejected, or crushed. However, systems, such as a single-stream recycling project, cannot handle substantial construction waste. Owing to the development of artificial intelligence technology, the use of intelligent robotic equipment in the field of construction waste recycling can greatly improve the capability, efficiency, and safety of recycling. Among these equipment, the robotic arm is the most widely used automated mechanical device in the industrial field. It can quickly grasp objects and work continuously. The emergence of robotic arms provides a new and efficient solution for the automatic sorting of construction waste in buildings. The use of robotic arms to sort construction waste is a revolutionary innovation for the construction waste treatment industry. The position and contour information of the object are indispensable to the robotic arm grabbing task. The application of computer image segmentation algorithms in this scene is undoubtedly suitable. Through image segmentation algorithms, a construction waste image can be accurately segmented to obtain the position and contour of each object. Combining robotic arms and image segmentation algorithms to achieve efficient construction waste recovery is worth exploring. However, segmentation of construction waste objects from construction waste images obtained via segmentation algorithms is difficult due to the characteristics of industrial sites and construction waste objects. With regard to the difficulty of object segmentation in construction waste images, this study proposes a construction waste object segmentation method based on a multimodal information deep neural network to solve the image segmentation problem and provides accurate construction waste object contour and category information for the construction waste automatic sorting system. Therefore, the system can realize automatic grabbing using a robot arm. Method First, in scenes with severe color degradation, feature learning with RGB images alone does not meet actual needs. Therefore, training the salient features with depth information is necessary. Second, we treat the RGB image and the corresponding depth image as the input of the deep convolutional neural network. The deep convolutional neural network is used to perform high-dimensional feature learning, and the feature maps obtained from the convolutional layers of the last layer are weighted and summed then fed as input data of the SoftMax classifier. Finally, we obtain the label allocation probability of each pixel. On the basis of the probability that each pixel belongs to a category, we construct a multi-label, fully connected, conditional random field. The unary energy term treats each pixel as an independent item without considering the relationship between pixels. The binary energy term represents the relationship among pixels. Thus, similar pixels are divided into the same category, and pixels with large differences between each other are assigned to different categories, which makes the segmented edges smooth. We are thus able to obtain accurate segmentation results. Therefore, according to the actual situation, we propose an energy function suitable for construction waste objects. The global optimal solution is obtained by minimizing the energy function to segment the object in the image, thereby generating an independent segmentation block for each type of construction waste object. Finally, fine segmentation of local ambiguous regions is performed according to the depth gradient information. Ambiguous areas refer to the adhesion areas between construction waste objects that are difficult to distinguish due to the degradation of visual characteristics. The depth gradient information is used to obtain the local depth edge map, from which the local ambiguity area is extracted. For the local ambiguity area, the algorithm extracts the effective internal edge to segment the adhesion objects belonging to the same class. Result In the construction waste image test set, our method achieves 90.02% mean pixel accuracy and 89.03% mean intersection over union. Compared with several excellent semantic segmentation algorithms, the experimental results show that the proposed method performs better and improves segmentation accuracy. Conclusion The algorithm proposed in this study can effectively segment and classify most construction waste objects simultaneously and can provide accurate contour and classification information of the construction waste object to a construction waste automatic sorting system so as to facilitate the automatic grasping of construction waste by robotic arms.
Key words
multimodal information; construction waste object segmentation; convolutional neural network; conditional random; depth gradient
0 引言
随着我国基础建设与城市化进程的不断加快,产生的建筑固废越来越多。城市建筑固废主要是指在对各类建筑物设施进行建设、改造、装修、拆除、铺设等过程中产生的各类固体废物[1],主要包括渣土、废旧混凝土、废砖石、废旧管材、废旧木材等。针对这些固废,存在着难处理、效率低、环境污染大等一系列问题。
传统城市建筑固废处理大多采用填埋方法,极少部分用做焚烧,占用土地资源,造成严重的污染。对固废有效的资源回收与利用,是目前建筑固废处理的热点与难点。
作为循环经济[2]的一项重要内容,建筑固废的资源化利用成为工业上的一个难题。随着人工智能技术的发展,在建筑固废资源化领域使用智能机器人设备可以极大提升回收的效率并保障安全。其中机械臂是机器人技术在工业领域中得到最广泛应用的自动化机械装置,它能够快速抓取物体,并且可以持续工作。机械臂的出现,为建筑固废的自动分拣提供了一种新的、高效的解决方案。为了完成固废对象的自动抓取,对象的轮廓信息是不可或缺的。所以,图像分割技术在其中的应用非常必要。然而由于工业现场的环境因素,摄像头往往处于比较恶劣的环境下,如:震动、高灰、物体的快速移动,在这些情况下获取到的固废对象图像,对其进行分割是非常困难的。
在实际生产线上,到达机械臂自动分拣这条皮带线上需要分拣出来的固废主要包含废旧木材(木头)、废旧混凝土(石头)、废砖石(砖头)这3类。针对这3类固废,本文提出一种基于多模态深度神经网络的图像分割算法解决固废对象分割问题。首先,利用深度相机采集固废对象的3维信息和颜色信息,用卷积神经网络提取高维多模态类别特征;然后用获得的特征信息训练softmax分类器,产生的每个像素标签分配概率作为全连接条件随机场(DenseCRF)[3]的输入,进行全局的固废类别分割,输出每个类别的分割信息,完成固废分类的第一步任务;最后基于深度边缘轮廓完成固废对象分割的最终任务,从而在根本上解决固废对象分类分割问题。
1 图像分割技术现状
1.1 经典的图像分割方法
1.2 图像分割中深度学习方法的应用
近年来深度学习方法在物体检测、图像分类、目标识别等计算机视觉领域得到了广泛应用,在图像分割方面也进行了一些有益的尝试。基于学习的语义分割方法将图像分割问题看做是图像单个像素的分类问题,先以有标注的图像作为训练样本,训练支持向量机(SVM)[10]、逻辑回归(LR)[11]等分类器,再以训练好的分类器对输入图像进行逐像素分类,根据像素分类情况得到图像分割结果。语义分割的输出是2维分割图像,保留空间信息,从而使得分割结果更加准确。UC Berkeley的Shelhamer等人[12]提出全卷积神经网络(FCN)用于图像分割。该网络试图从抽象的特征中恢复出每个像素所属类别,即从图像级别的分类进一步延伸到像素级别的分类。Zhao等人[13]提出金字塔场景解析网络(PSPNet),该网络提出金字塔池化模块来聚合背景信息,利用全局场景信息提升分割效果。
1.3 基于RGB-D的图像分割
对于颜色退化或者场景复杂的图像,基于可见光图像的分割算法,得到的分割结果并不能够满足需求。因此结合3D传感器,引入深度数据作为额外的1维信息,可以有效辅助分割。Qiu等人[14]提出一种基于RGB-D传感器的新型空间自适应投影方法。通过RGB-D传感器获得点云之后,使用3D背景差异来去除背景,并且使用欧几里得聚类提取来获得一组点云。对于每个点云,经过预处理后,将其投影到不同的平面中以获得易于分割的优化图像。Holz等人[15]提出一种快速计算表面法线的方法,并把像素在法向量空间中进行聚类,合并成不同的候选平面。候选平面在法向量空间和球面坐标中进行再一次聚类,候选平面被分割和分类成不同的对象。Richtsfeld等人[16]所提算法,在基于表面法向量将点云聚类得到平面集合的同时,也通过非均匀有理B样条曲线(NURBS)同样拟合点云得到曲面集合,并通过模型选择找到给定点云的最佳表示形式。然后,计算表面之间的关系特征向量,并通过SVM训练得到成对的能量项,最后执行基于图论的分割,通过能量函数的全局最优化来得到对象。由于固废形状的不规则,基于平面的方法可能会得到过分割的结果。而在若干个固废对象堆放在一起的情况下,基于平面的方法无法将固废对象分割开。
2 分割算法设计
2.1 算法的完整流程
在工业环境下,固废表面常常被粉尘覆盖,颜色信息严重退化。在固废分拣线上,固废通过皮带传输,需要经过多级破碎。在经过破碎后,固废的形状也变得不规则。固废在皮带上会出现堆叠的情况,导致黏连的同类固废对象难以区分。在这种情况下,将固废对象分割出来是非常困难的。传统的2维分割算法,主要依赖于颜色和边缘信息进行分割,而固废对象存在严重的颜色退化,所以很难得到高精度的分割效果。
针对固废对象分割,本文提出一种融合多模态信息的深度卷积神经网络的固废对象分割算法。利用深度卷积神经网络融合RGB信息和深度信息进行特征学习,提升了特征的丰富性,解决了由于固废颜色严重退化导致的特征缺失问题,生成了高质量的像素类别预测分数图。结合全连接条件随机场迭代优化,解决了固废形状不规则导致的细节处分割不精细的问题,为每一类固废对象产生一个精确的分割块。针对同类固废对象难以区分的情况,利用局部轮廓的深度梯度信息,实现同一类别的不同实例的固废对象精确分割,解决了黏连导致同类固废对象难以区分的情况。
综上,本文算法的主要步骤为
1) 数据预处理。用深度卷积神经网络对原始RGB-D数据集学习颜色、纹理、形状、边缘信息等特征;
2) 构造能量项。应用全局CRF模型将原始图像不同类别对象分割开,获得完整的分类信息,减小局部对象分割的难度;
3) 基于深度梯度的局部对象精细分割。利用深度梯度信息得到局部深度边缘图,从中提取局部歧义区。针对局部歧义区,提取有效的内部边缘分割同类粘连对象。
2.2 原始数据的采集以及预处理
由于工业环境下大量的灰尘颗粒导致了固废物体颜色的严重退化,仅仅依靠颜色信息和轮廓信息,并不能对固废物体进行很好的分割。因此,采用卷积神经网络学习特征,避免显式特征抽取,最后用训练出来的softmax分类器产生每个像素标签分配概率。由于固废对象颜色的严重退化,单单用RGB图进行特征学习并不符合实际需求,因此需要把深度这一显著特征也进行训练。
因此本文在VGG16[17]网络结构的基础上融合深度信息,并把VGG16最后的全连接层改造成3层卷积层,形成一个全卷积网络,进行多模态信息的特征学习。本文深度卷积神经网络包含2个输入层data1和data2层,data1层输入RGB图像和对应的标签文件,data2层输入对应的深度图。将两者最后一层卷积层输出的特征图进行加权求和后作为输入训练softmax分类器,以获得每个像素点的标签分配概率。神经网络结构如图 1所示,其中卷积块里各包含2个或3个卷积层、激活层和1个最大池化层。
具体来讲,本文提出的网络结构主要改进为
1) 修改输入。增加一个并列分支
2) 避免特征图空间分辨率下降。因为普通的池化会缩小图片的尺寸,比如VGG16[17] 5次池化后输出特征图尺寸缩小为原始图像的1/32,从而损失很多精细结构信息。为了获得更大尺寸的特征图, 综合内存和计算量限制,令第4个、第5个池化层的步长为1,再加上1填充, 池化核尺寸都为3。这样经过池化后特征图大小不变,由于步长比池化核的尺寸小,输出之间会有重叠和覆盖,提升了特征的丰富性。但后层的感受野发生了变化。为使感受野不变,后面的卷积层使用空洞卷积[18],其作用是在不增加参数的前提下,增加感受野。
3) 修改卷积层滤波器核数。滤波器的核数是每一层能获取到的特征的种类数, 也是下一层可用于组合的特征数量。在特征学习中, 特征的多样性能够提高学习效果。由于进行学习的图片场景较为复杂, 其包含的信息、特征数相对较多, 需要更高维数上的特征学习, 因此全连接层改造的3层卷积层中, 滤波核分别为1 024, 1 024和4。
4) 修改输出数。输出数要根据实际分类类别数进行设置。根据实际情况,网络输出结果需要对木头、石头、砖头加上背景一共4个类别做出预测,为每个像素点产生标签分配概率。为了方便起见,用0、1、2、3来分别表示4种不同的类别。
2.3 全连接条件随机场全局分割
2.3.1 能量函数构建
用本文网络结构训练出来的模型能够为每个像素点产生分别属于每个类别的概率,生成的概率图如图 2所示。
图 2中,概率图用单通道灰度图像表示,属于哪个类别的概率越大(即概率值趋于1),在类别概率图像上显示越趋于白色,属于哪个类别的概率越小(即概率值趋于0),在类别概率图像上显示越接近黑色。
本小节在得到每个像素点属于相应类别的概率的基础上,构建了一个多标签的全连接条件随机场,提出了适用于固废对象的能量函数,然后通过最小化能量函数,来实现对不同类别区域的标记。定义
$ E\left( x \right) = \sum\limits_i^n {{\alpha _u}\left( {{x_i}} \right)} + \sum\limits_{i < j}^n {{\beta _p}\left( {{x_i},{x_j}} \right)} $ | (1) |
式中,
2.3.2 一元能量项
一元能量项
$ {\alpha _u}\left( {{x_i}} \right) = - \lg\; p\left( {{x_i}} \right) $ | (2) |
式中,
2.3.3 二元能量项
二元能量项
本节根据RGB-D信息,将二元能量项函数定义为
$ {\beta _p}\left( {{x_i},{x_j}} \right) = \left\{ \begin{array}{l} \sum\limits_{n = 1}^4 {{w_n}{g_n}\left( {i,j} \right)} \;\;\;\;\;{x_i} \ne {x_j}\\ 0\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;{x_i} = {x_j} \end{array} \right. $ | (3) |
$ {g_1}\left( {i,j} \right) = \exp \left( { - \frac{{{{\left| {{p_i} - {p_j}} \right|}^2}}}{{\theta _\alpha ^2}} - \frac{{{{\left| {{I_i} - {I_j}} \right|}^2}}}{{\theta _\beta ^2}}} \right) $ | (4) |
$ {g_2}\left( {i,j} \right) = \exp \left( { - \frac{{{{\left| {{p_i} - {p_j}} \right|}^2}}}{{\theta _\gamma ^2}}} \right) $ | (5) |
$ {g_3}\left( {i,j} \right) = \exp \left( { - \frac{{{{\left| {{d_i} - {d_j}} \right|}^2}}}{{\theta _\eta ^2}} - \frac{{{{\left| {{I_i} - {I_j}} \right|}^2}}}{{\theta _\nu ^2}}} \right) $ | (6) |
$ \begin{array}{*{20}{c}} {{g_4}\left( {i,j} \right) = }\\ {\exp \left( { - \frac{{{{\left| {{p_i} - {p_j}} \right|}^2}}}{{\theta _\rho ^2}} - \frac{{{{\left| {{I_i} - {I_j}} \right|}^2}}}{{\theta _\tau ^2}} - \frac{{{{\left| {{d_i} - {d_j}} \right|}^2}}}{{\theta _\zeta ^2}}} \right)} \end{array} $ | (7) |
式中,
2.4 局部精确分割
在2.3节,已经实现对不同类别固废的精确分割,完成了对固废对象的类别标记。接下来需要在相同类别里对不同对象进行精确分割。
对于非黏连的同类固废对象,经过CRF分割后,可以很容易地把固废对象分割出来。
而对于黏连的同类固废对象,因为视觉特征退化,造成黏连的同类固废对象间存在难以区分的歧义区域。针对这种模糊区域,采用深度梯度算法提取深度边缘分割模糊区。
深度梯度信息能够较好地反映相邻像素间连接紧密程度和相对变化程度, 同时反映图像的水平方向特征与垂直方向特征。
令
$ G\left( p \right) = \sqrt {{\mathit{\boldsymbol{G}}_x}{{\left( p \right)}^2} + {\mathit{\boldsymbol{G}}_y}{{\left( p \right)}^2}} ,\forall p \in \mathit{\boldsymbol{I}} $ | (8) |
式中,
根据式(9)可得深度边缘图
$ {E_g}\left( {x,y} \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} 255\\ 0 \end{array}&\begin{array}{l} G\left( p \right) > 阈值\\ G\left( p \right) \le 阈值 \end{array} \end{array}} \right. $ | (9) |
式中,
在得到每一类的分割结果基础上, 令集合
由于在实际生产线中,机器人自动分拣只是其中的一个环节,其前面的破碎环节基本上能保证要分割的相同类别的固废对象尺寸大小基本相近,不会出现过大尺寸的固废对象。因此,在保证分割精度的前提下,根据前面环节破碎设备能够输出的固废对象的最大尺寸为阈值,从
$ {\mathit{\boldsymbol{B}}_{\rm{w}}} = \left\{ {{f_{{\rm{w}}i}}\left| {{s_{{\rm{w}}i}} > {T_{\rm{w}}},} \right.i \in \left[ {1,n} \right]} \right\} $ | (10) |
$ {\mathit{\boldsymbol{B}}_{\rm{s}}} = \left\{ {{f_{{\rm{s}}i}}\left| {{s_{{\rm{s}}i}} > {T_{\rm{s}}},} \right.i \in \left[ {1,n} \right]} \right\} $ | (11) |
$ {\mathit{\boldsymbol{B}}_{\rm{b}}} = \left\{ {{f_{{\rm{b}}i}}\left| {{s_{{\rm{b}}i}} > {T_{\rm{b}}},} \right.i \in \left[ {1,n} \right]} \right\} $ | (12) |
式中,
令
以该轮廓的最小外接矩形为边界,
$ {E_{\rm{m}}}\left( {x,y} \right) = \left\{ \begin{array}{l} 255\;\;\;\;\;{E_{\rm{g}}}\left( {x,y} \right) = 255\\ 0\;\;\;\;\;\;\;\;{E_{\rm{g}}}\left( {x,y} \right) \ne 255 \end{array} \right. $ | (13) |
式中,
在外部轮廓已知的情况下,内部边缘成为分割黏连同类对象的关键。通过外轮廓图
$ \boldsymbol{E}_{\mathrm{in}}=\boldsymbol{E}_{\mathrm{m}}-\boldsymbol{F}_{\mathrm{c}} $ | (14) |
由于固废对象表面是不规则的,这样得到的内部边缘
由于固废对象外部形状大多是凸多边形,因此其凸包区域与轮廓区域的差值会比较小。但如果存在黏连区域,其外轮廓上不可避免地会存在凹的形状,导致其凸包区域与轮廓区域的差值会较大。本小节利用这一特点判断内部边缘
通过计算得到外轮廓
计算得到轮廓凹处区域图
$ {\mathit{\boldsymbol{E}}_{\rm{o}}} = \left( {{\mathit{\boldsymbol{F}}_{\rm{t}}} - {\mathit{\boldsymbol{F}}_{\rm{y}}}} \right) \oplus {C_{2 \times k + 1}} $ | (15) |
式中,
得到的轮廓凹处区域图
在轮廓凹处区域图
令闭合轮廓点集
$ {\mathit{\boldsymbol{E}}_{\rm{u}}} = \left\{ {p\left( {x,y} \right)\left| {{x_1} \le x \le {x_2}} \right.} \right\} $ | (16) |
式中,
$ \mathit{\boldsymbol{r}} = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} 1\\ 0 \end{array}&\begin{array}{l} {S_{\rm{u}}} \ge t\\ {S_{\rm{u}}} < t \end{array} \end{array}} \right. $ | (17) |
式中,
结合内部边缘
$ {\mathit{\boldsymbol{F}}_{\rm{n}}} = {\mathit{\boldsymbol{F}}_{\rm{y}}} - {\mathit{\boldsymbol{E}}_{\rm{u}}} \otimes {C_{2 \times k + 1}} $ | (18) |
式中,
3 实验与结果分析
由于目前没有公开可用的固废数据集,本节首先从工业现场中通过ASUS XtionPRO摄像头采集1 006幅固废RGB图像和深度图。这些图像包含了实际生产线中的皮带上堆放的石头、砖块、木头、混泥土等固废物体,它们形状不规则且表面被粉尘或者碎屑覆盖。
对数据集进行人工标注,主要分成木头、砖头、石头加上背景一共4类,按照4 :1的比例划分训练集与测试集。用VGG16[17]模型作为预训练模型进行超参微调。训练参数如下:原始图像640×480像素,学习率:0.001,batch_size:4, 迭代次数:40 000。
深度卷积神经网络各个层输入输出具体如表 1所示。
表 1
各层输入输出
Table 1
Input and output of each layer
参数层 | 输入尺寸 | 输出尺寸 |
C1卷积块 | (1×3×640×480) | (1×64×640×480) |
Pool1层 | (1×64×640×480) | (1×64×321×241) |
C2卷积块 | (1×64×321×241) | (1×128×321×241) |
Pool2层 | (1×128×321×241) | (1×128×161×121) |
C3卷积块 | (1×128×161×121) | (1×256×161×121) |
Pool3层 | (1×256×161×121) | (1×256×81×61) |
C4卷积块 | (1×256×161×121) | (1×512×81×61) |
Pool4层 | (1×512×81×61) | (1×512×81×61) |
C5卷积块 | (1×512×81×61) | (1×512×81×61) |
Pool5层 | (1×512×81×61) | (1×512×81×61) |
Conv6层 | (1×512×81×61) | (1×1 024×81×61) |
Conv7层 | (1×1 024×81×61) | (1×1 024×81×61) |
Conv8层 | (1×1 024×81×61) | (1×4×81×61) |
表 1中输入尺寸、输出尺寸格式对应于(图像张数×图像通道(维度)数×图像宽度×图像高度),其中可以发现卷积层(conv)的主要作用是升维,从更高的维度上学习语义特征;池化层(pool)的主要作用是缩小图像尺寸,减少参数量,避免显存溢出。
全连接条件随机场二元项公式(3)中的参数设置如下
二元能量项
图 7(b)的CRF结果是本文算法第2步之后的结果(即颜色代表某一类固废对象独立的分割块),红色代表砖头,绿色代表石头,蓝色代表木头; 图 7(c)分割结果是本文算法第3步之后的结果(不同的颜色代表不同分割对象); 图 7 (d)代表真值。
全连接条件随机场可以通过多次迭代对分割结果进行优化,但是随之而来的是耗时增加。通过实验来分析迭代次数对分割精度和分割耗时的影响。从表 2可以看出,随着迭代次数的增加,分割精度也有所提升,但是精度提升不是很明显。因为迭代一次的分割精度已经比较高,多次迭代对歧义区域的分割更加精细,只会有小部分像素改变标签。所以从分割精度上看,提升幅度比较小。迭代次数增加,随之而来的不仅仅是分割精度的提升,还有算法耗时的增加。从表 2可以看到,迭代一次的耗时需要6.7 s,而迭代4次的耗时已经超过了9 s。在实际应用中,算法速度越快越有益于它的应用。因此,综合分割精度和耗时,本文选择迭代1次。
表 2
迭代次数对算法分割精度的影响
Table 2
Influence of the number of iterations on the segmentation precision of the algorithm
迭代次数 | MPA/% | MIOU/% | 耗时/(s/张) |
1 | 90.02 | 89.03 | 6.7 |
2 | 90.07 | 89.07 | 7.4 |
3 | 90.14 | 89.15 | 8.2 |
4 | 90.29 | 89.27 | 9.0 |
5 | 90.67 | 89.61 | 9.8 |
表 2中MPA(均像素精度)和MIOU(均交并比)是常用像素标记的精度标准,PA为标记正确的像素占总像素的比例,MPA表示均像素精度,计算每个类内被正确分类像素数的比例,之后求平均。MIOU表示均交并比,计算两个集合的交集和并集之比,在语义分割的问题中,这两个集合为真实值和预测值。这个比例可以变形为真正样本数量比上真正样本数量、假负样本数量、假正样本数量之和,在每个类上计算IOU(交并比),之后求平均。
为了评估本文算法的有效性,在实验过程中选取FCN8s[12]、SegNet[19]、DeepLabV1[20]、DeepLabV2[18]这4种语义分割算法作为对比方法。训练参数一致为:原始图像640×480像素,学习率0.001,迭代次数:40 000,batch_size:4。统一用迭代40 000次的模型进行对比,结果如表 3所示。
表 3
算法精度
Table 3
Algorithm accuracy
由于FCN8s[12]算法和SegNet[19]算法后端没有采用CRF优化,算法耗时不具有对比性,因此本文在表 3中用“-”表明没有具体耗时。从表 3中可以看到,SegNet算法的精度最低,SegNet是Cambridge提出旨在解决自动驾驶或者智能机器人的图像语义分割深度网络, 可能不适用于对小目标的分割。FCN8s算法精度优于SegNet算法,但是进行8倍上采样的结果还是比较粗糙,图像中的细节不敏感,导致其对小目标的分割精度还是比较低。后端有CRF优化的DeepLabV1和DeepLabV2分割算法,在精度上明显高于SegNet和FCN8s算法。针对多尺度目标使用不同采样率进行平行空洞卷积的DeepLabV2算法精度比DeepLabV1算法精度有明显提高。本文算法融合深度信息提取特征,分割精度比以上4种算法都要高。
为了进一步评估本文算法的先进性,选取FCN32s-Color-D[12]、Fusenet-Sf1[21]、DeepLabV2-D[18]3种针对RGB-D数据的语义分割算法进行对比实验。训练参数一致为:原始图像640×480像素,学习率0.001,迭代次数40 000,batch_size:4。统一用迭代40 000次的模型对比,结果如表 4所示。
表 4
RGB-D数据的语义分割算法精度
Table 4
Semantic segmentation algorithm accuracy of RGB-D data
从表 4中可以看到, FCN32s-Color-D[12]算法的精度最低,FCN32s-Color-D算法是把深度信息和RGB信息整合成一个4通道图像进行训练,真正能学习到深度信息的有效特征只有第1个卷积层,对深度信息的特征提取过于粗糙,导致分割精度较低。FuseNet-Sf1[21]算法采用双分支的网络同时从RGB图像和深度图提取特征进行融合作为第1个池化层的输入,并采用多尺度信息作为反池化层的输入,因此分割精度较高。DeepLabV2-D[18]算法是在DeepLabV2[18]的基础上针对第1个卷积层加入深度信息融合成4通道图像进行训练,对比表 3和表 4的结果可以发现,精度提高并不明显。本文算法采用双分支的网络同时从RGB图像和深度图提取特征,加入空洞卷积扩大感受野,增强语义信息,精度比以上3种算法要高。
综合表 3和表 4,本文算法比不用深度信息的语义分割算法精度有明显提升,耗时上与同样后端有CRF优化的DeepLab分割算法接近;与用深度信息的语义分割算法相比也处于先进水平。从理论上分析,在颜色退化的环境下,仅仅依靠颜色信息和轮廓信息,并不能对固废物体进行很好的分割,加入深度信息显得更加合理,在一些细节处分割效果更好,如图 8所示。
图 8(a)是DeepLabV2-D[18]的结果图,图 8 (b)是本文第2步算法结果图,绿色代表石头,红色代表砖头,蓝色代表木头。图 8 (a)右下角一块砖头出现类内不一致的情况(即砖头一部分误识别为石头),图 8 (b)中则是正确分割,显然本文CRF结果比DeepLabV2-D结果更符合实际情况。
如图 9所示,综合来看, 加了分支网络深度通道训练出来的模型产生每个像素标签分配概率作为一元项的分割结果明显比DeepLabV2-D[18]的结果更加精确。
其中图 9 (b)(c)中绿色代表石头,红色代表砖头,蓝色代表木头(即颜色代表某一类固废对象独立的分割块)。图 9 (d)是图 9 (b)经过本文算法步骤3之后的结果,图 9 (e)是图 9 (c)经过本文算法第3步之后的结果(不同颜色代表不同的实例固废对象)。图 9 (b)中第1行图片,DeepLabV2-D[18]结果无法分割出搭在砖头上木条的自然轮廓,而本文结果可以实现精准分割;图 9 (b)中第2行图片,DeepLabV2-D[18]结果无法把右上角两块黏连的石头分割开,而本文结果可以明显分割开;图 9 (b)中第4行图片,DeepLabV2-D[18]结果无法把右上角的木条准确地分割出来,而本文结果可以实现正确分割。
图 9(c)本文CRF结果得到的是每一类固废对象的一个独立的分割块,图 9 (e)本文结果将黏连的同类固废对象分割开,得到的是同一类别的不同实例的固废对象精确分割。具体如表 5所示。
表 5
分割结果对比
Table 5
Segmentation result comparison
图像 数量/幅 |
固废对象 数量/个 |
本文CRF 结果/个 |
本文结果/个 | |
简单场景 | 496 | 1 061 | 1 061 | 1 061 |
复杂场景 | 510 | 3 569 | 3 104 | 3 569 |
表 5中简单场景是指不存在歧义区域的固废图像(即不存在同类固废对象黏连的情况),复杂情况是指存在歧义区域的固废图像(即存在同类固废对象黏连的情况)。从表 5中可以看到,在简单场景下,本文CRF分割结果和本文结果与实际固废对象数量是一样的。但在复杂情况下,本文结果和实际固废对象数量是一样的,而本文CRF结果则小于实际固废对象数量。这表明,在复杂情况下,本文CRF结果并不能把所有的黏连的同类固废对象分割开,而本文结果则可以做到这一点。这也直接证明了本文算法第3步的必要性和有效性。
4 结论
本文对固废图像分割技术进行研究与探索,结合深度学习、全连接条件随机场等技术,提出了一种新的分割方法。该方法利用深度卷积神经网络提取特征,结合全连接条件随机场和图像深度梯度信息实现了复杂情况下的固废对象分割。理论分析和实际实验均表明本文的分割方法精度较高,在本文实验的测试集上取得了90.02%均像素精度和89.03%均交并比,与目前一些先进的语义分割算法相比在精度上表现出一定的优越性。该方法在建筑垃圾智能机器人自动分拣行业具有一定的应用价值。本文通过实验发现黏连同类固废对象的分割精度是整体分割精度的瓶颈。较低的分割精度主要来自于小尺寸固废对象和黏连同类固废对象的干扰。
下一步将针对黏连的同类固废对象探索算法的优化,扩大数据集,提升算法的速度以及提高算法的泛化能力和鲁棒性。
参考文献
-
[1] Hao Z G, Su X M. Research on the reuse of construction waste[J]. Architecture & Culture, 2017(2): 110–111. [郝占国, 苏晓明. 建筑垃圾再利用研究[J]. 建筑与文化, 2017(2): 110–111. ] [DOI:10.3969/j.issn.1672-4909.2017.02.031]
-
[2] Wang W X. Recycling of construction waste[J]. China Building Materials, 2005, 3(8): 67–71. [王武祥. 建筑垃圾的循环利用[J]. 中国建材, 2005, 3(8): 67–71. ] [DOI:10.16291/j.cnki.zgjc.2005.08.005]
-
[3] Krähenbühl P, Koltun V. Efficient inference in fully connected crfs with gaussian edge potentials[C]//Advances in Neural Information Processing Systems. Granada, Spain: [s.n.], 2011: 109-117.
-
[4] Reddi S S, Rudin S F, Keshavan H R. An optimal multiple threshold scheme for image segmentation[J]. IEEE Transactions on Systems, Man, and Cybernetics, 1984, SMC-14(4): 661–665. [DOI:10.1109/TSMC.1984.6313341]
-
[5] Ma W Y, Manjunath B S. EdgeFlow:a technique for boundary detection and image segmentation[J]. IEEE Transactions on Image Processing, 2000, 9(8): 1375–1388. [DOI:10.1109/83.855433]
-
[6] Leung T K, Malik J. Contour continuity in region based image segmentation[C]//Proceedings of the 5th European Conference on Computer Vision. Germany: Springer-Verlag, 1998: 544-559.
-
[7] Achanta R, Shaji A, Smith K, et al. SLIC superpixels compared to state-of-the-art superpixel methods[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(11): 2274–2282. [DOI:10.1109/TPAMI.2012.120]
-
[8] Felzenszwalb P F, Huttenlocher D P. Efficient graph-based image segmentation[J]. International Journal of Computer Vision, 2004, 59(2): 167–181. [DOI:10.1023/B:VISI.0000022288.19776.77]
-
[9] Hruschka H, Natter M. Comparing performance of feedforward neural nets K-means for cluster-based market segmentation[J]. European Journal of Operational Research, 1999, 114(2): 346–353. [DOI:10.1016/s0377-2217(98)00170-2]
-
[10] Song M J S, Civco D. Road extraction using SVM and image segmentation[J]. Photogrammetric Engineering & Remote Sensing, 2004, 70(12): 1365–1371. [DOI:10.14358/PERS.70.12.1365]
-
[11] Li J, Bioucas-Dias J M, Plaza A. Spectral-spatial hyperspectral image segmentation using subspace multinomial logistic regression and Markov random fields[J]. IEEE Transactions on Geoscience and Remote Sensing, 2012, 50(3): 809–823. [DOI:10.1109/TGRS.2011.2162649]
-
[12] Shelhamer E, Long J, Darrell T. Fully convolutional networks for semantic segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(4): 640–651. [DOI:10.1109/TPAMI.2016.2572683]
-
[13] Zhao H S, Shi J P, Qi X J, et al. Pyramid scene parsing network[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Hawaii, USA: IEEE, 2017: 2881-2890.
-
[14] Qiu Y Q, Chen J W, Guo J S, et al. Three dimensional object segmentation based on spatial adaptive projection for solid waste[C]//CCF Chinese Conference on Computer Vision. Springer, Singapore, 2017: 453-464.[DOI: 10.1007/978-981-10-7305-2_39]
-
[15] Holz D, Holzer S, Rusu R B, et al. Real-time plane segmentation using RGB-D cameras[M]//Röfer T, Mayer N M, Savage J, et al. RoboCup 2011: Robot Soccer World Cup XV. Berlin, Heidelberg: Springer, 2011: 306-317.[DOI:10.1007/978-3-642-32060-6_26]
-
[16] Richtsfeld A, Mörwald T, Prankl J, et al. Learning of perceptual grouping for object segmentation on RGB-D data[J]. Journal of Visual Communication and Image Representation, 2014, 25(1): 64–73. [DOI:10.1016/j.jvcir.2013.04.006]
-
[17] Simonyan K, Zisserman A. Very Deep Convolutional Networks for Large-Scale Image Recognition[EB/OL].2004-09-04[2019-04-22]. https://arxiv.org/pdf/1409.1556.pdf.
-
[18] Chen L C, Papandreou G, Kokkinos I, et al. DeepLab:semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected CRFs[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2016, 40(4): 834–848. [DOI:10.1109/TPAMI.2017.2699184]
-
[19] Badrinarayanan V, Kendall A, Cipolla R. SegNet:a deep convolutional encoder-decoder architecture for image segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(12): 2481–2495. [DOI:10.1109/TPAMI.2016.2644615]
-
[20] Chen L C, Papandreou G, Kokkinos I, et al. Semantic image segmentation with deep convolutional nets and fully connected crfs[EB/OL]. 2014-12-22[2019-04-22].https://arxiv.org/pdf/1412.7062.pdf.
-
[21] Hazirbas C, Ma L, Domokos C, et al. FuseNet: incorporating depth into semantic segmentation via fusion-based CNN architecture[C]//Proceedings of the 13th Asian Conference on Computer Vision. Taipei, China: Springer, Cham, 2016: 213-228.[DOI:10.1007/978-3-319-54181-5_14]