Source code for ewoksndreg.math.normalization

from typing import List
from typing import Union

import numpy


[docs] def range_normalization(image: Union[numpy.ndarray, List]): """ Scale image intensities between [0,1] """ image = numpy.asarray(image) mi = numpy.nanmin(image) ma = numpy.nanmax(image) if mi == ma: return image return (image - mi) / (ma - mi)
[docs] def stack_range_normalization(image_stacks: numpy.ndarray): """ Scale intensities of each image in a stack of images between [0,1]. """ return numpy.stack([range_normalization(image) for image in image_stacks])