pytorch batch must contain tensors, numpy arrays, numbers, dicts or lists; found <class 'PIL.Image.Image'> code example

Example: TypeError: default_collate: batch must contain tensors, numpy arrays, numbers, dicts or lists; found

The error states that the DataLoader receives a PIL image. 
This is because there are no transforms made (transform=None) on the image.
You can add a transform that creates a tensor from the PIL image by adding transform:

from torchvision import transforms

transform = transforms.Compose([
    # you can add other transformations in this list
    transforms.ToTensor()
])