-
Notifications
You must be signed in to change notification settings - Fork 14
Morphological operations
Omer Faruk Gulban edited this page Oct 26, 2018
·
6 revisions
After creating a mask with Segmentator, morphological operations can be used to improve the mask.
Here is an example python script to perform opening and closing operations:
import os
import numpy as np
from scipy.ndimage import morphology
from nibabel import load, save, Nifti1Image
# load data
nii = load('/path/to/your/file.nii.gz')
basename = nii.get_filename().split(os.extsep, 1)[0]
dirname = os.path.dirname(nii.get_filename())
data = nii.get_data()
# perform closing
data = morphology.binary_dilation(data, iterations=1)
data = morphology.binary_erosion(data, iterations=1)
# perform opening
data = morphology.binary_erosion(data, iterations=1)
data = morphology.binary_dilation(data, iterations=1)
# save as nifti
out = Nifti1Image(data, header=nii.header, affine=nii.affine)
save(out, basename + "_opening_closing.nii.gz")
print('Morphology operations are done.')For further information, see scipy.ndimage.morphology.
TODO: Images to demonstrate before/after morphological operations.
Intro
Getting started
How/When to use
- Case I: Brainvoyager
- Case II: FSL-FAST
- Case III: Freesurfer
- Case IV: Post-processing existing segmentations
- Case V: Bottlenose dolphin brain
- Case VI: Partial coverage
Utilities
Experimental features
Deprecated