def sample(self, nb_samples):
sampled_character_folders = random.sample(self.character_folders, nb_samples)
random.shuffle(sampled_character_folders)
example_inputs = np.zeros((self.batch_size, nb_samples * self.nb_samples_per_class, np.prod(self.img_size)), dtype=np.float32)
example_outputs = np.zeros((self.batch_size, nb_samples * self.nb_samples_per_class), dtype=np.float32) #notice hardcoded np.float32 here and above, change it to something else in tf
for i in range(self.batch_size):
labels_and_images = get_shuffled_images(sampled_character_folders, range(nb_samples), nb_samples=self.nb_samples_per_class)
sequence_length = len(labels_and_images)
labels, image_files = zip(*labels_and_images)
angles = np.random.uniform(-self.max_rotation, self.max_rotation, size=sequence_length)
shifts = np.random.uniform(-self.max_shift, self.max_shift, size=sequence_length)
example_inputs[i] = np.asarray([load_transform(filename, angle=angle, s=shift, size=self.img_size).flatten() \
for (filename, angle, shift) in zip(image_files, angles, shifts)], dtype=np.float32)
example_outputs[i] = np.asarray(labels, dtype=np.int32)
return example_inputs, example_outputs
Generator.py 文件源码
python
阅读 35
收藏 0
点赞 0
评论 0
评论列表
文章目录