In [26]:
import torch
import torchvision.transforms as transforms
import torchvision.datasets as datasets
from torchvision.utils import make_grid
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
import random

In [27]:
import scipy.misc

In [28]:
lena = scipy.misc.face()
img = transforms.ToTensor()(lena)

In [29]:
print(img.size())


torch.Size([768, 1024, 3])

In [30]:
from __future__ import print_function
import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
from torchvision import datasets, transforms
from torch.autograd import Variable

In [39]:
transform = transforms.Compose([transforms.ToTensor(),
                              transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)),
                             ])
trainset = datasets.CIFAR10(root='./data', train=True, download=True, transform=transform)
train_loader = torch.utils.data.DataLoader(trainset, batch_size=10,
                                          shuffle=True, num_workers=2)


Files already downloaded and verified

In [69]:
for batch_idx, (data, target) in enumerate(train_loader):
    data, target = data, target
    print(type(data), data.size())
    mean = torch.mean(data, dim=1)
    std = torch.std(data, dim=1)
    # img = transforms.ToTensor()(data[0])
    data = (data - mean) / std
    img = make_grid(data, nrow=5)
    print(img.size())
    # %matplotlib inline
    def imshow(img):
        # img = img / 2 + 0.5 # unnormalize
        print(type(img), img.size())
        npimg = img.numpy()
        plt.imshow(np.transpose(npimg, (1,2,0)))
    imshow(img)
    break


<class 'torch.FloatTensor'> torch.Size([10, 3, 32, 32])
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-69-880ad53c0f88> in <module>()
      5     std = torch.std(data, dim=1)
      6     # img = transforms.ToTensor()(data[0])
----> 7     data = (data - mean) / std
      8     img = make_grid(data, nrow=5)
      9     print(img.size())

/home/ubuntu/anaconda3/lib/python3.5/site-packages/torch/tensor.py in __sub__(self, other)
    329 
    330     def __sub__(self, other):
--> 331         return self.sub(other)
    332 
    333     def __rsub__(self, other):

RuntimeError: inconsistent tensor size at /data/users/soumith/miniconda2/conda-bld/pytorch-0.1.10_1488753987449/work/torch/lib/TH/generic/THTensorMath.c:827

In [ ]: