Google Colaboratory出错 - AttributeError:模块'PIL.Image'没有属性'register_decoder'

Adi*_*mar 5 python dataset python-imaging-library pytorch

我在Google Colaboratory上运行此代码,我收到寄存器解码器的错误

image_data = dset.ImageFolder(root="drive/SemanticDataset/train/", transform = transforms.Compose([
                                        transforms.Scale(size=img_size),
                                        transforms.CenterCrop(size=(img_size,img_size*2)),
                                        transforms.ToTensor(),
                                        ]))
enter code herelabel_data = dset.ImageFolder(root="drive/SemanticDataset/label/", transform = transforms.Compose([
                                        transforms.Scale(size=img_size),
                                        transforms.CenterCrop(size=(img_size,img_size*2)),
                                        transforms.ToTensor(),
                                        ]))

image_batch = data.DataLoader(image_data, batch_size=batch_size, shuffle=False, num_workers=2)
label_batch = data.DataLoader(label_data, batch_size=batch_size, shuffle=False, num_workers=2)
for i in range(epoch):
   for _, (image, label) in enumerate(zip(image_batch, label_batch)):
       optimizer.zero_grad()

       x = Variable(image, requires_grad=True).cuda()
       y = Variable(label).cuda()

       out = model.forward(x)
       loss = loss_func(out, y)

       loss.backward()
       optimizer.step()

       if _ % 100 == 0:
           print("Epoch: "+i+"| Loss: " , loss)
Run Code Online (Sandbox Code Playgroud)

这是错误的屏幕截图

Mic*_*erg 8

首先,使用以下方法检查您拥有的枕头版本:

import PIL
print(PIL.PILLOW_VERSION)
Run Code Online (Sandbox Code Playgroud)

并确保您拥有最新版本,我现在使用的是5.3.0 如果您喜欢4.0.0,请!pip install Pillow==5.3.0在Colab环境中使用:安装新版本 .

其次,重新启动您的Google colab环境,并再次检查版本,它应该更新.

我有同样的问题,我花了一些时间试图解决它.

注意:我使用的是PyTorch 0.4.

我希望这能解决你的问题.