ESRGAN
ESRGAN - улучшенный SRGAN.
Как я понял такие штуки создают для конкурсов, в университетах. Эта сеть одна из таких. Она показывает высокий уровень качества обработки изображений. Данную сеть себе под крыло взяла MMSR, входит в модуль MMEditing.
Почему описываю это в отдельной странице? Потому что MMEditing универсальная заранее обученная сеть. А ESRGAN позволяет использовать самостоятельно обученные сети.
Работать с данной сетью очень просто.
Установка.
nvidia cuda
Если это делается на реальной машине с linux, то нужно установить драйвера nvidia и cuda (В разработке)
Если это WSL2, то идем по инструкции Установка WSL 2 и Настройка CUDA Toolkit (Пока это на странице MMEditing, позже перенесу в отдельную страницу)
Python 3
Смотрим версию:
python3 --version
Если Python установлен то покажет версию, если нет то нужно установить.
На данный момент Python есть по умолчанию в ubuntu, если сделать:
sudo apt update sudo apt -y upgrade
pip3
Менеджер пакетов для Python 3
sudo apt install -y python3-pip
PyTorch
Выбираем нужную нам конфигурацию
stable
linux
pip
python
cuda 10.2
pip install torch torchvision
ESRGAN
Переходим в tmp, я всегда устанавливаю в эту папку, можно куда угодно например в home/user, в общем в меру доступности для пользователя:
cd /tmp
Теперь просто выкачиваем с github нужный нам репозиторий, если так это можно назвать:
git clone https://github.com/xinntao/ESRGAN.git
Загрузится последняя версия, в папку в которой находимся, под именем "гита" ESRGAN:
cd /tmp/ESRGAN
В общем то все, устанавливать ничего не нужно пользуйся на здоровье.
pip install numpy opencv-python
Грузим обученную сеть с диска автора RRDB_ESRGAN_x4.pth
Перемещаем этот файл в папку /tmp/ESRGANmodels/
Правим конфиг test.py
nano /tmp/ESRGAN/test.py
model_path = 'путь к обученной модели'
model_path = 'models/RRDB_ESRGAN_x4.pth'
test_img_folder = 'путь откуда взять изображения'
test_img_folder = '/mnt/e/test/006/IN/*'
cv2.imwrite('путь для файлов после обработки{:s}_rlt.png'.format(base), output)
cv2.imwrite('/mnt/e/test/006/OUT/{:s}_rlt.png'.format(base), output)
Готово! Укладываем нужные нам картинки в папку указанную ранее, и вводим
python test.py
идет процесс, после него появляются файлы