『行远见大』图像超分效果对比,以ESRGAN、LESRCNN、DRN模型为例
本项目选择的超分模型是 ESRGAN、LESRCNN、DRN,在迭代50000轮后,通过“训练时长”、“PSNR”、“SSIM”三个指标以及生成的图像清晰度来进行三者的数值与效果对比。

『行远见大』图像超分效果对比,以 ESRGAN、LESRCNN、DRN 模型为例
项目简介
本项目选择的超分模型是 ESRGAN、LESRCNN、DRN,在迭代50000轮后,通过“训练时长”、“PSNR”、“SSIM”三个指标以及生成的图像清晰度来进行三者的数值与效果对比。向开源致敬!
大家好,我是行远见大。欢迎你与我一同建设飞桨开源社区,知识分享是一种美德,让我们向开源致敬!
项目环境配置
In [ ]import paddleprint("本项目基于Paddle的版本号为:"+ paddle.__version__)登录后复制 本项目基于Paddle的版本号为:2.0.2登录后复制
安装PaddleGAN
PaddleGAN的安装目前支持Clone GitHub和Gitee两种方式:
In [ ]# 安装ppgan# 当前目录在: /home/aistudio/, 这个目录也是左边文件和文件夹所在的目录# 克隆最新的PaddleGAN仓库到当前目录# !git clone https://github.com/PaddlePaddle/PaddleGAN.git# 如果从github下载慢可以从gitee clone:!git clone https://gitee.com/paddlepaddle/PaddleGAN.git# 安装Paddle GAN%cd PaddleGAN/!pip install -v -e .登录后复制
数据准备
本项目使用处理好的超分数据集卡通画超分数据集。
In [ ]# 回到/home/aistudio/下%cd /home/aistudio# 解压数据!unzip -q data/data80790/animeSR.zip -d data/# 将解压后的数据链接到` /home/aistudio/PaddleGAN/data `目录下!mv data/animeSR PaddleGAN/data/登录后复制
数据集的组成形式
PaddleGAN ├── data ├── animeSR ├── train ├── train_X4 ├── test └── test_X4登录后复制
训练数据集包括400张卡通画,其中train中是高分辨率图像,train_X4中是对应的4倍缩小的低分辨率图像。测试数据集包括20张卡通画,其中test中是高分辨率图像,test_X4中是对应的4倍缩小的低分辨率图像。
数据可视化
In [ ]import osimport cv2import numpy as npimport matplotlib.pyplot as plt# 训练数据统计train_names = os.listdir('PaddleGAN/data/animeSR/train')print(f'训练集数据量: {len(train_names)}')# 测试数据统计test_names = os.listdir('PaddleGAN/data/animeSR/test')print(f'测试集数据量: {len(test_names)}')# 训练数据可视化img = cv2.imread('PaddleGAN/data/animeSR/train/Anime_1.webp')img = img[:,:,::-1]plt.figure()plt.imshow(img)plt.show()登录后复制 训练集数据量: 400测试集数据量: 20登录后复制
登录后复制
超分模型介绍
本项目使用到的模型有:
增强型超分辨率生成对抗网络 ESRGAN :Enhanced Super-Resolution Generative Adversarial Networks
盲超分辨模型 LESRCNN :Lightweight Image Super-Resolution with Enhanced CNN
对偶回归网络 DRN :Dual Regression Networks
增强型超分辨率生成对抗网络 ESRGAN 模型结构
为了进一步提高SRGAN恢复图像质量,对生成器G的结构做了两个改进:
1)去除掉所有的BN层。
2)提出用残差密集块(RRDB)代替原始基础块,其结合了多层残差网络和密集连接。
去除BN层已经被证明有助于增强性能和减少计算复杂度在不同的PSNR-oriented任务,包括SR和去模糊。
BN层在训练期间使用批次的均值和方差对特征进行归一化,在测试期间使用整个训练数据集的估计均值和方差。
当训练和测试数据集的统计数据差异很大时,BN层往往引入不适的伪影,限制了泛化能力。
ESRGAN 模型示意图
盲超分辨模型 LESRCNN 模型结构
LESRCNN由信息提取和增强块(IEEB)、重构块(RB)和信息提纯块(IRB)组成。
IEEB: IEEB能提取层次的低频特征和逐步加强获得特征的作用来增强网络浅层对深层的记忆能力。为了移除冗余的低频特征,3x3和1x1卷积组成的异构结构应用到IEEB中。
RB: 因为SR任务目标是把低分辨率图像转换为高分辨率图像,所以RB能通过子像素卷积技术把低频特征转换为高频特征。
为了防止原始输入低频图像在转换过程中丢失重要信息,RB通过融合局部和全局特征来解决网络长期依赖问题。
LESRCNN 模型示意图
对偶回归网络 DRN 模型结构
一开始我以为这是图像分割课上学的 Dilated Residual Networks(扩张残留网络),但写着写着总感觉哪里不对。
看到这篇文章后才知道 DRN 应该是 Dual Regression Networks(对偶回归网络)。
DRN 效果示意图
原始映射网络(比如传统SISR,LR→HR)和逆映射网络(HR→LR):遵循下采样,再上采样的U形设计。每个包含一个log2(s)的块,s是尺度因子。这意味着,放大4倍,需要2个块,8倍就要3个块。与原始U形设计(就是改进)不同,我们使用B剩余通道注意块(RCAB)来构建每个基本块,以提高模型容量。在此之后我们添加额外的输出来生成相应比例的图像(即1×、2×、4×图像),并将所提出的损失应用于这些图像来训练模型。在输入网络之前,图片用Bicubic放大对应尺寸。
DRN 的逆映射网络,就是为了从HR中学到一个下采样模型,它比原始映射简单,用了2个卷积,一个ReLU激活函数。
DRN 模型示意图
修改选中模型的配置文件
所有模型的配置文件均在/home/aistudio/PaddleGAN/configs目录下。
找到你需要的模型的配置文件,修改模型参数,一般修改迭代次数,num_workers,batch_size以及数据集路径。
有能力的同学也可以尝试修改其他参数,或者基于现有模型进行二次开发,模型代码在/home/aistudio/PaddleGAN/ppgan/models目录下。
找到/home/aistudio/PaddleGAN/configs目录,修改配置文件_psnr_x4_div2k.yaml中的
参数total_iters设置为50000
参数dataset:train:num_workers设置为4
参数dataset:train:batch_size设置为16
参数dataset:train:gt_folder改为data/animeSR/train
参数dataset:train:lq_folder改为data/animeSR/train_X4
参数dataset:test:gt_folder改为data/animeSR/test
参数dataset:test:lq_folder改为data/animeSR/test_X4
参数periods: [… , … , … , …]periods的数字总和要等于total_iters的数值
增强型超分辨率生成对抗网络 ESRGAN
训练 ESRGAN_PSNR 模型
ESRGAN_PSNR 模型50000轮,用时约5.7小时
%cd /home/aistudio/PaddleGAN/!python -u tools/main.py --config-file configs/esrgan_psnr_x4_div2k.yaml登录后复制
测试 ESRGAN_PSNR 模型
运行/home/aistudio/pretrained_model/ESRGAN_PSNR_50000_weight.pdparams代码测试 ESRGAN 模型。
In [21]%cd /home/aistudio/PaddleGAN/!python tools/main.py --config-file configs/esrgan_psnr_x4_div2k.yaml --evaluate-only --load /home/aistudio/pretrained_model/esrgan_iter_50000_weight.pdparams登录后复制
[04/28 08:59:29] ppgan.engine.trainer INFO: Test iter: [0/20][04/28 08:59:56] ppgan.engine.trainer INFO: Test iter: [10/20][04/28 09:00:18] ppgan.engine.trainer INFO: Metric psnr: 25.4030[04/28 09:00:18] ppgan.engine.trainer INFO: Metric ssim: 0.7585登录后复制
盲超分辨模型 LESRCNN
训练 LESRCNN_PSNR 模型
LESRCNN_PSNR 模型50000轮,用时约2.3小时
%cd /home/aistudio/PaddleGAN/!python -u tools/main.py --config-file configs/lesrcnn_psnr_x4_div2k.yaml登录后复制
测试 LESRCNN_PSNR 模型
运行/home/aistudio/pretrained_model/LESRCNN_PSNR_50000_weight.pdparams代码测试 LESRCNN 模型。
In [ ]%cd /home/aistudio/PaddleGAN/!python tools/main.py --config-file configs/lesrcnn_psnr_x4_div2k.yaml --evaluate-only --load /home/aistudio/pretrained_model/lesrcnn_iter_50000_weight.pdparams登录后复制
[04/28 00:23:30] ppgan.engine.trainer INFO: Test iter: [0/20][04/28 00:24:19] ppgan.engine.trainer INFO: Metric psnr: 24.9379[04/28 00:24:19] ppgan.engine.trainer INFO: Metric ssim: 0.7457登录后复制
对偶回归网络 DRN
训练 DRN_PSNR 模型
DRN_PSNR 模型50000轮,用时约5.4小时
%cd /home/aistudio/PaddleGAN/!python -u tools/main.py --config-file configs/drn_psnr_x4_div2k.yaml登录后复制
测试 DRN_PSNR 模型
运行/home/aistudio/pretrained_model/DRN_PSNR_50000_weight.pdparams代码测试 DRN 模型。
In [ ]%cd /home/aistudio/PaddleGAN/!python tools/main.py --config-file configs/drn_psnr_x4_div2k.yaml --evaluate-only --load /home/aistudio/pretrained_model/drn_iter_50000_weight.pdparams登录后复制
[04/28 00:25:05] ppgan.engine.trainer INFO: Test iter: [0/20][04/28 00:25:44] ppgan.engine.trainer INFO: Test iter: [10/20][04/28 00:26:16] ppgan.engine.trainer INFO: Metric psnr: 25.4040[04/28 00:26:16] ppgan.engine.trainer INFO: Metric ssim: 0.7598登录后复制
ESRGAN、LESRCNN、DRN 图像超分效果对比
ESRGAN、LESRCNN、DRN 模型在迭代50000轮后,通过“训练时长”、“PSNR”、“SSIM”三个指标以及生成的图像清晰度来进行三者的数值与效果对比。
数值展示和模型下载
超分效果展示
(Fork运行后可以看到超分效果的对比)














游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
蚂蚁开源万亿参数思考模型Ring-2.5-1T详解
Ring-2 5-1T是什么 在当今大模型技术激烈竞争的赛道上,追求更长的上下文处理能力和更强大的深度推理性能已成为核心焦点。近日,蚂蚁集团旗下的inclusionAI团队重磅开源了Ring-2 5-1T模型,这是一个参数规模高达万亿级别的混合线性思考大语言模型。该模型基于先进的Ling 2 5架构
Teamily AI:原生智能通讯平台,开启人机协作新纪元
Teamily AI是什么 想象一下,你手机里的微信群聊,除了家人朋友同事,还多了一位特殊的“成员”——它从不缺席,能瞬间理解所有对话,还能帮你处理图片、视频甚至写报告。这不再是科幻场景,而是南加州大学团队带来的现实:全球首个AI原生即时通讯平台,Teamily AI。 它的核心思路很巧妙:不再把A
字节跳动Seedream 5.0 Lite AI图像生成模型详解
Seedream 5 0 Lite是什么 在AI图像生成技术飞速发展的今天,字节跳动Seed团队正式推出了其重磅升级产品——Seedream 5 0 Lite。作为Seedream 4 0的迭代版本,这款全新的AI绘画模型在文本理解、视觉推理与图像生成三大核心维度上实现了显著突破。 该模型采用了创新
WorkAny Bot云端AI助手基于OpenClaw框架详解
WorkAny Bot是什么 想象一下,有一个永不掉线的智能助手,它住在云端,随时准备响应你的召唤。这就是WorkAny Bot——一个基于OpenClaw AI框架构建的云端智能体。它的核心价值在于,将强大的AI能力变成一项即开即用的服务。 你可以把它理解为你私人的、功能齐全的AI工作站。它支持接
KiloClaw推出全托管云服务OpenClaw
KiloClaw是什么 想快速拥有一个能接入几十个聊天平台、还能执行系统命令的AI助手,但一听到要自己部署维护就头疼?这确实是很多开发者和团队面临的现实困境。OpenClaw这个开源项目功能强大,支持50多种平台,可真要自己从零搭建,光是配置环境可能就得折腾半小时以上,后续的更新、监控更是麻烦事。
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

