文章目录
- Unet总结
-
- 一、网络结构
- 二、主要策略
-
- 2.1 编码-解码结构
- 2.2 overlap-tile strategy
- 2.3 weighted loss
- 2.4 数据增强-随机弹性形变
- 三、训练
- 四、效果图
Unet总结
论文地址:U-Net: Convolutional Networks for Biomedical Image SegmentationUnet主要用于医学图像分割。
医学图像特点是:
- 数据集小(Unet只用了30张标注图片训练)
- touching objects(对象接近,比如说两个细胞彼此互相靠近)
文章图片
??整体呈现 U 字形。左边叫做收缩路径(contracting path),主要是max pool 下采样,同时通道数增加。
??右边是扩张路径(expansive path),用反卷积( up-convolution )做上采样,恢复图像的尺寸。
??最后采用1 × 1 1 \times 1 1×1 的卷积层代替全连接层输出。
要注意的是:
- 网络并不是完全对称,输入图像和输出图像的尺寸并不一致。主要是因为用了 valid 卷积。
- 除了收缩路径和扩张路径,中间还有一条拼接路径(skip connection),将左边的特征图(需要裁剪crop)拼接到右边。
??这点就是前面所说的收缩扩张路径。
2.2 overlap-tile strategy
??我想可以翻译为重叠平铺策略。
To predict the pixels in the border region of the image, the missing context is extrapolated by mirroring the input image. This tiling strategy is important to apply the network to large images, since otherwise the resolution would be limited by the GPU memory.
为了预测图像边界区域中的像素,通过镜像输入图像来推断缺失的上下文。这种平铺策略对于将网络应用于大型图像非常重要,因为否则分辨率将受到GPU内存的限制。
文章图片
??黄色区域的分割预测需要蓝色区域内的图像数据作为输入。缺少的输入数据通过镜像进行推断。
??可以看到黄框边界都作了镜像操作,这比单纯的 zero-padding 好得多。我觉得这因为细胞图像本身的对称性,使得镜像操作能够很好的模拟缺失的图像信息。
2.3 weighted loss
??带有权重的损失,主要用于分离同一类别的接触物体。
Another challenge in many cell segmentation tasks is the separation of touch- ing objects of the same class;??也就是说,细胞边界的像素点具有更高的权重,这样可以强迫网络去学习这些边界点。这也是值得借鉴的一个地方。具体的公式看后边。
许多细胞分割任务中的另一个挑战是分离同一类别的触摸对象;
To this end, we propose the use of a weighted loss, where the separating background labels between touching cells obtain a large weight in the loss function.
为此,我们建议使用加权损失,其中触摸单元之间的分离背景标签在损失函数中获得较大权重。
2.4 数据增强-随机弹性形变
文章图片
This is particularly important in biomedical segmentation, since deformation used to be the most common variation in tissue and realistic deformations can be simulated efficiently.??可以说,随机弹性形变本身就很好模拟了图像数据的特性。因为它本身就在组织中就很常见。
这在生物医学分割中尤其重要,因为变形曾是组织中最常见的变化,并且可以精确地模拟实际变形。
三、训练 ??由于未填充的卷积其输出图像的大小小于恒定边界宽度的输入。为了最小化开销和最大限度地利用显存,比起输入一个较大的批次,更倾向于较大的输入切片,因而将批次大小缩减为单张图像。相应地,通过使用高动量(high momentum,0.99)使得大量先前的训练样本在当前的优化步骤中更新。
??能量函数(the energy function)是通过与交叉熵损失函数相结合的最终特征图,并利用像素级的soft-max函数来计算的。soft-max函数定义为:
p k ( x ) = e a k ( x ) ∑ k ′ = 1 K e a k ′ ( x ) p_k(x) = \frac{e^{a_k(x)}}{\sum\limits_{k^\prime =1}^{K}e^{a_{k^\prime}(x)}} pk?(x)=k′=1∑K?eak′?(x)eak?(x)?
文章图片
文章图片
四、效果图 【论文|Unet论文总结】
量化评估
文章图片
IoU指标
文章图片
推荐阅读
- 人工智能教程|第四课(神经网络是如何进行预测的)
- 预测模型及优化|BP神经网络时间序列预测-附代码
- 人工智能|AI遮天传 DL-多层感知机
- 人工智能|2022年最受欢迎的几本人工智能书
- c++|动手打造深度学习框架(基本数据结构与算法)
- 经典卷积网络|GoogLeNet网络结构详解
- 大话CNN经典模型(GoogLeNet(从Inception v1到v4的演进))
- 自动驾驶感知|自动(智能)驾驶系列|(二)环境感知与识别(2)
- 自动驾驶感知|自动(智能)驾驶系列|(一)简介与传感器