#keras #conv-neural-network #cv2
Вопрос:
Я изменяю размер изображений и передаю их через предварительную обработку keras resnet50, а выходные данные сохраняю в массиве numpy, как показано ниже
image_height_cnn = 256
image_width_cnn = 256
for i in range(len(category_data)):
image = cv2.imread(os.path.join(src_dir, 'Original Demo', category_data.iloc[i][0]))
image_cnn = cv2.resize(image, (image_height_cnn, image_width_cnn))
image_landmarks = cv2.resize(image, (image_height_landmarks, image_width_landmarks))
img = tf.keras.applications.resnet50.preprocess_input(image_cnn)
images.append(image_cnn)
np.save('train_test' '/' category '/images_test.npy', images)
plt.imshow(train_images_test[24], interpolation= 'nearest')
Изображение, похоже, не изменено до 256 x 256, никаких идей!!
Комментарии:
1. Ваш код крайне противоречив.
2. Я бы упростил и дважды проверил, что изменение размера работает так, как ожидалось, только с изображениями и opencv, удалив resnet на этом этапе, пока ошибка не будет исправлена. Аргумент cv2.resize dimensions приведен в порядке ширины и высоты, однако это не должно повлиять на вас, так как они одинаковы. Также дважды проверьте исходное изображение, чтобы убедиться, что оно по какой-либо причине не имеет белой границы. (Я бы ожидал, что, если изменение размера будет неправильным, содержимое будет, по крайней мере, в верхнем левом углу. немного странно, что на графике показаны белые пиксели сверху, справа и снизу, но не слева).
3. Я попробовал вручную изменить размер нескольких фотографий, и они отлично сработали. Не уверен, что произойдет, когда я запущу цикл for @GeorgeProfenza
4. Не могли бы вы проверить их все на случай, если в вашем наборе данных по какой-либо причине появятся какие-то странные изображения ? Также помните, что вы строите изображения из
train_images_test
списка, однако измененные размеры изображений сохраняются вimages
списке (насколько я могу судить по приведенному выше фрагменту).