PyTorch之图像和Tensor填充的实例
在PyTorch中可以对图像和Tensor进行填充,如常量值填充,镜像填充和复制填充等。在图像预处理阶段设置图像边界填充的方式如下:
import vision.torchvision.transforms as transforms
img_to_pad = transforms.Compose([
transforms.Pad(padding=2, padding_mode=‘symmetric’),
transforms.ToTensor(),
])
对Tensor进行填充的方式如下:
import torch.nn.functional as F
feature = feature.unsqueeze(0).unsqueeze(0)
avg_feature = F.pad(feature, pad = [1, 1, 1, 1], mode=‘replicate’)
这里需要注意一点的是,transforms.Pad只能对PIL图像格式进行填充,而F.pad可以对Tensor进行填充,目前F.pad不支持对2D Tensor进行填充,可以通过unsqueeze扩展为4D Tensor进行填充。