Как создать и загрузить 3 dim numpy .ndarray чтение из файлов npy? - PullRequest
0 голосов
/ 14 марта 2020

У меня есть разные файлы .npy, в которых сохранены numpy массивы (или изображения, представленные в виде матриц, с размером = 64, другое, которого я не знаю).

Я хочу чтобы прочитать их, сохраните их в numpy .ndarray 3-х измерений.

То, что я сделал до сих пор, - это нечто совсем другое, и у меня возникают проблемы с созданными мною структурами.

database_list = list()
labels_list = list()

for filename in glob.glob('*.npy'):
  database_list.append(np.load(filename))
  label_temp = extract_label(filename)
  labels_list.append(label_temp)

database = np.array(database_list)
labels = np.array(labels_list)

Таким образом, у меня есть numpy .ndarray database формы (n_elements,).

Давайте предположим, что я изменяю каждое изображение как (n, 64), я хочу database в форме (n_elements, n, 64).

Как я могу это сделать?

Чего я хочу добиться, так это массива базы данных MNIST той же формы, для работы в нейронной сети .

РЕДАКТИРОВАТЬ:

database тип numpy.ndarray. Его нельзя изменить, database имеет размер n, скажем 10 (потому что он состоит из n элементов, например 10, если загружено 10 файлов. Файлы представляют собой матрицы двух измерений, но я хочу, чтобы они были " часть "базы данных).

1 Ответ

0 голосов
/ 15 марта 2020

Чтобы database = np.array(database_list) мог создать трехмерный массив с формой (n_elements, dim1, dim2), database_list должен содержать массивы, имеющие всю форму (dim1, dim2). Если они различаются по форме, результатом будет массив (n_elements,) с объектом dtype (или в некоторых случаях он выдаст ошибку).

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