Как объединить массивы NumPy, сгенерированные в цикле, в один массив 4D? - PullRequest
0 голосов
/ 30 сентября 2019

Скажем, у меня есть цикл for, который выполняется 10 раз, и каждый цикл генерирует массив формы NumPy (32, 128). Как итеративно объединить их в цикле, чтобы в итоге получить массив NumPy формы (10, 32, 128, 1)?

Здесь я работаю над базой данных IAM для распознавания рукописного ввода. Итак, здесь я хочу, чтобы массив numpy сохранял все мои изображения в виде пикселей

file = open(path, 'rb')
l = file.readlines()
y_train = np.array([])
x_train = np.array([])
count = 0
for x in l:
    a = x.split()
    y_train = np.append(y_train, str(a[-1].decode("utf-8")))
    path1 = a[0].decode("utf-8").split('-')
    os.chdir(path_toimages + path1[0] + '/' + path1[0] + '-' + path1[1])
    try:
        im = Image.open(a[0].decode("utf-8") + ".png")
        np_im = np.array(im)

        np_im = preprocess(np_im, (32, 128))

        x_train = np.append((x_train, np_im))
        print(np_im.shape)

    except OSError:
        continue
    count += 1
    print(count)
    if count == 10:
        break

1 Ответ

0 голосов
/ 30 сентября 2019

Поскольку вы уже знаете форму x_train, вы можете определить массив с этой формой. Затем добавьте вновь обработанные изображения в x_train [index], увеличивая индекс для каждой итерации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...