代码之家  ›  专栏  ›  技术社区  ›  Hybrid24

如何按可变数量填充阵列?

  •  1
  • Hybrid24  · 技术社区  · 6 年前

    我正在尝试使多个PNG文件大小相同。我不想改变图像,只需在它们周围添加边框,直到它们都与最大的PNG文件大小相同。 语言是Python。

    这是一个大量的文件,所以我无法手动执行此操作。我正在使用for循环。我已经知道最大尺寸是多少:(100441)。maxImage代表了这一点。images是我的数组的名称。

    for n in range(0, len(images - 1)):
        stat_length = maxImage - len(images[n])
        hello = py.pad(images[n], 1, 'constant')
        print (hello[n].shape)
    

    这是我的密码。我想知道如何以可变的数量进行填充。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Dan Steingart    6 年前

    这对我有用

    import numpy as np
    a = [[1, 2, 3, 4, 5],[6,7,8,9,10]]
    p = np.shape(a)
    max_h = 100 
    max_w = 441
    pad_h = (max_h-p[0])//2
    pad_w = (max_w-p[1])//2 
    print(np.pad(a,((pad_h,pad_h),(pad_w,pad_w)),'constant', constant_values=(0)))