torchvision.transforms.functional和 torchvision.transforms
时间: 2024-04-08 20:24:49 浏览: 206
torch和torchvision
5星 · 资源好评率100%
`torchvision.transforms`和`torchvision.transforms.functional`都是PyTorch中用于图像预处理的模块。其中,`torchvision.transforms`提供了一系列类来进行图像预处理,例如`Resize`、`RandomCrop`、`ToTensor`等,这些类可以被用于数据集的预处理。而`torchvision.transforms.functional`提供了一系列函数来进行图像预处理,例如`resize`、`crop`、`to_tensor`等,这些函数可以被用于单张图像的预处理。
下面是一个使用`torchvision.transforms`进行数据集预处理的例子:
```python
from torchvision import transforms
transform = transforms.Compose([
transforms.Resize(256),
transforms.RandomCrop(224),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225])
])
dataset = MyDataset(root_dir, transform=transform)
```
下面是一个使用`torchvision.transforms.functional`进行单张图像预处理的例子:
```python
from PIL import Image
from torchvision.transforms.functional import resize, crop, to_tensor, normalize
img = Image.open('example.jpg')
img = resize(img, (256, 256))
img = crop(img, 64, 64, 128, 128)
img = to_tensor(img)
img = normalize(img, mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
```
阅读全文