表示图像的 Numpy 缩小数组

Numpy scale down array representing image

我有一张存储在 numpy 数组中的图像 ~180x130 像素。

我想缩放它以使图像为 NxN,但要保持它以保持宽高比。这将意味着黑色 space 围绕较小的尺寸。

有这个功能吗?

你可以试试 numpy.pad。一个小例子:

 a = np.ones((4,2))
 np.pad(a, ((0,0), (1,1)), 'constant', constant_values=(0,0))

 array([[ 0.,  1.,  1.,  0.],
   [ 0.,  1.,  1.,  0.],
   [ 0.,  1.,  1.,  0.],
   [ 0.,  1.,  1.,  0.]])

在你的情况下,我猜你希望第二个参数是 ((0,0), (25,25)) 以在图像数组任一侧的 25 列中用零填充。 (当然,您应该为您的图像格式填充代表 "blank space" 的任何常量值)。