如何用torchvision.transforms 给图片添加蓝色背景
时间: 2024-05-07 19:19:03 浏览: 12
可以使用以下代码给图片添加蓝色背景:
```python
import torch
import torchvision.transforms as transforms
from PIL import Image
# 加载图片
img = Image.open('example.jpg')
# 定义蓝色背景颜色
blue_color = (0, 0, 255)
# 定义transform
transform = transforms.Compose([
transforms.Resize((224, 224)), # 调整大小为224x224
transforms.CenterCrop(224), # 中心裁剪为224x224
transforms.ToTensor(), # 转化为Tensor
transforms.Lambda(lambda x: torch.cat([x, torch.ones_like(x)[:1]*blue_color[0], torch.ones_like(x)[:1]*blue_color[1], torch.ones_like(x)[:1]*blue_color[2]], axis=0)), # 添加蓝色背景
])
# 应用transform
img_transformed = transform(img)
# 显示图片
import matplotlib.pyplot as plt
plt.imshow(img_transformed.permute(1, 2, 0))
plt.show()
```
这段代码会将图片先调整大小为224x224,然后进行中心裁剪,接着转化为Tensor。最后使用Lambda函数将蓝色背景添加到图片上。