Real-ESRGAN
论文
Real-ESRGAN: Training Real-World Blind Super-Resolution with Pure Synthetic Data
模型结构
生成网络: 采用ESRGAN的生成网络,对于x4倍的超分辨,网络完全按照ESRGAN的生成器执行;对x2和x1倍的超分辨,网络先进行pixel-unshuffle(pixel-shuffl的反操作,pixel-shuffle可理解为通过压缩图像通道而对图像尺寸进行放大),以降低图像分辨率为前提,对图像通道数进行扩充,然后将处理后的图像输入网络进行超分辨重建。
对抗网络: 由于使用的复杂的构建数据集的方式,所以需要使用更先进的判别器对生成图像进行判别。使用U-Net判别器可以在像素角度,对单个生成的像素进行真假判断,这能够在保证生成图像整体真实的情况下,注重生成图像细节。
算法原理
通过使用更实用的退化过程合成训练对,扩展强大的ESRGAN以恢复一般的真实世界LR图像。
环境配置
-v 路径、docker_name和imageID根据实际情况修改
Docker(方法一)
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-ubuntu20.04-dtk24.04.1-py3.8
docker run -it -v /path/your_code_data/:/path/your_code_data/ -v /opt/hyhal/:/opt/hyhal/:ro --shm-size=32G --privileged=true --device=/dev/kfd --device=/dev/dri/ --group-add video --name docker_name imageID bash
cd /your_code_path/real-esrgan_pytorch
pip install -r requirements.txt
python setup.py develop
Dockerfile(方法二)
cd ./docker
docker build --no-cache -t real_esrgan:latest .
docker run -it -v /path/your_code_data/:/path/your_code_data/ -v /opt/hyhal/:/opt/hyhal/:ro --shm-size=32G --privileged=true --device=/dev/kfd --device=/dev/dri/ --group-add video --name docker_name imageID bash
cd /your_code_path/real-esrgan_pytorch
pip install -r requirements.txt
python setup.py develop
Anaconda(方法三)
1、关于本项目DCU显卡所需的特殊深度学习库可从光合开发者社区下载安装: https://developer.hpccube.com/tool/
DTK软件栈:dtk24.04.1
python:python3.8
torch:2.1.0
torchvision:0.16.0
Tips:以上dtk软件栈、python、torch等DCU相关工具版本需要严格一一对应
2、其他非特殊库直接按照下面步骤进行安装
pip install -r requirements