U-Net--学习记录

发布于:2025-06-01 ⋅ 阅读:(99) ⋅ 点赞:(0)

目录

1.网络结构

2.Loss计算

2.1 二分类交叉熵(Binary Cross Entropy Loss)

2.2 多分类交叉熵(Categorical Cross Entropy)

2.3 论文中的loss计算

3.论文细节

3.1  输入输出尺寸

3.2 训练细节

3.3 输出与目标(适用于分割)

 4. U-Net 的变体与应用场景


U-Net 是一种专为语义分割设计的卷积神经网络结构,能在少量标注数据下实现高精度的像素级预测。

1.网络结构

U-Net 的结构像一个 “U” 字,分为两部分:

部分

名称

作用

左侧

编码器(下采样)

提取图像的高层特征(逐步降低空间分辨率)

右侧

解码器(上采样)

恢复空间信息、逐步重建像素级输出

横向连接

skip connection

编码器浅层特征直接传给解码器,对应相同分辨率,提升定位能力

编码器模块(下采样):

  • 每层包含:Conv → ReLU → Conv → ReLU → MaxPooling
  • 通道数逐层翻倍

解码器模块(上采样):

  • 每层包含:Up-conv (反卷积) → concat(来自 encoder 的跳跃连接)→ Conv → ReLU → Conv → ReLU

2.Loss计算

2.1 二分类交叉熵(Binary Cross Entropy Loss)

适用于前景 / 背景(2类),模型最后一层输出一个通道(每个像素为前景概率),GT 为 0 或 1:

其中:

  • x:预测的 logit(未经过 sigmoid)

  • y:GT 标签(0 或 1)

  • σ(x):sigmoid 激活输出概率

2.2 多分类交叉熵(Categorical Cross Entropy)

适用于多类(如背景 + N 个对象类型),最后一层输出 C 个通道(每通道一个类别概率),GT 为 0~C-1 的整数。

其中:

  • x:预测的 logit(未经过 softmax)

  • y:GT 标签,值为类别索引

  • 自动使用 softmax + log 合并为 log_softmax(更稳定)

2.3 论文中的loss计算

论文中的loss计算是加权像素级的多分类交叉熵损失函数

  • x\epsilon \Omega:图像中所有像素位置

  • l(x):第 x个像素的真实类别标签 lable

  • p{_{c}}(x)_{}:第 x 个像素预测为类别 c 的概率

  • w(x):每个像素的权重(用于解决类不平衡和靠近边界的像素加强)

对每个像素,根据其真实类别l(x),从模型输出中取对应类别的概率  p_l(x),取对数并乘以权重w(x)

U-Net 为了解决 细胞边界不清晰 + 类不平衡 的问题,使用了一个特殊的权重:

其中:

  • w_c(x):用于平衡前景与背景类别频率(类似 class weight)

  • w_0​:控制边界权重的最大值,实验中取 10

  • d_1(x),d_2(x):表示像素点 x 到最近两个目标的边界的距离(例如两个细胞)

  • σ:控制边界范围的宽度,实验中约为 5 像素

3.论文细节

3.1  输入输出尺寸

| 输入图像 | 原始论文用的是 572×572 |

| 输出图像 | 中心裁剪后为 388×388 |

| 原因 | 论文使用的是无 padding 的卷积,导致边缘丢失,需裁剪中心区域 |

| 现代实现 | 大多采用 same padding,输入输出大小一致,计算方便 |

3.2 训练细节

项目

说明

Loss 函数

加权交叉熵(权重图 w(x) 考虑边界和类平衡)

权重图计算

使用两个细胞边界的距离 + 类平衡项

优化器

SGD with momentum=0.99

数据增强

强烈依赖 elastic deformation(弹性形变)+ 平移、旋转、灰度扰动

dropout

放在最底层(编码器最深处)增强鲁棒性

3.3 输出与目标(适用于分割)

  • 输出 Tensor:形状 [N, C, H, W],C 为类别数(2 表示前景和背景)
  • 目标 GT:形状 [N, H, W],每个像素是类别编号(整数)
  • Loss 计算:常用 nn.CrossEntropyLoss(内部会 softmax + log + NLL)

 4. U-Net 的变体与应用场景

名称

特点

U-Net++

多级跳跃连接、密集跳连,更强特征融合

Attention U-Net

引入注意力模块,自动选择重要区域

3D U-Net

用于 3D 医学图像(MRI、CT)

ResUNet

替换 Conv 块为 ResNet 块,更深更稳

  • 医学图像分割(肿瘤、细胞、器官等)
  • 卫星图像分割(建筑物、水体)
  • 道路/车道线分割
  • 农业图像分析(植物、病斑检测)


网站公告

今日签到

点亮在社区的每一天
去签到