ไม่สามารถนำเข้า PILLOW_VERSION จาก PIL


15

ขณะนำเข้า Python (Anaconda) ให้ข้อผิดพลาดดังต่อไปนี้:

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

ฉันลองลบpillowแล้วconda installแต่ข้อผิดพลาดยังคงอยู่ กรุณาช่วย


1
ใช้ PIL .__ version__ แทน
abhilb

@abhilb ฉันกำลังนำเข้า torchvision ซึ่งกำลังเรียก PILLOW_VERSION
Naveed Unjum

1
ตกลง. จากนั้นอาจตรวจสอบรุ่นของ PIL ที่คุณมีและรุ่นที่จำเป็นสำหรับการมองเห็น อาจมีความไม่ตรงกัน PILLOW_VERSION เลิกใช้แล้วใน PIL รุ่นล่าสุด
abhilb

คุณอาจจะต้องปรับลดรุ่นของหมอน
abhilb

หรืออัพเกรด Torchvision
ฮูโก้

คำตอบ:


15

ลบหมอน 7.0.0 แล้วPILLOW_VERSIONคุณควรใช้__version__รหัสของคุณเองแทน


แก้ไข (2020-01-16):

ถ้าใช้ torchvision นี้ได้รับการแก้ไขในv0.5.0 เพื่อแก้ไข:

  1. จำเป็นต้อง torchvision>=0.5.0
  2. หากตรึงหมอนไว้ชั่วคราวให้ถอดหมุดออก

ข้อมูลเก่า (2020-01-09):

หากใช้ Torchvision จะมีการเปิดตัวสัปดาห์นี้ (สัปดาห์ที่ 2, 2020) เพื่อแก้ไข:

ตัวเลือกคือ:

  • รอการปล่อยคบเพลิงใหม่
  • ใช้เวอร์ชันหลักของ torchvision (เช่นpip install -U git+https://github.com/pytorch/vision)
  • ติดตั้ง torchvision จากทุกคืนซึ่งต้องใช้ pytorch จากเวอร์ชั่นทุกคืน
  • หรือติดตั้ง Pillow <7 (เช่นpip install "pillow<7")

9

ปรับลดรุ่นหมอนหากคุณไม่ต้องการคุณสมบัติล่าสุด

pip install pillow<7

หรือสำหรับอนาคอนด้า

conda install -c anaconda pillow<7

1
หรือpip install "pillow<7"ตาม 6.2.2 (และ 7.0.0) มีการแก้ไขความปลอดภัย: pillow.readthedocs.io/en/stable/releasenotes/6.2.2.html
Hugo

conda install -c anaconda pillow=6.1สำหรับผู้ใช้งูมันเป็น
Tengerye

6

ฉันได้แก้ไขโดยการแก้ไขfunctional.pyและ__init__.pyที่กล่าวถึงในข้อความข้อผิดพลาด ความผิดพลาด

แก้ไขfrom PIL import Image, ImageOps, ImageEnhance, PILLOW_VERSIONเป็นfrom PIL import Image, ImageOps, ImageEnhance, __version__ในfunctional.pyหมายเลขบรรทัดที่ประมาณ 5

แก้ไขPILLOW_VERSION = __version__ = _version.__version__เป็น__version__ = __version__ = _version.__version__ใน__init__.pyบรรทัดที่ประมาณ 22

เส้นทางไฟล์:

  • 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


สิ่งนี้ใช้ได้กับฉัน ... ฉันเพิ่งถูกแทนที่PILLOW_VERSION ด้วย__version__ ในfunctional.pyเมื่อ: Your_File_Path\Lib\site-packages\torchvision\transforms\functional.pyแล้วไม่มีข้อผิดพลาด
loveR

สิ่งนี้ใช้ได้สำหรับฉัน ไม่มีอะไรทำงาน หนึ่งในฝันร้าย 2 ชั่วโมงนั้น
โมนิกา Heddneck

5
  • กำลังใช้ torchvision == 0.4.2 และสิ่งนี้แก้ปัญหาของฉันได้
  • ลดระดับหมอนของคุณเป็น 6.1 และรีสตาร์ทโน้ตบุ๊ค Jupyter ของคุณ

    ใช้สิ่งนี้

    conda install pillow=6.1


0

อัปเดตสำหรับทุกคนที่มาถึงคำถามนี้ทันที:

อัปเกรดหมอนเป็นรุ่นล่าสุด ปัญหาได้รับการแก้ไขแล้ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.