Página 1 de 1

UPSCALING com ESRGAN

Enviado: 28 Ago 2019, 03:00
por ceec
ARQUIVOS PARA BAIXAR

Link do Python 3
https://www.python.org/downloads/

Link do PyTorch >= 1.0 (CUDA version >= 7.5) (note que ">=" refere-se a versão igual ou superior) (se usar GPU nVidia use a versão "CUDA")
https://pytorch.org/

Link da pasta do ESRGAN
https://github.com/xinntao/ESRGAN/tree/ ... b75e1d0e87

Modelos pré-criados (básicos)
https://drive.google.com/drive/u/0/fold ... ccSSlqLecY
 
COMO INSTALAR PYTHON E PYTORCH

Baixe o Python 3 (32 ou 64) e instale. Apos vá até a pasta onde está localizada o "pip"
%UserProfile%\AppData\Local\Programs\Python\Python37\Scripts
Provavelmente será necessário atualizar o pip antes da instalação do PyTorch, para fazer isso basta abrir uma janela de comando na pasta acima (apertando shift e o botão direito do mouse "abra a janela de comando aqui") colocar o seguinte comando:
pip install opencv-python
Abrir uma segunda janela de comando na pasta:
%UserProfile%\AppData\Local\Programs\Python\Python37
Colocar o seguinte comando:
python -m pip install --upgrade pip
Com o pip atualizado, acesse o site do PyTorch, selecione sua versão, no caso a minha é STABLE / WINDOWS / PIP (porque instalarei pelo pip) / PYTHON3.7 (ultima versão) / NONE (none porque não usarei cudas), logo abaixo haverá um comando, basta copiar e executar na primeira janela de comando que você abriu. Você verá que tudo foi instalado, se houver logs de erros há erros.
 
ESRGAN E MODELOS

Apos baixar a pasta "ESRGAN" e os modelos básicos, basta então colocar-los na pasta "models" dentro da pasta "ESRGAN", feito isso você ira substituir o código do arquivo test.py que veio na pasta, cole este novo código nele:

Código: Selecionar tudo

import sys
import os.path
import glob
import cv2
import numpy as np
import torch
import architecture as arch

model_path = sys.argv[1]  # models/RRDB_ESRGAN_x4.pth OR models/RRDB_PSNR_x4.pth
device = torch.device('cuda')  # if you want to run on CPU, change 'cuda' -> cpu
# device = torch.device('cpu')

test_img_folder = 'LR/*'

model = arch.RRDB_Net(3, 3, 64, 23, gc=32, upscale=4, norm_type=None, act_type='leakyrelu', \
                        mode='CNA', res_scale=1, upsample_mode='upconv')
model.load_state_dict(torch.load(model_path), strict=True)
model.eval()
for k, v in model.named_parameters():
    v.requires_grad = False
model = model.to(device)

print('Model path {:s}. \nTesting...'.format(model_path))

idx = 0
for path in glob.glob(test_img_folder):
    idx += 1
    base = os.path.splitext(os.path.basename(path))[0]
    print(idx, base)
    # read image
    img = cv2.imread(path, cv2.IMREAD_COLOR)
    img = img * 1.0 / 255
    img = torch.from_numpy(np.transpose(img[:, :, [2, 1, 0]], (2, 0, 1))).float()
    img_LR = img.unsqueeze(0)
    img_LR = img_LR.to(device)

    output = model(img_LR).data.squeeze().float().cpu().clamp_(0, 1).numpy()
    output = np.transpose(output[[2, 1, 0], :, :], (1, 2, 0))
    output = (output * 255.0).round()
    cv2.imwrite('results/{:s}_rlt.png'.format(base), output)
Agora basta editar 2 linhas, a primeira é a configuração do dispositivo:
device = torch.device('cuda')  # if you want to run on CPU, change 'cuda' -> cpu
Note que a configuração vem setada para CUDA, Se você tiver uma GPU nVidia ñ há necessidade de alterar, mas se você for usar sua CPU como dispositivo basta mudar para CPU "torch.device('cpu')", a segunda linha a ser vista sera a do tamanho de upscaling do modelo:
model = arch.RRDB_Net(3, 3, 64, 23, gc=32, upscale=4, norm_type=None, act_type='leakyrelu', \
Na guia "upscale=" está setado 4x, ou seja esse arquivo test.py poderá executar modelos que foram feitos para aumentar 4x, se você baixar modelos de tamanhos maiores/menores, basta copiar o arquivo test.py e mudar o tamanho para que ele consiga rodar o modelo, sendo assim cada tamanho de modelo terá um arquivo test.py, como os modelos básicos são em 4x, ñ haverá necessidade de editar.
 
EXECUTAR UPSCALING

Com os arquivos test.py configurados e os modelos na pasta, basta então colocar uma imagem na pasta "LR" e executar um comando via CMD, você pode simplesmente abrir uma janela de comando dentro da pasta ESRGAN onde estão contidos os arquivos py, e digitar o comando:
py test.py models/RRDB_PSNR_x4.pth
Note que o comando é muito simples, basta digitar "py" acompanhado do arquivo test.py (compatível com modelo) e o modelo, feito isso aparecerá informações das imagens que estão sendo upscaladas, quando o processo finalizar basta ir na pasta "results" e ver o resultado. Você também pode criar bats com esses comandos, bastando apenas colar em um bloco de notas, salvar como arquivo .bat, assim bastando apenas clicar no arquivo. (note que os bats tem de ficar dentro da pasta, ou com o caminho completo da pasta), Quanto mais modelos você baixar mais opções terá, abaixo deixarei o link do discord e do drive onde contem uma grande variedade.
 
ACERVO DE MODELOS
 
DISCORD

Note que qualquer correção/complemento a este "tutorial" é sempre bem vindo, criei o mesmo pela falta de conteúdo sobre, mas há muito mais coisas a serem explicadas, conto com a colaboração de todos.

Tem problemas ao executar upscale em texturas grandes? tente:
f190-tutoriais/t2822-esrgan-com-imageenhancingutility

Re: UPSCALING com ERSGAN

Enviado: 02 Set 2019, 04:48
por Crowdigger
Mano tem como você fazer upscale nessas texturas pra mim? Eu até tentei seguir o ensinamento aqui, mas meu note realmente não aguenta isso, deu até tela azul. (Eu mexo com PC's desde 2006, foi realmente ao tentar usar isso).

É um celeron 1.5ghz...

https://drive.google.com/open?id=1klsF0 ... IyPM1x8u2W

Re: UPSCALING com ERSGAN

Enviado: 02 Set 2019, 15:53
por ceec
Adicionado link do tutorial sobre ImageEnhancingUtility.

Re: UPSCALING com ESRGAN

Enviado: 08 Nov 2019, 04:26
por Ruben Viera
Aqui ta dando o error "ModuleNotFoundError: No module named 'cv2' "

Re: UPSCALING com ESRGAN

Enviado: 08 Nov 2019, 09:38
por MS
Ruben Viera escreveu:
08 Nov 2019, 04:26
Aqui ta dando o error "ModuleNotFoundError: No module named 'cv2' "
Você precisa instalar o OpenCV.

Re: UPSCALING com ESRGAN

Enviado: 04 Jun 2020, 01:10
por Vagalume
Crowdigger escreveu:
02 Set 2019, 04:48
Mano tem como você fazer upscale nessas texturas pra mim? Eu até tentei seguir o ensinamento aqui, mas meu note realmente não aguenta isso, deu até tela azul. (Eu mexo com PC's desde 2006, foi realmente ao tentar usar isso).

É um celeron 1.5ghz...

https://drive.google.com/open?id=1klsF0 ... IyPM1x8u2W
https://sharemods.com/roh5izsuwwwd/upscale.7z.html


Ruben Viera escreveu:
08 Nov 2019, 04:26
Aqui ta dando o error "ModuleNotFoundError: No module named 'cv2' "
Execute o CMD como administrador, cole esse código e aperte enter.

Código: Selecionar tudo

pip install opencv-python

Re: UPSCALING com ESRGAN

Enviado: 04 Jun 2020, 01:20
por Crowdigger
Isso ai tem tanto tempo que nem era mais necessário, mas vlw a intenção. 

Re: UPSCALING com ESRGAN

Enviado: 05 Jun 2020, 10:56
por MS
E o código que foi mandado está no link que eu mandei  :feel:

Re: UPSCALING com ESRGAN

Enviado: 26 Ago 2020, 10:36
por Sharknadon1
Cara, eu acho que este tutorial está desatualizado. A minha versão do Python é a 3.8.5
não sei se mudaram alguma coisa mais quando eu digito os comandos, ele dá um erro.
E Você poderia explicar melhor como fazer isso porque eu to me enrolando muito aqui.

Re: UPSCALING com ESRGAN

Enviado: 26 Ago 2020, 11:52
por ceec
Hamburg escreveu:
26 Ago 2020, 10:36
Cara, eu acho que este tutorial está desatualizado. A minha versão do Python é a 3.8.5
não sei se mudaram alguma coisa mais quando eu digito os comandos, ele dá um erro.
E Você poderia explicar melhor como fazer isso porque eu to me enrolando muito aqui.
O tutorial já tem 1 ano, mas os procedimentos ainda são os mesmos, se você seguir corretamente vai funcionar. O Python tem que ser a versão 3, mas não importa se for mais atualizada, ainda é a versão 3. Se der erro é porque você configurou algo errado. Mostre o erro.