主要是想要给图像外围的上下左右填充像素点,通过实际的图像进行演示,通过opencv读取numpy.array形式的图像数据,而其中的维度分别表示图像的左右上下四个方向。
具体的参数信息可以查看官方文档,这里就过多赘述。
import torch.nn.functional as F
import torch
im = cv2.imread("demo.jpg")
X=torch.tensor(im).transpose(0,2).transpose(2,1)
print("shape:",X.shape)
dim=(50,50,50,50) # left,right,top ,down
X=F.pad(X,dim,"constant",value=114).transpose(2,1).transpose(0,2)
padX=X.data.numpy()
cv2.imshow('fff',padX)
cv2.waitKey(0)
这里输入一张图像
可以看到填充后的效果: