单图超分辨率重建 · SRGAN 三尺度全链路复现与 SPAN 生成器替换产品系统

我要开发同款
木念2026年11月05日
3阅读

技术信息

语言技术
Python、Torch
系统类型
算法模型、Linux
行业分类
人工智能、机器深度学习

作品详情

行业场景

超分辨率是把低清图还原成高清图,工业侧的真实需求集中在三类:老照片与文档图像修复(划痕、噪点、压缩伪影联合处理)、监控与行车影像的低照度高压缩放大、遥感与医学影像的多尺度放大。这类客户关心的不是论文榜单上多 0.1 dB,而是三件事——模型能不能在客户机器上训得动、能不能训得完、结果能不能被别人复现。业内的普遍现状是:开源研究代码只能冒烟跑通,直接上生产会挂在数据管线、检查点管理和评测口径上。本项目以 SRGAN 为基线("保真 vs 感知"矛盾的起点工作),把一条只能冒烟的研究代码改造成可长跑、可续训、可复现评测的训练流水线,并把生成器替换为 SPAN 验证骨干升级的实际收益,为超分类项目的落地提供一套可复用的「改造—训练—评测」方法。

功能介绍

项目包含六个功能模块:
1. 数据管线:DIV2K 800 张 2K 原图预切为 480×480 图块(共 12,610 块),支持随机裁块与三尺度(×2/×3/×4)LR 生成,读取由解码整图改为读小块,单步迭代从 0.86s 降至 0.092s。
2. 生成器:SRResNet(16 个残差块 + PixelShuffle 上采样)与 SPAN(CVPRW'24 NTIRE 冠军方案,重参数化后推理仅 0.43M 参数)两套骨干,按放大尺度级联。
3. 三重损失与两阶段训练:L1 像素损失(保 PSNR)+ VGG19 感知损失(保结构)+ 对抗损失(保真实感);先以 L1 单独训练 G,再冻结数据与迭代预算叠加感知与对抗项微调,唯一变量是损失函数。
4. 断点续训与检查点管理:G/D 分离命名,按角色保留最新 2 个 epoch 与 best/last,磁盘占用从约 100GB 压到 2GB 以内,长跑可中断恢复。
5. 统一口径评测:独立评测脚本,Y 通道 + crop_border 4,五个测试集(Set5/Set14/B100/Urban100/DIV2K100)批量输出 PSNR/SSIM 与可视化对比图。
6. 交付物:6 份训练配置 + 一键串行脚本(失败即停、重跑续训)、6 个模型权重、12 页交付报告(8 表 5 图)。

项目实现

独立完成,4 天,RTX 3060 12G 单卡,含 13.7 小时无人值守训练,3 个放大倍率 × 2 个训练阶段共 6 个模型全部从零训完。
工程改造:定位并修复参考实现 7 处缺陷——数据管线重复解码(吞吐 9.3 倍提升)、数据集假设固定尺寸导致 ×3 未实现、DataLoader 拼 batch 因 NumPy 内存视图报错、检查点无上限累积会写满磁盘、G/D 共用检查点文件名导致续训失效、SSIM 参数 data_range 口径错误等。
结果:统一口径(Y 通道 + crop 4)下,×4 五数据集平均 PSNR 为 SRResNet 26.46 dB、SRGAN 25.82 dB(-0.64,对抗微调的感知代价),SSIM 同向变化;换用 SPAN 骨干后 ×4 平均 28.61 dB,相比 SRGAN +2.79 dB、相比 L1 生成器仍高 +2.15 dB,Urban100 提升最明显(+2.56 dB),说明瓶颈在骨干容量而非仅损失设计。
归因与边界:诊断出训练集自测仅 27.48 dB、与双三次插值(27.28 dB)接近,根因为训练预算为原论文 1/10 且 96×96 裁块使 ×4 输入仅 24×24、感受野远大于输入;组内对照口径一致、结论有效,但绝对值不与论文表格直接对比,这一点已在报告中标注。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论