Skip to content

import error: cannot import name 'PILLOW_VERSION' from 'PIL' #1142

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
quancs opened this issue Jul 13, 2022 · 1 comment
Closed

import error: cannot import name 'PILLOW_VERSION' from 'PIL' #1142

quancs opened this issue Jul 13, 2022 · 1 comment
Labels
bug / fix Something isn't working help wanted Extra attention is needed v0.9.x

Comments

@quancs
Copy link
Member

quancs commented Jul 13, 2022

🐛 Bug

When import torchmetrics in python, it reports the error.

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchmetrics\__init__.py", line 53, in <module>
    from torchmetrics.image import (  # noqa: E402
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchmetrics\image\__init__.py", line 31, in <module>
    from torchmetrics.image.lpip import LearnedPerceptualImagePatchSimilarity  # noqa: F401
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchmetrics\image\lpip.py", line 25, in <module>
    from lpips import LPIPS as _LPIPS
  File "D:\ProgramData\Miniconda3\lib\site-packages\lpips\__init__.py", line 11, in <module>
    from lpips.lpips import *
  File "D:\ProgramData\Miniconda3\lib\site-packages\lpips\lpips.py", line 9, in <module>
    from . import pretrained_networks as pn
  File "D:\ProgramData\Miniconda3\lib\site-packages\lpips\pretrained_networks.py", line 3, in <module>
    from torchvision import models as tv
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchvision\__init__.py", line 2, in <module>
    from torchvision import datasets
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchvision\datasets\__init__.py", line 9, in <module>
    from .fakedata import FakeData
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchvision\datasets\fakedata.py", line 3, in <module>
    from .. import transforms
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchvision\transforms\__init__.py", line 1, in <module>
    from .transforms import *
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchvision\transforms\transforms.py", line 17, in <module>
    from . import functional as F
  File "D:\ProgramData\Miniconda3\lib\site-packages\torchvision\transforms\functional.py", line 5, in <module>
    from PIL import Image, ImageOps, ImageEnhance, PILLOW_VERSION
ImportError: cannot import name 'PILLOW_VERSION' from 'PIL' (D:\ProgramData\Miniconda3\lib\site-packages\PIL\__init__.py)

To Reproduce

Install torchmetrics[audio]:

pip install torchmetrics[audio]

Import it in python:

import torchmetrics

Code sample

Expected behavior

Environment

  • TorchMetrics version (and how you installed TM, e.g. conda, pip, build from source): 0.9.2
  • Python & PyTorch Version (e.g., 1.0): Python 3.8.5, PyTorch 1.10.0
  • Any other relevant information such as OS (e.g., Linux): Win 10

Additional context

@quancs quancs added bug / fix Something isn't working help wanted Extra attention is needed labels Jul 13, 2022
@SkafteNicki
Copy link
Member

Actual problem comes from torchvision and not torchmetrics:
pytorch/vision#1718
Either:

  • Update torchvision to a newer version where it should have been fixed
  • Install a version of pillow that is compatible: conda install pillow=6.2.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug / fix Something isn't working help wanted Extra attention is needed v0.9.x
Projects
None yet
Development

No branches or pull requests

3 participants