9.2.1. Parcellations¶
Functions for parcellation manipulation.
- junifer.data.parcellations.get_parcellation(parcellation, target_data, extra_input=None)¶
Get parcellation, tailored for the target image.
- Parameters:
- parcellation
list
ofstr
The name(s) of the parcellation(s).
- target_data
dict
The corresponding item of the data object to which the parcellation will be applied.
- extra_input
dict
, optional The other fields in the data object. Useful for accessing other data kinds that needs to be used in the computation of parcellations (default None).
- parcellation
- Returns:
Nifti1Image
The parcellation image.
list
ofstr
Parcellation labels.
- Raises:
RuntimeError
If warp / transformation file extension is not “.mat” or “.h5”.
ValueError
If
extra_input
is None whentarget_data
’s space is native.
- junifer.data.parcellations.list_parcellations()¶
List all the available parcellations.
- junifer.data.parcellations.load_parcellation(name, parcellations_dir=None, resolution=None, path_only=False)¶
Load a brain parcellation (including a label file).
If it is a built-in parcellation and the file is not present in the
parcellations_dir
directory, it will be downloaded.- Parameters:
- name
str
The name of the parcellation. Check valid options by calling
list_parcellations()
.- parcellations_dir
str
orpathlib.Path
, optional Path where the parcellations files are stored. The default location is “$HOME/junifer/data/parcellations” (default None).
- resolution
float
, optional The desired resolution of the parcellation to load. If it is not available, the closest resolution will be loaded. Preferably, use a resolution higher than the desired one. By default, will load the highest one (default None).
- path_onlybool, optional
If True, the parcellation image will not be loaded (default False).
- name
- Returns:
Nifti1Image
orNone
Loaded parcellation image.
list
ofstr
Parcellation labels.
pathlib.Path
File path to the parcellation image.
str
The space of the parcellation.
- Raises:
ValueError
If
name
is invalid or if the parcellation values and labels don’t have equal dimension or if the value range is invalid.
- junifer.data.parcellations.merge_parcellations(parcellations_list, parcellations_names, labels_lists)¶
Merge all parcellations from a list into one parcellation.
- Parameters:
- parcellations_list
list
of niimg-like object List of parcellations to merge.
- parcellations_names: list of str
List of names for parcellations at the corresponding indices.
- labels_lists
list
oflist
ofstr
A list of lists. Each list in the list contains the labels for the parcellation at the corresponding index.
- parcellations_list
- Returns:
- junifer.data.parcellations.register_parcellation(name, parcellation_path, parcels_labels, space, overwrite=False)¶
Register a custom user parcellation.
- Parameters:
- name
str
The name of the parcellation.
- parcellation_path
str
orpathlib.Path
The path to the parcellation file.
- parcels_labels
list
ofstr
The list of labels for the parcellation.
- space
str
The template space of the parcellation, for e.g., “MNI152NLin6Asym”.
- overwritebool, optional
If True, overwrite an existing parcellation with the same name. Does not apply to built-in parcellations (default False).
- name
- Raises:
ValueError
If the parcellation name is already registered and overwrite is set to False or if the parcellation name is a built-in parcellation.
9.2.2. Coordinates¶
Functions for coordinates manipulation.
- junifer.data.coordinates.get_coordinates(coords, target_data, extra_input=None)¶
Get coordinates, tailored for the target image.
- Parameters:
- coords
str
The name of the coordinates.
- target_data
dict
The corresponding item of the data object to which the coordinates will be applied.
- extra_input
dict
, optional The other fields in the data object. Useful for accessing other data kinds that needs to be used in the computation of coordinates (default None).
- coords
- Returns:
numpy.ndarray
The coordinates.
list
ofstr
The names of the VOIs.
- Raises:
RuntimeError
If warp / transformation file extension is not “.mat” or “.h5”.
ValueError
If
extra_input
is None whentarget_data
’s space is native.
- junifer.data.coordinates.list_coordinates()¶
List all the available coordinates (VOIs).
- junifer.data.coordinates.load_coordinates(name)¶
Load coordinates.
- Parameters:
- name
str
The name of the coordinates.
- name
- Returns:
numpy.ndarray
The coordinates.
list
ofstr
The names of the VOIs.
str
The space of the coordinates.
- Raises:
ValueError
If
name
is invalid.
- junifer.data.coordinates.register_coordinates(name, coordinates, voi_names, space, overwrite=False)¶
Register a custom user coordinates.
- Parameters:
- name
str
The name of the coordinates.
- coordinates
numpy.ndarray
The coordinates. This should be a 2-dimensional array with three columns. Each row corresponds to a volume-of-interest (VOI) and each column corresponds to a spatial dimension (i.e. x, y, and z-coordinates).
- voi_names
list
ofstr
The names of the VOIs.
- space
str
The space of the coordinates, for e.g., “MNI”.
- overwritebool, optional
If True, overwrite an existing list of coordinates with the same name. Does not apply to built-in coordinates (default False).
- name
- Raises:
ValueError
If the coordinates name is already registered and overwrite is set to False or if the coordinates name is a built-in coordinates or if the
coordinates
is not a 2D array or if coordinate value does not have 3 components or if thevoi_names
shape does not match thecoordinates
shape.TypeError
If
coordinates
is not anumpy.ndarray
.
9.2.3. Masks¶
Functions for mask manipulation.
- junifer.data.masks.compute_brain_mask(target_data, extra_input=None, mask_type='brain', threshold=0.5)¶
Compute the whole-brain, grey-matter or white-matter mask.
This mask is calculated using the template space and resolution as found in the
target_data
.- Parameters:
- target_data
dict
The corresponding item of the data object for which mask will be loaded.
- extra_input
dict
, optional The other fields in the data object. Useful for accessing other data types (default None).
- mask_type{“brain”, “gm”, “wm”}, optional
Type of mask to be computed:
“brain” : whole-brain mask
“gm” : grey-matter mask
“wm” : white-matter mask
(default “brain”).
- threshold
float
, optional The value under which the template is cut off (default 0.5).
- target_data
- Returns:
Nifti1Image
The mask (3D image).
- Raises:
ValueError
If
mask_type
is invalid or ifextra_input
is None whentarget_data
’s space is native.
- junifer.data.masks.get_mask(masks, target_data, extra_input=None)¶
Get mask, tailored for the target image.
- Parameters:
- masks
str
,dict
orlist
ofdict
orstr
The name of the mask, or the name of a callable mask and the parameters of the mask as a dictionary. Several masks can be passed as a list.
- target_data
dict
The corresponding item of the data object to which the mask will be applied.
- extra_input
dict
, optional The other fields in the data object. Useful for accessing other data kinds that needs to be used in the computation of masks (default None).
- masks
- Returns:
Nifti1Image
The mask image.
- Raises:
RuntimeError
If warp / transformation file extension is not “.mat” or “.h5”.
ValueError
If extra key is provided in addition to mask name in
masks
or if no mask is provided or ifmasks = "inherit"
andmask
key for thetarget_data
is not found or if callable parameters are passed to non-callable mask or if parameters are passed tonilearn.masking.intersect_masks()
when there is only one mask or ifextra_input
is None whentarget_data
’s space is native.
- junifer.data.masks.list_masks()¶
List all the available masks.
- junifer.data.masks.load_mask(name, resolution=None, path_only=False)¶
Load a mask.
- Parameters:
- name
str
The name of the mask. Check valid options by calling
list_masks()
.- resolution
float
, optional The desired resolution of the mask to load. If it is not available, the closest resolution will be loaded. Preferably, use a resolution higher than the desired one. By default, will load the highest one (default None).
- path_onlybool, optional
If True, the mask image will not be loaded (default False).
- name
- Returns:
Nifti1Image
,Callable
orNone
Loaded mask image.
pathlib.Path
orNone
File path to the mask image.
str
The space of the mask.
- Raises:
ValueError
If the
name
is invalid of if the mask family is invalid.
- junifer.data.masks.register_mask(name, mask_path, space, overwrite=False)¶
Register a custom user mask.
- Parameters:
- name
str
The name of the mask.
- mask_path
str
orpathlib.Path
The path to the mask file.
- space
str
The space of the mask, for e.g., “MNI152NLin6Asym”.
- overwritebool, optional
If True, overwrite an existing mask with the same name. Does not apply to built-in mask (default False).
- name
- Raises:
ValueError
If the mask name is already registered and overwrite is set to False or if the mask name is a built-in mask.
9.2.4. Template Spaces¶
Functions for template space manipulation.
- junifer.data.template_spaces.get_template(space, target_data, extra_input=None, template_type='T1w')¶
Get template for the space, tailored for the target image.
- Parameters:
- space
str
The name of the template space.
- target_data
dict
The corresponding item of the data object for which the template space will be loaded.
- extra_input
dict
, optional The other fields in the data object. Useful for accessing other data types (default None).
- template_type{“T1w”, “brain”, “gm”, “wm”, “csf”}, optional
The template type to retrieve (default “T1w”).
- space
- Returns:
Nifti1Image
The template image.
- Raises:
ValueError
If
space
ortemplate_type
is invalid.RuntimeError
If required template is not found.
- junifer.data.template_spaces.get_xfm(src, dst, xfms_dir=None)¶
Fetch warp files to convert from
src
todst
.- Parameters:
- src
str
The template space to transform from.
- dst
str
The template space to transform to.
- xfms_dir
str
orpathlib.Path
, optional Path where the retrieved transformation files are stored. The default location is “$HOME/junifer/data/xfms” (default None).
- src
- Returns:
pathlib.Path
The path to the transformation file.
- Raises:
RuntimeError
If there is a problem fetching files.