U-Net 网络结构理解

在图像分割领域,不像单纯的图像分类任务,任务一般要求不仅输出图像的类别,还要告诉我类别图像的位置。一般数据的输入是一个图像(多通道或单通道),输出是相同大小带有标签的分类后的图像,或者是多个方框框处各个类别物体,显然前一种方法更为精细。

按照前一种分割的输出标准。有一种分类的思路是根据像素点周围的像素来对该像素进行分类。因此有了基于滑动窗的神经网络,这种网络以像素为单位对图片进行分类。[a patch(窗体) —>net—> a pixel for pixels in an image]. 但显然这种网络要对每个patch各训练一次,计算量太大,冗余性太高(每个patch之间都有相关的像素)。所以以图片为整体来进行图片分类分割相比起来计算量就小一些。U-net就是按照这个思路进行分割的。

考虑到分类问题,总是会考虑到像素周围的像素提供的信息。但是这些信息大体上包括两类: 一类是环境场信息,一个是细节信息。 以像素为单位的方法对于窗体的选择具有非常大的不确定性。选择size过大,不仅需要更多的池化层使得环境信息显现,而且失去了局地细节信息。U-net采用的是一个包含下采样和上采样的网络结构。下采样用来逐渐展现环境信息,而上采样的过程是结合下采样各层信息和上采样的输入信息来还原细节信息,并且逐步还原图像精度。

《U-Net 网络结构理解》
from(U-Net: Convolutional Networks for Biomedical Image Segmentation)

结构
卷积层: 无填充卷积+relu+(2*2,stride=2)的max pooling
卷积滤波器的数量每次下采样后double。
patch: 上采样的时候是下采样时候的两倍。因为要把下采样的patch合并过来。

优化器:SGD, 0.99的动量系数
loss: cross entropy loss function
输入:尽可能大的batch来完美使用GPU内存。
权重初始化:高斯(0,sigma=sqrt(2/N))
图像增强采用仿射变换。

细胞应用实例:

《U-Net 网络结构理解》

存在的问题:
1. 输入图像和输出图像大小并不一致。 由于采用nopadding的卷积层,每次卷积图像都会小一圈,所以downsample和upsample所还原的像素并不一致。(一般会采用加上padding方式来使图像size不变)
2. TBC

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注