Nie można zaimportować PILLOW_VERSION z PIL


15

Podczas importowania Python (anakonda) podaje następujący błąd:

ImportError: cannot import name 'PILLOW_VERSION' from 'PIL'

Próbowałem usunięcie pillow, a następnie conda installale powtarzał błędów. Proszę pomóż


1
Zamiast tego użyj PIL .__ wersja__.
abhilb

@abhilb Importuję Torchvision, który nazywa się PILLOW_VERSION
Naveed Unjum

1
Ok. następnie prawdopodobnie sprawdź wersję PIL, którą posiadasz i wersję potrzebną do monitorowania pochodni. Może wystąpić niedopasowanie. Wersja PILLOW_VERSION jest przestarzała w najnowszej wersji PIL
abhilb

prawdopodobnie będziesz musiał obniżyć wersję poduszki
abhilb

Lub zaktualizuj Torchvision.
Hugo

Odpowiedzi:


15

Poduszka 7.0.0 została usunięta PILLOW_VERSION, __version__zamiast tego należy użyć własnego kodu.


Edytuj (2020-01-16):

Jeśli korzystasz z Torchvision, zostało to naprawione w wersji 0.5.0 . Naprawić:

  1. Wymagać torchvision>=0.5.0
  2. Jeśli poduszka została tymczasowo przypięta, usuń zawleczkę

Stare informacje (2020-01-09):

Jeśli używasz Torchvision, w tym tygodniu planowane jest wydanie (2. tydzień 2020), aby to naprawić:

Dostępne są następujące opcje:

  • poczekaj na nową wersję Torchvision
  • użyj głównej wersji Torchvision (np. pip install -U git+https://github.com/pytorch/vision)
  • zainstaluj torchvision z nocnej, co również wymaga pytorch z nocnej wersji
  • lub zainstaluj Pillow <7 (np. pip install "pillow<7")


6

Rozwiązałem problem, modyfikując functional.pyi __init__.pyktóre są wymienione w komunikacie o błędzie. Błąd .

Zmień from PIL import Image, ImageOps, ImageEnhance, PILLOW_VERSIONna mniej więcej from PIL import Image, ImageOps, ImageEnhance, __version__w functional.pylinii 5.

Zmień PILLOW_VERSION = __version__ = _version.__version__na __version__ = __version__ = _version.__version__in __init__.py, około linii nr 22.

Ścieżka pliku:

  • functional.py:C:\Users\UserName\AppData\Local\Programs\Python\Python37\Lib\site-packages\torchvision\transforms\functional.py

  • __init__.py:C:\Users\UserName\AppData\Local\Programs\Python\Python37\Lib\site-packages\PIL\__init__.py


ten pracował dla mnie ... Po prostu zastąpione PILLOW_VERSION przez __version__ w functional.pyna: Your_File_Path\Lib\site-packages\torchvision\transforms\functional.pya potem nie było żadnych błędów.
loveR

to zadziałało dla mnie. Nic innego nie działało. Jeden z tych 2 godzinnych koszmarów.
Monica Heddneck

5
  • Obecnie używam torchvision == 0.4.2 i to rozwiązało mój problem.
  • Zmień poduszkę na wersję 6.1 i uruchom ponownie notebook Jupyter.

    Użyj tego

    conda install pillow=6.1

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.