def test_patch_centered_at(): patch_size = (101, 101) image = prepared_dataset_image(root+'/tests/patch_at/source.tiff', patch_size) test1 = prepared_dataset_image(root+'/tests/patch_at/patch_0_0.tiff') test2 = prepared_dataset_image(root+'/tests/patch_at/patch_300_500.tiff') test3 = prepared_dataset_image(root+'/tests/patch_at/patch_500_300.tiff') test4 = prepared_dataset_image(root+'/tests/patch_at/patch_500_500.tiff') assert numpy.array_equal(test1, patch_centered_at(image, row=50, col=50, size=patch_size)) assert numpy.array_equal(test2, patch_centered_at(image, row=350, col=550, size=patch_size)) assert numpy.array_equal(test3, patch_centered_at(image, row=550, col=350, size=patch_size)) assert numpy.array_equal(test4, patch_centered_at(image, row=550, col=550, size=patch_size))
def __iter__(self): for i in xrange(len(self)): col, row = pixel_at_index(i, self.image_size) yield patch_centered_at(self.input, row=row, col=col, size=self.patch_size), self.output[row, col]
def generator(self): files = self.dataset.keys() random.shuffle(files) for filename in files: image = prepared_dataset_image(os.path.join(self.root_path, filename), border=self.patch_size) random.shuffle(self.dataset[filename]) for (col, row, p) in self.dataset[filename]: patch = patch_centered_at(image, row=row, col=col, size=self.patch_size) if self.rotation is False: yield patch, p else: yield random_rotation(patch), p