Anisotropic voxel

Hi everyone. I am studying a MRI dataset. All the images have the same spacing (0,80x0,46x0,46) cause everything is reported in FLAIR space. Also a given ground truth segmentation for lesions has this spacing condition. To analyze this segmentation features I’ve loaded Flair image as volume and this consensus as label map. Now I have two questions:

  1. this consensus can be considered anisotropic cause z is almost twice x and y? An import in segmentation module is required to have an isotropic voxel imposing the isotropic geometry flag for segmentation geometry (passing trough the “white cube” in segment editor)? My goal is to extract features, so this condition, in my opinion, is important. Any suggestions about this?

  2. using islands effects splitting islands to segment and imposing minimum voxel size (for the initial consensus segmentation) all the generated segments are isotropic (1mm)? again: is necessary to impose space isotropy before applying this effect? I’ve tried both these two operations (with or without imposition) but in the subject hierarchy I always see the segmentation node with islands that seems containing only one segment… how can I resolve?

Thanks everyone in advantage for a request.

In general isotropic voxels are not required for segmentation or radiomics.

I’m not really following the rest of your questions. Perhaps some screenshots would help.

Thank you for the answer, Pieper!
Yes, I’ll take some screen as soon as possible.

Meanwhile I’ve forgot a question. Since my voxel are isotropic only in plane xy, a force 2d setting in parameter file is required (setting it true) or not(leaving default false)?
Thank you if you’ll answer me again.

Have a nice day

You could use the force 2d option if your slices really have no relation to each other and should be treated independently. Otherwise it’s okay to have anisotropic voxels, but you should look at the metrics to use and decide if they make sense when the data sampling is not uniform (meaning it doesn’t capture tissue variations the same way in all directions). @JoostJM or @fedorov may have further suggestions.

after importing a labelmap I’ve used “effect: islands” to create and remove islands
going back to see segmentation property it seems that there is only one segment instead of 9 (created 2 seconds ago with segment editor).
could you tell me why? I don’t understand… thank you

In that image you have one Segmentation with several Segments (a Segmentation is a set of Segments).

“numbers of segment:1”, this let me confused

Texture features such as GLCM, GLRLM assume spacing isotropy. If this is not the case (as in the dataset), there are 4 options of dealing with this:

  • Ignore the error: not advised, this introduces rotational dependency in your feature values
  • Use matrix weighting: this corrects the anisotropy by weighting the matrix as a function of the distance to the neighbor
  • Resample the dataset: ensures your voxels are isotropic. Be aware that heavy oversampling can introduce bias (though resampling in your dataset to .5 x .5 x .5 should be fine)
  • Use force2D: this ensures the out-of-plane angles are ignored and the isotropy assumption holds true (as voxels are isotropic in-plane).
1 Like

Thank you for these advices! They are precious!
Can I resample directly in radiomics module or should I do this operation with resample volume module before feature extraction?

You can do so directly in the radiomics module. For this to work, enable it in the parameter file you pass to the module.