EDSR — 增强型深度残差超分辨率网络
概述
EDSR(Enhanced Deep Super-Resolution Network) 是 NTIR2017 竞赛夺冠的超分辨率模型,通过去除传统 SR 网络中冗余的 Batch Normalization 层,显著提升模型性能和训练效率,是超分辨率领域的经典基准模型。
核心特性
| 特性 |
说明 |
| 模型类型 |
超分辨率(Super Resolution) |
| 放大倍数 |
×4(支持训练 ×2、×3、×4) |
| 参数量 |
~43.1 M(完整模型) |
| 骨干结构 |
32 个残差块 × 256 个特征通道 |
| 残差缩放 |
0.1(稳定训练) |
模型架构
graph LR
A["LR 低分辨率图"] --> B["Sub Mean 减均值"]
B --> C["Head: Conv 3→256"]
C --> D["Body: 32× ResBlock"]
D --> E["残差连接 +"]
E --> F["Tail: PixelShuffle ×4 上采样"]
F --> G["Add Mean 加均值"]
G --> H["SR 超分辨率结果"]
- Head — 3×3 卷积将 RGB 3 通道映射到 256 维特征空间
- Body — 32 个残差块(ResBlock)堆叠,每个包含两个 3×3 卷积 + ReLU,缩放因子 0.1
- Tail — 两次 PixelShuffle(×2 后 ×2 实现 ×4),最终卷积输出 3 通道
- Sub / Add Mean — 输入归一化与输出反归一化(RGB 均值偏移)
目标应用场景
- 图像放大 — 老照片修复、高清化处理
- 视频增强 — 低分辨率视频转为高清
- 医学影像 — MRI / CT 图像超分辨率
- 卫星遥感 — 遥感图像分辨率提升
参考来源
输入 / 输出规格
| 方向 |
数据类型 |
维度 |
说明 |
| 输入 |
UINT8 |
N × 3 × 100 × 100 |
RGB 图像,值域 [0, 255] |
| 输出 |
FP32 |
N × 3 × 400 × 400 |
超分图像,值域 [0, 255] |
后处理流程
flowchart TD
A["模型输出: FP32 张量"] --> B["Clamp 裁剪到 [0, 255]"]
B --> C["NCHW → HWC 格式转换"]
C --> D["四舍五入取整"]
D --> E["数据类型转换"]
E --> F["保存为 PNG / JPG"]
步骤说明
| 步骤 |
操作 |
说明 |
| 1 |
值域裁剪 |
将输出像素值裁剪到 [0, 255] 有效范围 |
| 2 |
格式转换 |
NCHW → HWC 排列,便于图像库处理 |
| 3 |
保存 |
OpenCV 保存为图像文件 |
执行与性能
运行方式
python edsr.py
性能指标
| 指标 |
数值 |
| 推理平台 |
边缘板卡(uint8) |
| 推理时间 |
~684.69 ms |
| 输出 FE 均值误差 |
0.0037816672 |
| 输出 FE 最大误差 |
0.22261843 |
输入 / 输出示例
输入图像(100*100)

图像对比(400*400)
| 图像插值放大 |
网络输出图像 |
 |
 |
结果图保存路径:../resource/edsr_x4/result.jpg