У меня есть два разных пользовательских генератора.Один из них обрабатывает массив, который содержит 9 изображений, и использует 8 из них как X, а один из них как Y. Другой довольно похож, но принимает только 4 изображения как X.
Я хотел бы дляГенератор, чтобы иметь возможность получить 8 изображений, но дать только 4 изображения для нейронной сети.(Остальные 4 следует использовать только для целей тестирования).
Как я могу это сделать?Генератор обычно доходность X, Y.Вы не можете случайно задать его Yield X, Y, ZI предположить.
Я понятия не имею, каким должен быть следующий шаг.
class SbecialPatchGenerator (Sequence): def init (...): ...
def __len__(self):
...
def __getitem__(self, file_index):
rndint = np.random.randint(0, len(self.images))
with open(self.images[rndint], "rb") as read_file:
images = np.load(read_file)
images = np.reshape(images, [-1, self.new_size, self.new_size, 1])
with open(self.neighbors[rndint], "rb") as read_file:
new_neighbors=[]
for c in range(8):
new_neighbors.append([])
neighbors_list = np.load(read_file)
#print("neighbors - " + str(neighbors_list.shape))
for neighbors in neighbors_list:
for c in range(len(neighbors)):
#print("neighbor - " + str(neighbors[c].shape))
after_edit = np.reshape(neighbors[c] , [self.new_size, self.new_size, 1])
new_neighbors[c].append( after_edit)
#print("neighbor_ae - " + str(after_edit.shape))
for c in range(8):
new_neighbors[c] = np.array(new_neighbors[c])
return new_neighbors,images
Я бы ожидал Генератор, который: - При использовании в Model.fit_generator () использует только 4 изображения в качестве X и 1 изображение в качестве Y -Это дает мне возможность взять 8 изображений как X и 1 как Y с пользовательской функцией