我有两个不同的自定义生成器。 其中一个处理包含9个图像的数组,并将其中8个用作X,其中一个用作Y。 另一个非常相似,但是只将4张图像作为X。
我希望Generator能够产生8张图像,但只能将4张图像提供给神经网络。 (其他4个仅应用于测试目的。)
我该怎么做?生成器通常产生X,Y。我猜你不能随意要求它产生X,Y,Z。
我不知道下一步应该怎么做。
SbecialPatchGenerator类(序列): 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图像