TencentARC / GFPGAN

GFPGAN aims at developing Practical Algorithms for Real-world Face Restoration.
Other
35.62k stars 5.9k forks source link

Missing Modules, Colab doesn't work anymore #556

Open ma5termich opened 3 months ago

ma5termich commented 3 months ago

Until a few months ago the Google Colab worked perfectly, now I find this error when I execute the block of code relating to Inference:

Traceback (most recent call last): File "/content/GFPGAN/inference_gfpgan.py", line 7, in from basicsr.utils import imwrite File "/usr/local/lib/python3.10/dist-packages/basicsr/init.py", line 4, in from .data import * File "/usr/local/lib/python3.10/dist-packages/basicsr/data/init.py", line 22, in _dataset_modules = [importlib.import_module(f'basicsr.data.{file_name}') for file_name in dataset_filenames] File "/usr/local/lib/python3.10/dist-packages/basicsr/data/init.py", line 22, in _dataset_modules = [importlib.import_module(f'basicsr.data.{file_name}') for file_name in dataset_filenames] File "/usr/lib/python3.10/importlib/init.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "/usr/local/lib/python3.10/dist-packages/basicsr/data/realesrgan_dataset.py", line 11, in from basicsr.data.degradations import circular_lowpass_kernel, random_mixed_kernels File "/usr/local/lib/python3.10/dist-packages/basicsr/data/degradations.py", line 8, in from torchvision.transforms.functional_tensor import rgb_to_grayscale ModuleNotFoundError: No module named 'torchvision.transforms.functional_tensor' ls: cannot access 'results/cmp': No such file or directory

SaintFresh commented 3 months ago

https://github.com/XPixelGroup/BasicSR/pull/689#issue-2368501469

huangzekai commented 3 months ago

I have the same problem, does anyone know how to solve it?

G-force78 commented 3 months ago

Its a persistent annoying problem

Open /usr/local/lib/python3.10/dist-packages/basicsr/data/degradations.py and on line 8, simply change:

from torchvision.transforms.functional_tensor import rgb_to_grayscale

to:

from torchvision.transforms.functional import rgb_to_grayscale

Epsilon-BUAP commented 1 month ago

After u upload ur image, create a new code with mine:

import fileinput import sys

def update_degradations_import(file_path):

Línea original que queremos reemplazar

original_line = 'from torchvision.transforms.functional_tensor import rgb_to_grayscale\n'
# Línea nueva que queremos escribir
new_line = 'from torchvision.transforms.functional import rgb_to_grayscale\n'

# Abrir el archivo en modo de lectura y escritura
with fileinput.FileInput(file_path, inplace=True, backup='.bak') as file:
    for line in file:
        # Reemplazar la línea original por la nueva línea
        if line == original_line:
            sys.stdout.write(new_line)
        else:
            sys.stdout.write(line)

Ruta al archivo de degradaciones que queremos modificar

file_path = '/usr/local/lib/python3.10/dist-packages/basicsr/data/degradations.py'

Llamar a la función para actualizar la importación

update_degradations_import(file_path)

print(f"Updated import in {file_path}")

Epsilon-BUAP commented 1 month ago

image

SaintFresh commented 1 month ago

https://gist.github.com/SaintFresh/ada893f9c4d0d9e6200c632598e8cdf9

Feel free to save a copy.