图像分割01-FCN

东阳的学习记录,坚持就是胜利!

图像分割概念

语义分割

语义分割是计算机视觉中的关键任务之一。 现实中, 越来越多的应用场景需要从影像中推理出相关的知识或语义( 即由具体到抽象的过程) 。 作为计算机视觉的核心问题, 语义分割对于场景理解的重要性日渐突出。

概念辨析

  1. 语义分割
  2. 实例分割
  3. 全景分割
    在这里插入图片描述

语义分割研究现状

在这里插入图片描述

传统方法存在的问题

在实际运用中, 每运行一次 Ncut, 只能切割一次图片, 为了分割出图像上的多个物体, 需要多次运行, 下图示例了对原图 a 进行7 次 N-cut 后, 每次分割出的结果。
在这里插入图片描述
缺点:效率低准确度不高

深度学习方法存在的问题
  1. 不匹配关系: SPP、 ASPP、 PSPNet、 GCN、 DFN等(比如将轮船识别为汽车)
  2. 不寻常类: RedNet、 RDFNet(比如枕头颜色与床一致时,无法区分)
    在这里插入图片描述
    在这里插入图片描述

语义分割常用指标

  • PA(像素精度):标记正确的像素占总像素的比例
    • PA = 对象线和 / 总和
  • MPA(均像素精度):每个类被正确标记的像素个数比例,再求所有类平均
    • MPA = np.nanmean(对角线 / 每行和)
  • IoU(交并比):真实和预测的交集 / 真实和预测的并集
    • IoU = 对角线和 / (行和 + 列和 - 对角线和)
  • MIoU = np.nanmean(IoU)
    在这里插入图片描述

研究意义

历史意义

  • FCN是语义分割领域的开山之作
  • 端到端训练为后续语义分割算法的发展铺平了道路

当前应用

  • 地理信息系统
  • 无人车驾驶
  • 医疗影响分析
  • 机器人领域
    与图像分类或目标检测相比, 语义分割使我们对图像有更加细致的了解。这种了解在诸如自动驾驶、 机器人以及图像搜索引擎等许多领域都是非常重要的。

摘要

  • 主要成就:端到端、像素到像素的训练方式下的卷积神经网络超过了现有语义分割方向最先进的技术
  • 核心思想:搭建了一个全卷积网络,输入任意尺寸的图像,经过卷积、跳跃融合连接和反卷积操作
  • 主要方法:跳跃连接、反卷积
  • 实验结果:在多个数据集上获得sota

特征提取的好坏将直接影响最后的预测结果, 端到端网络的最主要特点就是根据设计好的算法自己学习特征, 而不需要人为干预

在这里插入图片描述

分割术语

  1. pixel-wise(pixels-to-pixels):像素级别,值的是预测结果精确到每一个像素(比如一张10*10的图片则预测出100个结果出来)
  2. image-wise:图像级别:预测是精确到一张图片的,比如一张图片的标签是狗, 即“狗” 是对整个图片的标注
  3. patch-wise:块级别,介于以上两者之间
  4. patchwise training:是指对每一个感兴趣的像素,以它为中心取一个patch(小块),然后输入网络,输出则为该像素的标签

引言

1. 在以往的分割方法中, 主要有两大类缺点

  1. 基于图像块的分割虽然常见, 但是效率低, 且往往需要前期或者后期处理(例如超像素、 检测框、局部预分类等)
  2. 语义分割面临着语义和位置信息不可兼得的问题。 全局信息解决的“是什么” , 而局部信息解决的是“在哪里

2. 为了解决上面这两个问题, 本文主要有三个创新点

  1. . 将分类网络改编为全卷积神经网络, 具体包括全连接层转化为卷积层以及通过反卷积进行上采样
  2. 使用迁移学习的方法进行微调(预训练权重的使用,可以大大提高模型的表现)
  3. 使用跳跃结构使得语义信息可以和表征信息相结合, 产生准确而精细的分割

全局信息和局部信息

局部信息:

  • 提取位置: 浅层网络中提取局部信息
  • 特点: 物体的几何信息比较丰富
  • 对应的感受野较小
  • 目的: 有助于分割尺寸较小的目标,有利于提高分割的精确程度

全局信息:

  • 提取位置: 深层网络中提取全局信息
  • 特点: 物体的空间信息比较丰富对应的感受野较大
  • 目的: 有助于分割尺寸较大的目标,有利于提高分割的精确
    在这里插入图片描述

感受域

在 卷 积 神 经 网 络 中 , 决 定 某 一 层 输 出 结 果 中 一 个元素所对应的输入层的区域大小, 被称作感受野。通 常 来 说 , 大 感 受 野 的 效 果 要 比 小 感 受 野 的 效 果更好。 由公式可见, stride越大, 感受野越大。但是过大的stride会使feature map保留的信息变少。 因此,在减小stride的情况下, 如何增大感 受 野 或 使 其 保 持 不 变 , 称 为 了 分 割 中 的 一 大 问题。
在这里插入图片描述

平移不变性(貌似被证伪了)

宏观结果: 图像中的目标无论被移到图片中的哪个位置, 分类结果都应该是相同的
具体过程: 卷积 & 最大池化 ≈ 平移,不变图像中的目标有移动时, 得到的特征图也会产生相同移动
在这里插入图片描述

Shift-and-stitch

补零 + 平移原始图片得到四种版本的输入图片

  1. 最大池化得到对应的四张输出特征图
  2. 将四张输出图拼接成密集预测图

通过将输入的移位版本的输出拼接在一起,可以从粗略的输出中获得密集的预测。如果输出的下采样因子为f,将输入x像素向右移,y像素向下移,每次的(x, y)需满足 x > = 0 , y < f x >= 0, y < f x>=0,y<f. 处理这两个输入中的每一个,并隔行扫描输出,以使预测结果与其感受野中心的像素相对应。(假设下采样因子为f, 那么经过SAS操作后,会产生f ** 2 个输入,同样的也就会产生f ** 2 个 输出

拼接方法见下图:
在这里插入图片描述

上采样

本 文 没 有 沿 用 以 往 的 插 值 上 采 样(Interpolation) , 而是提出了新的上采样方法, 即反卷积(Deconvolution) 。 反卷积可以理解为卷积操作的逆运算, 反卷积并不能复原因卷积操作造成的值的损失, 它仅仅是将卷积过程中的步骤反向变换一次, 因此它还可以被称为转置卷积
在这里插入图片描述

网络结构

使用分类器做密集预测

典型的分类识别网络,如LeNet、Alexnet都输出的不是图片(数字),这些网络的全连接层输出空间坐标。全连接的两个缺点是:1. 需要固定尺寸;2. 输出的时一维数据
然而,这些全连接层可以看作是覆盖整个输入区域的特殊卷积操作;这样做会将他们投射到完全卷积的网络中,如下图:
在这里插入图片描述

在刚开始,提到过一个skip结构,这个个结构是进行end-to-end学习以细化输出的语义和空间精度(更精细的尺寸需要的网络层较少,将精细网络层和粗糙的网络层组合一起可以让model在考虑全局结构下进行局部预测)。如下图:

在这里插入图片描述
在这里插入图片描述

这个图就是上面那个图的详细版,FCN论文有两个版本。32倍简单粗暴的版本还是不行。

我们在最后一个网络层和低层网络之间增加了一个跳跃连接层,跳跃连接将原来简单的的线性拓扑结构,变为了有向无环图形式,如果一个网络太深的话,那么他在最后几层只能获取比较少的像素点,信息丢失问题比较严重,一些对精细读要求比较高的任务可能并不需要那么多层,因为层数越多代表我们的信息丢失越严重,这就是一个比较矛盾的点了,本文添加跳跃连接,就是为了解决这个问题,起到一个融合提升效果的目的。

FCN-16s:在上图中pool4融合之间,实际上是有一个1 * 1卷积操作的,是两个通道数为21的特征图在进行融合。FCN-16s通过端到端的训练方式;在pool4后的卷积,其卷积核是用0初始化的。(为什么要这么用,后面好像也没人这么用)

结论:跳跃连接提升了模型在验证及上的表现,仅仅提高学习率而不增加跳跃连接并不能提高效果,表明跳跃连接的重要性。

FCN-8s:62.7,不仅仅在miou上取得了比较好的结果,还发现8s在平滑度和输出细节上都有一定的效果提升,但是在结合pool2和pool1时却得到了一个更差的结果

通过减小步长来提高精度的方法是不可取的,会导致感受野变小。本文的实验是采用大卷积核的方法(现在貌似有空洞卷积

训练技巧

  1. 加载预训练模型
  2. 初始化反卷积参数
  3. 每100个epoch调整学习率
  4. pool3之前的特征图不需要融合
  5. 采用随机镜像的数据增强
    在这里插入图片描述
    在这里插入图片描述

结果分析

在这里插入图片描述

结果

我们把FCN应用在了三个数据集上

双流FCN和单流FCN是什么鬼???

还有啥一个像素点需要去对应两个实际的类别(位置信息 or 全局信息(天空,水面,横着,竖着)),主要看miou

作者在NYUDv2上进行试验,NYUDv2是使用Microsoft Kinect收集的RGB-D数据集。 它具有1449个RGB-D图像,其中像素标签已经被合并成40个类别的语义分割任务,其中795幅图像作为训练集,654幅图像作为测试集。下图给出了模型在几个不同变化中的改变。首先训练FCN-32s在RGB中的结果,然后RGB结合深度信息得到RGBD进行训练,接着用三维深度编码HHA进行训练,结果不尽如人意,但我们将RGB和HHA进行“后期融合”(就是把最后一层结果累加,得到预测值)效果提升明显,然后将FCN-32s改成FCN-16s效果更好。
在这里插入图片描述
结果表明:FCN-32s和FCN-16s在RGB-D和HHA的图像数据集上,优于state-of-the-art。

作者接着又在SIFT Flow数据集下实验,和目前较为先进的模型的比较:(SIFT Flow共有2688张图片对应33个类别以及三个几何类别(“水平”,“垂直”和“天空”))此时一个像素点对应两个类别,加上空间类别真的有效吗
在这里插入图片描述
FCN有两大明显的优点:一是可以接受任意大小的输入图像,而不用要求所有的训练图像和测试图像具有同样的尺寸。二是更加高效,因为避免了由于使用像素块而带来的重复存储和计算卷积的问题。

同时FCN的缺点也比较明显:一是得到的结果还是不够精细。进行8倍上采样虽然比32倍的效果好了很多,但是上采样的结果还是比较模糊和平滑,对图像中的细节不敏感。二是对各个像素进行分类,没有充分考虑像素与像素之间的关系,忽略了在通常的基于像素分类的分割方法中使用的空间规整(spatial regularization)步骤,缺乏空间一致性。

思考与展望

对于数据集中训练集和测试集的划分,这里老师讲了一个规则,在使用一个数据集之前首先需要去看同样使用这个数据集的其他论文是如何划分的,我们采取和他们一样的划分来控制变量。工作以后没有这种需求了就不必了

将这些经典的分类算法扩展到我们分割方向来,是需要做一些改进的,在本文中,主要是跳跃连接的结构。跳跃结构也是本文的重点。

至于论中中提到的类别均衡的看法,还值得思考。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东阳z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值