热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基于飞桨复现RealESRGAN_副本

转载自AIStudio标题项目链接https:aistudio.baidu.comaistudioprojectdetail3156903Real-ESRGAN-PaddleP

转载自AI Studio


标题项目链接https://aistudio.baidu.com/aistudio/projectdetail/3156903


Real-ESRGAN-PaddlePaddle

本项目基于深度学习框架PaddlePaddle对Real-ESRGAN网络(原论文)进行复现。

简介

如下图所示,Real-ESRGAN网络属于生成对抗网络,包括基于ESRGAN的生成器和基于U-Net的判别器,可对真实世界的复杂图像进行超分辨率重建。

生成器
real-esrgan生成器

判别器
real-esrgan判别器

训练数据

本项目所用的数据集为DF2KDF2K_multiscale,它们是通过DIV2K和Flickr2K生成的,其中,DF2K包含3450张高分辨率图片,DF2K_multiscale包含13800张不同尺度下的低分辨率图片。本项目已包含该数据集,在data目录下,需要先解压:

!ls /home/aistudio/data
!unzip -qo /home/aistudio/data/data119372/DF2K_HR.zip -d /home/aistudio/data/
!unzip -qo /home/aistudio/data/data119372/DF2K_multiscale.zip -d /home/aistudio/data/
!ls /home/aistudio/dat

数据集放在了aistudio,可下载使用。

复现效果

低分辨率图片

image1_before

经过Real-ESRGAN重建的结果

image1_after

开始使用

训练

导入初始化权重ESRGAN_SRx4_DF2KOST_official-ff704c30.pdparams,设置参数进行训练。

python train.py

测试

python inference_realesrgan.py

代码结构

├─data 数据准备
├─datasets
├─experiments 实验预训练模型及保存的训练模型
├─inputs 测试的低分辨率图片
├─loss 损失函数
├─models 模型
├─options 参数设置
├─results 测试结果
├─utils
│ inference_realesrgan.py 测试代码
│ train.py 训练代码
│ train1.ipynb Notebook训练和测试代码

复现心得

本项目是我们的第一个PaddlePaddle项目,也是我们做个第一个超分辨项目。Real-ESRGAN的核心主要在于训练数据集的构建,通过模糊、加噪、尺寸缩小、压缩等多种退化方式的随机组合模拟真实场景的图像退化情况,进而提高模型在真实场景下的泛化性。项目整体难度不高,主要难点可能在于原文代码基于pytorch的工具包BasicSR,我们对工具包中相关文件进行了PaddlePaddle的转写和简化。在复现实验中,我们感受到数据集规模和数据扩增对网络性能的影响还是很大的。这个项目对我们的代码写作水平的提高很有帮助,同时我们也对PaddlePaddle这个新的深度学习框架有了一定的了解。

关于作者

本项目的作者是来自中国地质大学(武汉)的两位小可爱,起名叫勇敢土豆不怕困难!好听吧哈哈哈。

参考repo

在此非常感谢论文作者Xintao贡献的Real-ESRGAN的Pytorch代码,提高了本repo复现论文的效率。

请点击此处查看本环境基本用法.

Please click here for more detailed instructions.


推荐阅读
  • 2019年斯坦福大学CS224n课程笔记:深度学习在自然语言处理中的应用——Word2Vec与GloVe模型解析
    本文详细解析了2019年斯坦福大学CS224n课程中关于深度学习在自然语言处理(NLP)领域的应用,重点探讨了Word2Vec和GloVe两种词嵌入模型的原理与实现方法。通过具体案例分析,深入阐述了这两种模型在提升NLP任务性能方面的优势与应用场景。 ... [详细]
  • 表面缺陷检测数据集综述及GitHub开源项目推荐
    本文综述了表面缺陷检测领域的数据集,并推荐了多个GitHub上的开源项目。通过对现有文献和数据集的系统整理,为研究人员提供了全面的资源参考,有助于推动该领域的发展和技术进步。 ... [详细]
  • 在Python 3环境中,当无法连接互联网时,可以通过下载离线模块包来实现模块的安装。具体步骤包括:首先从PyPI网站下载所需的模块包,然后将其传输到目标环境,并使用`pip install`命令进行本地安装。此方法不仅适用于单个模块,还支持依赖项的批量安装,确保开发环境的完整性和一致性。 ... [详细]
  • 在第七天的深度学习课程中,我们将重点探讨DGL框架的高级应用,特别是在官方文档指导下进行数据集的下载与预处理。通过详细的步骤说明和实用技巧,帮助读者高效地构建和优化图神经网络的数据管道。此外,我们还将介绍如何利用DGL提供的模块化工具,实现数据的快速加载和预处理,以提升模型训练的效率和准确性。 ... [详细]
  • DNNBrain:北师大团队出品,国内首款用于映射深层神经网络到大脑的统一工具箱...
    导读深度神经网络(DNN)通过端到端的深度学习策略在许多具有挑战性的任务上达到了人类水平的性能。深度学习产生了具有多层抽象层次的数据表示;然而,它没有明确地提供任何关 ... [详细]
  • mapreduce数据去重的实现方法
    本文介绍了利用mapreduce实现数据去重的方法,同时还介绍了人工智能AI领域中常用的框架和工具,包括Keras、PyTorch、MXNet、TensorFlow和PaddlePaddle,并提供了深度学习实战的代码下载链接。 ... [详细]
  • 【论文】ICLR 2020 九篇满分论文!!!
    点击上方,选择星标或置顶,每天给你送干货!阅读大概需要11分钟跟随小博主,每天进步一丢丢来自:深度学习技术前沿 ... [详细]
  • Jupyter 使用Anaconda 虚拟环境内核
    Anaconda虚拟环境中使用JupyterNotebook安装好Anaconda之后,进入AnacondaPrompt,创建虚拟环境, ... [详细]
  • 词表|句子_自然语言处理(NLP)基于序列到序列的中英机器翻译
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了自然语言处理(NLP)基于序列到序列的中-英机器翻译相关的知识,希望对你有一定的参考价值。【自然语言处理&#x ... [详细]
  • 获取贵州省毕节市高分辨率谷歌卫星影像图
    毕节市,作为贵州省西北部的重要地级市,地处乌蒙山脉核心区域,是连接四川、云南和贵州三省的关键节点。本研究旨在获取该地区的高分辨率谷歌卫星影像图,以全面展示其独特的地理特征和城市布局。通过这些高清影像,研究人员能够更深入地分析毕节市的自然环境、城市规划及发展状况。 ... [详细]
  • 深入解析 C 语言与 C++ 之间的差异及关联
    深入解析 C 语言与 C++ 之间的差异及关联 ... [详细]
  • 在HTML文档中,图像和链接标签的合理应用与优化对于提升网页的用户体验至关重要。本文详细探讨了如何通过正确的语法和属性设置,实现图像和链接的高效展示和功能增强。同时,文章还介绍了常见的优化技巧,如使用alt属性提高图像的可访问性,以及通过rel属性增强链接的安全性和语义性。这些方法不仅有助于搜索引擎优化,还能显著改善用户的浏览体验。 ... [详细]
  • 本文探讨了将PEBuilder转换为DIBooter.sh的方法,重点介绍了如何将DI工具集成到启动层,实现离线镜像引导安装。通过使用DD命令替代传统的grub-install工具,实现了GRUB的离线安装。此外,还详细解析了bootice工具的工作原理及其在该过程中的应用,确保系统在无网络环境下也能顺利引导和安装。 ... [详细]
  • 以赛促学,飞桨助力大学生智能车竞赛升级!
    点击左上方蓝字关注我们第十六届智能汽车竞赛-百度人工智能创意赛道已经开启!比赛虽好,但同学们苦核心开发硬件久矣!百度飞桨作为大赛的赞助商之 ... [详细]
  • 百度AI的2020
    百度AI的2020-世界的2020,是充满不确定性的变局之年;中国的2020,是团结一心、共克时艰、于变局中开新局的希望之年;百度AI的2020,是坚定信念,拥抱变化,践行“科技为 ... [详细]
author-avatar
捕鱼达人2702938971
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有