Как передать несколько изображений в качестве входных данных в сверточную нейронную сеть - PullRequest
1 голос
/ 20 января 2020

Я довольно новичок в CNN. Я планирую построить классификатор, где вы будете подавать два изображения в качестве входных данных для классификатора. И он должен выводить, является ли это «соответствием» или нет.

Я не уверен, с чего начать и как подавать два изображения и обучать нейронные сети. Было бы очень полезно, если бы вы могли опубликовать пример кода. Пожалуйста, помогите

Спасибо

1 Ответ

1 голос
/ 08 марта 2020

Сначала вам нужно взять два изображения и поместить их в массив. Таким образом, если каждое изображение имеет размер 26x26, форма массива должна быть 2x26x26. Теперь вы должны поместить каждый из этих массивов в массив тренировочных данных, НО убедитесь, что вы изменили массив тренировочных данных до 26x26x2, прежде чем приступить к тренировке. Вы можете сделать это, набрав numpy.array(your_array_.reshape(-1, 26, 26, 2) для ввода вашей функции fit.

Вот пример:

import numpy as np

image1 = # put your image array here
image2 = # put other image array here
both_images = [image1, image2]

training_data.append(both_images) # Feel free to add as much training data as you would like

same = 0
labels = [same]

model = create_model() # Make a function to create your model and set your model to a variable

model.fit(np.array(training_data).reshape(-1, 26, 26, 2), np.array(labels), batch_size=32)
...