Я пишу функцию для чтения пиксельных данных из изображений и сохранения их в массиве для дальнейшего разделения на поезд / тест.
Когда я запускаю этот код, он выдает исключение, в котором говорится, что все размеры входного массива, кроме оси конкатенации, должны точно совпадать.
Я не уверен, почему эта проблема возникает и как ее исправить.
from PIL import Image
import numpy as np
import os
X = np.array([])
y = []
categories = {
'A': 1,
'B': 2
}
root = data_dir + '/cropped_resized(128,128)/'
for path, subdirs, files in os.walk(root):
for name in files:
img_path = os.path.join(path,name)
category = categories[os.path.basename(path)]
im = Image.open(img_path)
img_pixels = list(im.getdata())
width, height = im.size
X = np.vstack((X, img_pixels))
#X = np.concatenate((X, img_pixels), axis=0)
y.append(category)
X_train, X_test, y_train, y_test = train_test_split(X, y)
Вот пример картинки, которая терпит неудачу
![enter image description here](https://i.stack.imgur.com/3yf1j.jpg)