Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def analysis_patchwise_grid(self, sample, training, data_aug):
# Slice image into patches
patches_img = slice_matrix(sample.img_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
if training:
# Slice segmentation into patches
patches_seg = slice_matrix(sample.seg_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
else : patches_seg = None
# Skip blank patches (only background)
if training and self.patchwise_skip_blanks:
# Iterate over each patch
for i in reversed(range(0, len(patches_seg))):
# IF patch DON'T contain any non background class -> remove it
if not np.any(patches_seg[i][...,self.patchwise_skip_class] != 1):
del patches_img[i]
del patches_seg[i]
# Concatenate a list of patches into a single numpy array
img_data = np.stack(patches_img, axis=0)
if training : seg_data = np.stack(patches_seg, axis=0)
# Pad patches if necessary
if img_data.shape[1:-1] != self.patch_shape and training:
def analysis_patchwise_crop(self, sample, data_aug):
# If skipping blank patches is active
if self.patchwise_skip_blanks:
# Slice image and segmentation into patches
patches_img = slice_matrix(sample.img_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
patches_seg = slice_matrix(sample.seg_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
# Skip blank patches (only background)
for i in reversed(range(0, len(patches_seg))):
# IF patch DON'T contain any non background class -> remove it
if not np.any(patches_seg[i][...,self.patchwise_skip_class] != 1):
del patches_img[i]
del patches_seg[i]
# Select a random patch
pointer = np.random.randint(0, len(patches_img))
img = patches_img[pointer]
seg = patches_seg[pointer]
# Expand image dimension to simulate a batch with one image
def analysis_patchwise_crop(self, sample, data_aug):
# If skipping blank patches is active
if self.patchwise_skip_blanks:
# Slice image and segmentation into patches
patches_img = slice_matrix(sample.img_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
patches_seg = slice_matrix(sample.seg_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
# Skip blank patches (only background)
for i in reversed(range(0, len(patches_seg))):
# IF patch DON'T contain any non background class -> remove it
if not np.any(patches_seg[i][...,self.patchwise_skip_class] != 1):
del patches_img[i]
del patches_seg[i]
# Select a random patch
pointer = np.random.randint(0, len(patches_img))
img = patches_img[pointer]
seg = patches_seg[pointer]
# Expand image dimension to simulate a batch with one image
img_data = np.expand_dims(img, axis=0)
seg_data = np.expand_dims(seg, axis=0)
# Pad patches if necessary
def analysis_patchwise_grid(self, sample, training, data_aug):
# Slice image into patches
patches_img = slice_matrix(sample.img_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
if training:
# Slice segmentation into patches
patches_seg = slice_matrix(sample.seg_data, self.patch_shape,
self.patchwise_overlap,
self.data_io.interface.three_dim)
else : patches_seg = None
# Skip blank patches (only background)
if training and self.patchwise_skip_blanks:
# Iterate over each patch
for i in reversed(range(0, len(patches_seg))):
# IF patch DON'T contain any non background class -> remove it
if not np.any(patches_seg[i][...,self.patchwise_skip_class] != 1):
del patches_img[i]
del patches_seg[i]