изменить массив изображений

У меня есть 60000 train_images в виде матрицы (28,28,60000). Это numpy.ndarray. Я хочу преобразовать его в массив одномерных изображений, то есть каждое изображение представляется в виде одной строки / массива чисел, и мне нужно 60000 массивов. Другими словами, я хочу перейти от (28, 28, 60000) к (60000, 28 * 28). В Python это будет:

images_features = []
for image in images:
    imageLine = []
    for y in range(len(image)):
        for x in range(len(image[0])):
            imageLine.append(image[y][x])
    images_features.append(imageLine)

Как я могу это сделать? Я подозреваю, что мне нужно использовать изменение формы, но я не мог понять, как именно я могу это сделать.

Вот как я получаю изображения:

data = scipy.io.loadmat('train.mat')


images = data["train_images"]

Таким образом, «изображения» - это массив, о котором я говорю.

Кто-то предложил мне, чтобы:

«Возможно, вам придется сменить оси или объединить их, чтобы получить желаемую функциональность. Я рекомендую наносить их также на случай, если изображение заканчивается вбок. Убедитесь, что вы осмотрительны с осями, чтобы избежать дальнейших проблем».

Я понятия не имею, о каких «осях» здесь идет речь и как принять во внимание сказанное выше.

Может кто-нибудь объяснить, что мне нужно делать и почему? (Что оно делает)

Ответы на вопрос(3)

Ваш ответ на вопрос