目标分割(二)U-Net讲解

                        1
原文:U-Net: Convolutional Networks for Biomedical Image Segmentation
代码:U-Net code
           Keras版本
 
前言:之前FCN模型依赖大量数据来训练,除此之外,还有分割结果不精细的弊端。这次要说的U-Net就是受到FCN启发针对医学图像做语义分割,且能利用少量的label数据集学习到一个对边缘提取十分鲁棒的模型,在生物医学图像分割领域有很大作用。


ABSTRACT

 
        人们普遍认为,深度网络的成功训练需要大量已标签数据集,这个网络(U-Net)可以依靠数据增强来充分地使用可用的带label的样本训练网络。该体系结构由收缩路径(捕获上下文)以及对称的扩展路径(支持精确定位)组成。该网络属于端对端网络。而且,这个网络在GPU运行且训练得很快,512×512的图片只需要不用一秒即可,最后赢得了2015年ISBI细胞跟踪挑战赛。


1. INTRODUCTION

 
       在2013-2015年中,深度卷积网络在许多 目标识别 任务中的表现都超过了当前的技术水平,虽然卷积网络已经存在很长时间了,但是由于可用训练集的大小和考虑的网络的大小,它们的成功是有限的,直到ImageNet数据集(百万张图片)的出现。 (由于数据集sample少以及硬件限制)

        传统的卷积网络的目标是分类 ,图像的输出是单个类标签。然而,在许多视觉任务中,特别是在生物医学图像处理中,需要的输出还应该包括定位,应该对每个像素分配一个标签。除此之外,医疗图像的训练集都不大。 (传统卷积用于分类,对于分割还没有)

       前人的工作:Ciresan等人通过滑动窗口训练一个网络,通过将像素周围的局部区域(patch)作为输入(通过提高训练数据来获得成功)来预测每个像素的标签。首先,这个网络可以定位。其次,以patch表示的训练数据远远大于训练图像的数量。由此产生的网络以较大优势赢得了 2012年ISBI的EM细分挑战赛
 
       Ciresan等人提出的模型两个缺点
 
        1. 速度非常慢
                        因为对于每个局部区域(patch)都必须单独运行一次网络,而且局部区域(patch)之间会有重叠,因此计算存在大量冗余。
        2. 定位的准确和上下文的使用之间需要取舍
                        因为较大的局部区域(patch)需要更多的max-pooling层,这会降低定位精度;而较小的局部区域(patch)只让网络看到很少的上下文。
 
        对于第2点缺点有改善方法:最近的一些模型使用了一种考虑多层特征的分类器输出。这样使得好的定位和上下文的使用是可以兼得。


2. Network Architecture

2
        结构详述:这个网络共有23个卷积层,它由收缩路径(左侧)和扩展路径(右侧)组成。

        收缩路径 遵循典型的卷积网络架构(传统卷积网络)。它由两个3x3的卷积(unpadded),每个卷积后面都有一个ReLU和一个max-pooling(大小为2x2,stride=2)来组成,用于下采样。在每个下采样后,我们将特征通道channels数量增加一倍。

        扩展路径 则是通过2x2的上卷积对特征图进行向上采样,上卷积后的输出通道数channels变为原先的一半,再与对应的特征图(裁剪后)串联起来(得到和原先一样大小的channels),再经过两个3×3的卷积以及ReLU作用。相应的裁剪特征图是必须的,因为在我们卷积的过程中会有边界像素的丢失。在最后一层通过卷积核大小为1×1的卷积将每个含64分量的特征向量映射到所需的类数。

        为了保证输出分段映射的无缝拼接,需要谨慎的选择输入图片的尺寸,以保证所有的Max Pooling操作应用于有偶数的x-size和偶数的y-size的图层。


 
① 挑战一:对于尺寸较大的图像,GPU限制

                     3
                            图2 预测黄色区域的分割,需要蓝色区域内的图像数据作为输入,其中缺少的输入数据是由镜像得出

       该网络 没有FC层,且全程使用Valid来进行卷积,这样可以保证分割的结果都是基于获得完整上下文特征后得到的,因此输入输出的图像尺寸不太一样。这种策略允许无缝分割任意大的图像(适用于尺寸较大的图像),为了预测图像的边界区域中的像素,通过镜像输入图像来外推丢失的上下文。
       这种平铺策略对于将网络应用于大图像很重要,否则分辨率将受到GPU内存的限制,这个策略基于GPU内存不够的情况下所提出的

② 挑战二:数据集可用数据量少

       我们通过对可用的训练图像应用弹性变形来使用过量的数据增强,这允许网络学习这种变形的不变性,而不需要在注释的图像语料库中看到这些变换。这在生物医学分割中尤其重要,因为变形曾经是组织中最常见的变化,并且可以有效地模拟真实的变形。 Dosovitskiy等人已经证明了在无监督特征学习的范围内学习不变性的数据增加的价值.

③ 挑战三:相同物体的间隙不容易分割出来:采用加权的策略

       许多细胞分割任务中的另一个挑战是分离同一类的接触物体,本文使用加权损失,其中接触单元之间的分离背景标签在损失函数中获得大的权重。以此方法提升对于互相接触的相同物体之间缝隙的分割效果.


3. Train

该论文是基于Caffe,使用动量为0.99的SGD,损失函数为交叉熵,训练输入图片与它们对应的分割图片(输入图片和最后的图片的尺寸不一样)。该训练模型和传统的训练模型没什么不同,都是注意权重初始化随机,数据增强等。


Reference

  1. [论文阅读笔记]U-Net: Convolutional Networks for Biomedical Image Segmentation
  2. U-Net-论文笔记-理解:U-Net: Convolutional Networks for Biomedical Image Segmentation
发布了36 篇原创文章 · 获赞 5 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_40520596/article/details/104465462
今日推荐