我想将一个尺寸为500x500x3的RGB图像填充到512x512x3。我知道我需要在每个边界上添加6个像素,但是我不知道如何操作。我已经阅读了numpy.pad函数的文档,但是无法理解如何使用它。如果能提供代码片段将不胜感激。
如果你需要填充0:
RGB = np.pad(RGB, pad_width=[(6, 6),(6, 6),(0, 0)], mode='constant')
使用constant_values
参数来填充不同的值(默认为0):
RGB = np.pad(RGB, pad_width=[(6, 6),(6, 6),(0, 0)], mode='constant', constant_values=0, constant_values=[(3,3),(5,5),(0,0)]))
512x512
的画布,然后将原始图像放置在此画布中。您可以参考以下代码进行操作:import numpy as np
# Create a larger black colored canvas
canvas = np.zeros(512, 512, 3)
canvas[6:506, 6:506] = your_500_500_img
很明显,你可以将6和506转换为更通用的变量,并将其用作padding
、512-padding
等,但这段代码说明了该概念。