UNet 是深度学习领域中一种经典的 编码器-解码器 结构,专为 图像分割 任务而生,以其独特的 U 形对称结构 和 跳跃连接 设计,成为医学图像分割、遥感分析、工业检测等领域的首选架构之一。
1
UNet 是什么?
UNet 是一种全卷积网络(FCN),通过“下采样-上采样”的对称路径和跳跃连接,实现对图像每个像素的精确分类(即语义分割)。
UNet 最早在 2015 年提出,用于生物医学图像分割(如细胞、器官等),因其结构形如 U 形 而得名,核心贡献在于: 用少量标注数据就能训练出高质量的分割模型 ,并且能够捕捉多尺度上下文信息,同时保留精细的空间细节。

2
UNet 的工作原理
UNet 的架构分为两个对称部分: 编码器(下采样路径) 和 解码器(上采样路径) ,中间通过 跳跃连接 相连。

1. 编码器(下采样路径)
作用 :提取图像的多尺度特征,同时逐步压缩空间分辨率,扩大感受野。
结构 :由若干卷积块组成,每个块通常包含 两个 3×3 卷积 + ReLU ,然后接一个 2×2 最大池化 进行下采样(步长为2)。
特点 :每下采样一次,特征图的通道数翻倍,空间尺寸减半。例如输入 224×224,经过一次池化后变成 112×112,通道数从 64 变为 128。
2. 解码器(上采样路径)
作用 :将编码器提取的抽象特征恢复回原始图像分辨率,并对每个像素进行分类。
结构 :每个解码器块包含一个 上采样操作 (通常使用转置卷积或双线性插值),将特征图尺寸翻倍,然后与编码器对应层的特征图进行 拼接 (concat),再经过两个 3×3 卷积 + ReLU。
特点 :上采样后通道数减半,拼接后通道数变为编码器对应层的两倍,再进行卷积降维。
3. 跳跃连接(Skip Connection)
核心设计 :将编码器某层的特征图 直接复制 并拼接到解码器对应层。
作用 :保留编码器提取的 精细空间信息 (如边缘、纹理),弥补上采样过程中丢失的细节。这对医学图像分割(如器官边界)至关重要。
4. 最终输出
解码器的最后一层通过一个 1×1 卷积 将特征图映射到目标类别数,输出每个像素的类别概率图。
3
UNet 的结构特点
特点 | 说明 | 优势 |
|---|---|---|
对称 U 形 | 编码器和解码器层数、结构对称 | 设计简洁,易于理解与实现 |
跳跃连接 | 将编码器特征与解码器特征直接融合 | 保留细节,防止信息丢失 |
多尺度特征 | 通过下采样获得不同尺度的上下文 | 既能定位大物体,又能细化边界 |
全卷积 | 无全连接层,可接受任意尺寸输入 | 适用于不同分辨率的图像 |
少量数据有效 | 结构中的强归纳偏置让它在小数据集上也能训练好 | 特别适合医学图像(标注成本高) |
4
应用场景
UNet 最初是为生物医学图像分割设计的,已扩展至多个领域:
领域 | 典型任务 | 示例 |
|---|---|---|
医学图像 | 器官分割、病变检测、细胞分割 | 肺部CT中分割肿瘤,视网膜图像中分割血管 |
遥感图像 | 土地覆盖分类、建筑物提取、道路检测 | 从卫星图中识别农田、建筑、水体 |
工业检测 | 缺陷分割、零件检测 | 在X光片中分割出铸件裂纹,在电路板上分割焊点 |
自动驾驶 | 车道线分割、可行驶区域分割 | 从车载摄像头画面中分割道路、车辆、行人 |
农业 | 作物分割、病虫害区域识别 | 从无人机图像中分割受病害的作物区域 |
视频/图像编辑 | 人像抠图、背景替换 | 从照片中分割人物主体 |
5
UNet vs 其他分割模型
模型 | 核心思想 | 优势 | 局限 |
|---|---|---|---|
FCN | 全卷积,将全连接层替换为卷积 | 首次实现端到端分割 | 缺乏跳跃连接,细节丢失严重 |
UNet | U形结构 + 跳跃连接 | 细节保留好,适合小数据集 | 参数量较大,推理速度稍慢 |
SegNet | 编码器-解码器,池化索引传递 | 内存占用小 | 精度略逊于UNet |
DeepLab | 空洞卷积 + 空间金字塔池化 | 多尺度能力强 | 计算量较大 |
TransUNet | 结合Transformer和UNet | 全局上下文建模 | 需要更多数据,计算量更大 |
Swin-Unet | 纯Transformer的UNet | 全局感受野 | 数据需求高,部署成本高 |