What is the best way to apply a normalization or calibration factor to an image volume? (I.e. just multiply all voxel scalars by a constant)

It seems like a good place for this would be the “Volumes” node.


You can click and drag in any of the slice viewers to apply linear scaling/offset to the displayed volume.

But this just changes the color mapping. I want to actually modify the values present in the dataset by scalar multiplication.

For instance, if the image is quantified in units of (signal)/(unit volume) and I want (signal)/(unit mass), it’s necessary to multiply by a calibration factor (inverse of the density).

This should be helpful: Documentation/Nightly/Developers/Python scripting - Slicer Wiki

If you prefer to use the GUI for that operation, you can use ShiftScaleImageFilter from the SimpleFilters module:


1 Like

Thanks, this is exactly what I wanted!