津南数字制造算法挑战赛[赛场二]总决赛冠军比赛攻略_X-Force队

原文发表在天池实验室, 决赛答辩视频(第55分钟开始)

第一次参加天池的比赛,主要是被题目的实用性所吸引,物流货物限制品监测要求监测X光图像是否包含危险品并标出。自动化监测包裹、行李的携带品有相当广的应用前景。本文对比赛进行回顾,描述对问题的分析,方案思路以及改进和涨分点,源码分享在github。

问题分析

复赛的任务是经典的图像语义分割(semantic-segmentation)的问题,简单说就是要在像素级别将前景类别标识出来。具体到本次比赛要求将安检X光扫描图像中的5类危险品的像素分别标出来。已经有很多使用深度学习针对COCO,Cityscapes等数据集的研究,kaggle上也举办过几个图像语义分割的比赛。下面的表格列出了一些相关的研究,总体来说都是使用卷积网络构成一个encoder-decoder的结构,其中又为Unet和Mask-RCNN在kaggle中的成绩最好,所以需要重点研究一下这两个方案。

Model Year Backbone PASCAL VOC PASCAL Context COCO AP Cityscapes Kaggle Salt Kaggle Ship Kaggle DSB18
SegNet 2015 – – – – – – – –
FCN 2015 – 62.2 – – – – – –
ParseNet 2015 – 69.8 40.4 – – – – –
Conv&Deconv 2015 – 72.5 – – – – – –
UNet 2015 – – – – – rank1, 9 rank6, 9 rank 1, 2, 4
FPN 2016 – – – – – – – –
PSPNet 2016 ResNet-101 85.4 – – 81.2 – – –
DeepLab 2016 – 79.7 45.7 – 70.4 – – –
DeepLabv3 2017 – 86.9 – – 81.3 – – –
Mask RCNN 2017 – – – 41.8 – – rank 10 rank 3, 5
DeepLabv3+ 2018 – 89.0 – – 82.1 – – –
PANet 2018 – – – 46.7 – – – –
EncNet 2018 – 85.9 52.6 – – – –
RefineNet 2017 ResNet-101 – – – 73.6 – –
SAC 2017 ResNet-101 – – – 78.1 – –
PSANet 2018 ResNet-101 – – – 80.1 – –
OCNet – ResNet-101 – – – 81.7 – – –
GALD-Net – ResNet101 – – – 83.3 – – –
InPlaceABN – – – – – 82.0 – – –
LinkNet – – – – – – – 1st speed –

 

方案思路

由于本次比赛限定最多使用两个模型进行融合,所以“最佳选择”是训练一个Unet和一个Mask-RCNN再进行融合:D 但是考虑到时间(三周)、计算资源和个人精力的限制,所以只能选择一个。相比较而言,Mask-RCNN在大数据集和多类别识别中的效果好,而Unet在kaggle比赛中的成绩更好,比赛的数据集相对较小、类别也少。比赛评价标准是mIoU,Unet有天生优势,因为能直接输出与图像1:1的mask,而Mask-RCNN默认输出是缩小了的。另外,Unet这种一个端到端的网络没有Mask-RCNN那么多的超参。所以X-Force优先选择基于Unet的方案。

 

上图是最后使用的网络结构,在Unet的基础上作了一些修改:

  • 使用resnet系列作为encoder
  • 将各个decoder的输出cat一起作为最终输出的特征
  • 除了输出前景物体的mask,还单独输出物体的边沿

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.