王 芳 刘小虎 罗艺闯
(1.西安培华学院 西安 710021)(2.美林数据技术股份有限公司 西安 710000)
随着我国经济的发展和城市化进程的加速,生活垃圾对城市环境的威胁日益增加。因此,如何高效、环保地解决处理生活垃圾迫在眉睫。然而,对垃圾分类的知识普及以及工作落实一直以来都是一个难题,目前垃圾分类主要以人工分拣为主,存在劳动强度大、效率低等缺点。因此,结合大数据、人工智能和计算机视觉等技术实现垃圾的智慧分拣成为研究的重点内容。
传统的图像分类算法[2],通常包含特征提取、特征编码和分类器三个部分,整个过程需要大量的人工参与,且无法有效利用现有硬件及技术。随着深度学习技术的发展,涌现了大量基于卷积神经网络[3]的分类模型。文献[4]提出一种基于ResNet50和SVM 的分类系统,该系统采用ResNet50 进行特征提取,然后采用SVM 对所提取到的特征进行分类;文献[5]提出基于ResNet 和Inceptionv4[6]的垃圾自动分类DSCR 网络,该网络构建了一个IR-Block用以提取多尺度特征,消除了模型对数据敏感问题;文献[7]提出了一种注意力机制模型,模型通过局部、全局的特征提取和融合机制提出了垃圾图像分类模型GCNet。文献[8]提出了基于Inception 网络特征提取模型和迁移学习相结合的垃圾分类方法,该方法采用较小的卷积核来减小计算量。这些方法均从模型角度人为来设计网络结构,且缺乏针对数据本身特点的分析。
本文结合数据本身特点,采用显著性检测来去除各背景,然后基于神经网络结构搜索算法所设计的EfficientNet,结合数据增强、标签平滑和学习率余弦调整策略,利用Fine-Tuning 进行微调迁移学习[16],数据集采西安垃圾分类大赛给出的7831 张已标记的图片,实现表明该算法可有效解决决数据过拟合问题,同时降低了训练时间。
本文使用的垃圾图像来自西安垃圾分类大赛[1]中提供的数据集,共包含7831 张图片,6 个类别:厨余、塑料、金属、纸类、织物、玻璃,按93%和7%的比例划分训练集和验证集,两者之间无交集。表1 列出了具体训练集、验证集已分类数据集数量。由于数据集数据量小,且存在图片大小、分辨率、背景不一致等因素,一定程度上增加了垃圾分类的困难程度数据集中的部分垃圾图像如图1所示。
表1 6类垃圾分类图像数据集
图1 垃圾图片示例
由图1 可以看出,各类数据中包含大量的背景部分,实际所关注的物体部分占较小,而通常所采用神经网络分类模型,其输入维度固定且较小[3],如224×224或308×308,直接将图片数据输入模型,缩放之后,会造成大量的信息丢失。因此,从原始图片中裁剪出所需要的物体,对于构建分类模型具有很大的提升,而所提供的数据并没有具体的物体信息,如包围框。故此,本文提出基于物体显著性检测的方法来获取所关注的物体部分。
显著性检测旨在通过模拟人类的视觉特征来提取人类感兴趣的图像显著区域,检测显著性物体需要理解整个图像以及图像中物体的语义信息和详细结构[12]。具体采用U2-Net[9]模型实现,其将两个U-Net 结构进行嵌套堆叠,不同于常规的如hourglass 网络[10]等级联堆叠的方式,U2-Net顶层是一个包含11 阶段的U 型结构,每阶段内部采用残差U 模块来捕获段内多尺度特征,如图2 所示,同时,可以更有效地融合各阶段间多层级特征。其主体由三部分组成:1)一个6阶段编码器,2)一个5阶段解码器,3)一个显著图融合模块,进而,损失函数可定义为
图2 残差模块和残差U模块[9]的对比
结合检测出的显著图,将原始图像中物体前景分离,进而可得到物体所在区域包围框,据此裁剪出物体图片,整体流程如图3所示。
图3 物体裁剪流程示意
受限于垃圾数据集的数量和种类,为提升分类模型的性能,本文采用迁移学习和分类模型相结合的方法,分类模型具体采用EfficientNet[11],其注意力机制能实现对图像的像素级遮罩,相比于ResNet[13]等网络池化后直接进行分类,能有效缓解过拟合,同时减少参数,并提升收敛速度,详见图4。
图4 EfficientNet模型规模及ImageNet分类精度对比[11]
EfficientNet同时平衡了网络宽度、深度和分辨率,结合神经网络结构搜索算法进行实现:
其中,ϕ用来控制模型规模,α,β,γ用来调节网络宽度、深度和分辨率,粒度由网络搜索决定,结合资源限制及上述限制,以模型精度为优化目标,求解最优化问题:
基于物体显著性检测的目标区域裁剪,采用文献[9]中所训练的U2-Net 模型进行预测,得到显著图,并设置前景判别阈值为0.9,进而得到物体所在区域。
垃圾分类模型基于EfficientNet预训练模型,结合随机裁剪、0.5 概率的水平和垂直翻转、0.2 概率的色度和饱和度变换、(-0.1,0.1)范围的亮度和对比度变换,以及图片标准化等数据增强方法,配合标签平滑和基于余弦策略的学习率调整方法,采用Adam优化算法[14]进行模型迁移训练,其中,学习速率为1e-4,权重衰减为1e-6,余弦调整策略[15]T_0为10、T_mult 为1、eta_min 为1e-6。训练时批大小为32,共迭代10 轮,训练误差和准确率曲线如图5所示。
图5 分类模型训练误差和准确率曲线
结合上述显著性检测算法,对垃圾图片中物体进行定位,结果如图6 所示,可以看出对于形变物体和刚性物体模型均可以实现精准检测。
图6 基于U2-Net的物体显著性检测
针对不同输入图片及Efficient-Net模型构建分类模型,其结果如表2 所示,可以看出随着模型规模的增大,准确率随之增加,但随着参数量的增加,推理速度下降及资源消耗增加,故本文对比到EfficientNet-B4。另,在采用同样的模型情况下,使用经显著性检测后裁剪的图片构建模型,分类准确率均有将近2%的提升。
表2 各配置情况下分类效果
本研究提出了一种基于显著性检测和迁移学习的垃圾分类算法,在垃圾分类比赛数据集[1]上进行微调,结合数据增强、标签平滑及余弦调整策略,采用Adam 优化算法最终得到94.2%的识别率,可满足垃圾分类的需求。下一步尝试在显著性检测的基础上,对背景进行统一处理,以除去不同背景的影响,同时加入对比学习加强物体表征学习,进一步提高识别精度。