def get_partitions(self): fileset = FileSet3D([ MemoryFile3D(self.data.reshape(self.shape.flatten_nav()), check_cast=self._check_cast) ]) stackheight = int(np.product(self.tileshape[:-self.sig_dims])) for part_slice, start, stop in Partition3D.make_slices( shape=self.shape, num_partitions=self.num_partitions): log.debug("creating partition", part_slice, start, stop, stackheight) if self._crop_frames: yield CropFramesMemPartition( meta=self._meta, partition_slice=part_slice, fileset=fileset.get_for_range(start, stop), start_frame=start, num_frames=stop - start, stackheight=stackheight, tileshape=self.tileshape, tiledelay=self._tiledelay, ) else: yield MemPartition( meta=self._meta, partition_slice=part_slice, fileset=fileset.get_for_range(start, stop), start_frame=start, num_frames=stop - start, stackheight=stackheight, tiledelay=self._tiledelay, )
def get_partitions(self): fileset = FileSet3D([ MemoryFile3D(self.data.reshape(self.shape.flatten_nav())) ]) stackheight = int(np.product(self.tileshape[:-self.sig_dims])) for part_slice, start, stop in Partition3D.make_slices( shape=self.shape, num_partitions=self.num_partitions): print("creating partition", part_slice, start, stop, stackheight) yield Partition3D( meta=self._meta, partition_slice=part_slice, fileset=fileset.get_for_range(start, stop), start_frame=start, num_frames=stop - start, stackheight=stackheight, )
def test_num_part_larger_than_num_frames(): shape = Shape((1, 1, 256, 256), sig_dims=2) slice_iter = Partition3D.make_slices(shape=shape, num_partitions=2) next(slice_iter) with pytest.raises(StopIteration): next(slice_iter)