'AttributeError: module 'PIL.TiffTags' has no attribute 'LONG8'

I am trying to open an image with skimage.io.imread but I have the error in title. For example: skimage.io.imread('myimage.png')

My environment; skimage:

import skimage
print(skimage.__version__)
0.19.2

and PIL:

import PIL
PIL.__version__
8.0.1

This is the entire traceback:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-52-1b9f5663f4c8> in <module>
----> 1 skimage.io.imread('qrcode-caracciolo.png')

/usr/local/lib/python3.9/site-packages/skimage/io/_io.py in imread(fname, as_gray, plugin, **plugin_args)
     51 
     52     with file_or_url_context(fname) as fname:
---> 53         img = call_plugin('imread', fname, plugin=plugin, **plugin_args)
     54 
     55     if not hasattr(img, 'ndim'):

/usr/local/lib/python3.9/site-packages/skimage/io/manage_plugins.py in call_plugin(kind, *args, **kwargs)
    205                                (plugin, kind))
    206 
--> 207     return func(*args, **kwargs)
    208 
    209 

/usr/local/lib/python3.9/site-packages/skimage/io/_plugins/imageio_plugin.py in imread(*args, **kwargs)
      8 @wraps(imageio_imread)
      9 def imread(*args, **kwargs):
---> 10     return np.asarray(imageio_imread(*args, **kwargs))

/usr/local/lib/python3.9/site-packages/imageio/__init__.py in imread(uri, format, **kwargs)
     94     )
     95 
---> 96     return imread_v2(uri, format=format, **kwargs)
     97 
     98 

/usr/local/lib/python3.9/site-packages/imageio/v2.py in imread(uri, format, **kwargs)
    199     imopen_args["legacy_mode"] = True
    200 
--> 201     with imopen(uri, "ri", **imopen_args) as file:
    202         return file.read(index=0, **kwargs)
    203 

/usr/local/lib/python3.9/site-packages/imageio/core/imopen.py in imopen(uri, io_mode, plugin, format_hint, legacy_mode, **kwargs)
    212 
    213                 try:
--> 214                     plugin_instance = candidate_plugin(request, **kwargs)
    215                 except InitializationError:
    216                     # file extension doesn't match file type

/usr/local/lib/python3.9/site-packages/imageio/config/plugins.py in partial_legacy_plugin(request)
    106 
    107             def partial_legacy_plugin(request):
--> 108                 return LegacyPlugin(request, legacy_plugin)
    109 
    110             clazz = partial_legacy_plugin

/usr/local/lib/python3.9/site-packages/imageio/core/legacy_plugin_wrapper.py in __init__(self, request, legacy_plugin)
     66         )
     67         if self._request.mode.io_mode == IOMode.read:
---> 68             if not self._format.can_read(request):
     69                 raise InitializationError(
     70                     f"`{self._format.name}`" f" can not read `{source}`."

/usr/local/lib/python3.9/site-packages/imageio/core/format.py in can_read(self, request)
    242         Get whether this format can read data from the specified uri.
    243         """
--> 244         return self._can_read(request)
    245 
    246     def can_write(self, request):

/usr/local/lib/python3.9/site-packages/imageio/plugins/pillow_legacy.py in _can_read(self, request)
    262 
    263     def _can_read(self, request):
--> 264         Image = self._init_pillow()
    265         if request.mode[1] in (self.modes + "?"):
    266             if self.plugin_id in Image.OPEN:

/usr/local/lib/python3.9/site-packages/imageio/plugins/pillow_legacy.py in _init_pillow(self)
    256 
    257         if self.plugin_id in ("PNG", "JPEG", "BMP", "GIF", "PPM"):
--> 258             Image.preinit()
    259         else:
    260             Image.init()

/usr/local/lib/python3.9/site-packages/PIL/Image.py in preinit()
    365         assert JpegImagePlugin
    366     except ImportError:
--> 367         pass
    368     try:
    369         from . import PpmImagePlugin

/usr/local/lib/python3.9/site-packages/PIL/JpegImagePlugin.py in <module>
     42 import warnings
     43 
---> 44 from . import Image, ImageFile, TiffImagePlugin
     45 from ._binary import i16be as i16
     46 from ._binary import i32be as i32

/usr/local/lib/python3.9/site-packages/PIL/TiffImagePlugin.py in <module>
    425 
    426 
--> 427 class ImageFileDirectory_v2(MutableMapping):
    428     """This class represents a TIFF tag directory.  To speed things up, we
    429     don't decode tags unless they're asked for.

/usr/local/lib/python3.9/site-packages/PIL/TiffImagePlugin.py in ImageFileDirectory_v2()
    706                 (TiffTags.DOUBLE, "d", "double"),
    707                 (TiffTags.IFD, "L", "long"),
--> 708                 (TiffTags.LONG8, "Q", "long8"),
    709             ],
    710         )

AttributeError: module 'PIL.TiffTags' has no attribute 'LONG8'


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source