SRCNN图像超分辨率图像增强放大系统-python

项目描述 SRCNN 图像超分辨率系统
本项目是经典超分辨率算法 SRCNN的 PyTorch 复现与 Web 化改造。系统将上传的图片先做 Bicubic 降质退化,再由三层卷积神经网络在 YCbCr 色彩空间重建高频细节,输出更清晰的图像。项目在原作者命令行训练/推理脚本基础上,新增了 Flask Web 操作界面,实现浏览器内上传图片、选择倍率、在线超分并三方对比查看结果。

访问 http://127.0.0.1:5000

项目功能
Web 超分推理:浏览器拖拽或点击上传图片,一键完成超分辨率处理(入口 app.py,访问 http://127.0.0.1:5000 )
结果对比展示:原图(HR 参考)、Bicubic 退化图(模型实际输入)、SRCNN 重建图三图并排,附输出尺寸与 PSNR 指标(含 Bicubic 基线对照),支持结果图下载
倍率选择:提供 x4 模型(best.pth,真实照片实测优于 Bicubic 基线);x2 权重因过冲严重(振铃、色偏)已在界面禁用
命令行推理:python use.py –image 图片路径 –scale 4
模型训练:python train.py,基于 91 张图像裁剪的 33×33 图块(h5 数据集需自行下载),MSE 损失、Adam 优化、PSNR 评估,自动保存最优权重

运行环境
操作系统:Windows(跨平台代码,亦可 Linux)
Python 3.13(Anaconda);实测依赖版本:torch 2.13.0、numpy 2.1.3、Pillow 10.4.0、Flask 3.1.0、h5py 3.12.1
硬件:CPU 即可运行(模型仅约 5.7 万参数),有 CUDA GPU 时自动启用加速
启动方式:Web 界面执行 python app.py;命令行执行 python use.py

项目技术
语言:Python;前端为原生 HTML/CSS/JavaScript(fetch + FormData 异步上传,无前端框架)
深度学习框架:PyTorch;网络结构为三层卷积——9×9 特征提取(64 通道,ReLU)、1×1 非线性映射(32 通道,ReLU)、5×5 重建输出
图像算法:PIL Bicubic 缩放构造低质输入、RGB 与 YCbCr 色彩空间转换、MSE 损失、PSNR 定量评价
Web 后端:Flask,启动时预加载模型权重常驻内存,提供 /api/super-resolve 推理接口;上传与结果文件以 UUID 命名落盘于 static 目录,含文件格式、大小、倍率等参数校验与中文错误提示
数据处理:训练数据用 h5 格式存储图块,多线程 DataLoader 加载

以上系统源码经过技术整理与调试,确保能正常运行

提供最优质的资源集合

立即查看 了解详情