Insight Toolkit for N-dimensional image processing, segmentation, and registration in medical and scientific applications
—
Pixel-wise intensity transformations including arithmetic operations, rescaling, normalization, and non-linear mappings.
def add_image_filter(input1, input2):
"""Add two images pixel-wise."""
def subtract_image_filter(input1, input2):
"""Subtract images pixel-wise."""
def multiply_image_filter(input1, input2):
"""Multiply images pixel-wise."""
def divide_image_filter(input1, input2):
"""Divide images pixel-wise."""
def abs_image_filter(input):
"""Absolute value of pixels."""
def square_image_filter(input):
"""Square each pixel value."""
def sqrt_image_filter(input):
"""Square root of each pixel."""
def exp_image_filter(input):
"""Exponential of each pixel."""
def log_image_filter(input):
"""Natural logarithm of each pixel."""def rescale_intensity_image_filter(input, output_minimum=0, output_maximum=255):
"""
Rescale intensities to specified range.
Parameters:
- input: itk.Image
- output_minimum: pixel_type - Output minimum value
- output_maximum: pixel_type - Output maximum value
Returns:
itk.Image - Rescaled image
"""
def shift_scale_image_filter(input, shift=0, scale=1):
"""
Apply linear transformation: output = (input + shift) × scale.
Parameters:
- input: itk.Image
- shift: float - Additive shift
- scale: float - Multiplicative scale
Returns:
itk.Image
"""
def normalize_image_filter(input):
"""
Normalize image to mean=0, variance=1.
Parameters:
- input: itk.Image
Returns:
itk.Image - Normalized image
"""
def intensity_windowing_image_filter(input, window_minimum, window_maximum, output_minimum=0, output_maximum=255):
"""
Apply intensity windowing.
Parameters:
- input: itk.Image
- window_minimum: float - Input window min
- window_maximum: float - Input window max
- output_minimum: pixel_type - Output min
- output_maximum: pixel_type - Output max
Returns:
itk.Image
"""
def clamp_image_filter(input, lower_bound, upper_bound):
"""
Clamp intensities to range.
Parameters:
- input: itk.Image
- lower_bound: pixel_type - Lower bound
- upper_bound: pixel_type - Upper bound
Returns:
itk.Image
"""def sigmoid_image_filter(input, alpha=1.0, beta=0.0, output_minimum=0, output_maximum=255):
"""
Apply sigmoid transformation.
Parameters:
- input: itk.Image
- alpha: float - Sigmoid slope
- beta: float - Sigmoid center
- output_minimum: pixel_type - Output min
- output_maximum: pixel_type - Output max
Returns:
itk.Image
"""
def invert_intensity_image_filter(input, maximum=255):
"""
Invert intensities: output = maximum - input.
Parameters:
- input: itk.Image
- maximum: pixel_type - Maximum value
Returns:
itk.Image
"""def mask_image_filter(input, mask, outside_value=0):
"""
Apply binary mask to image.
Parameters:
- input: itk.Image - Input image
- mask: itk.Image - Binary mask
- outside_value: pixel_type - Value for masked pixels
Returns:
itk.Image
"""
def mask_negated_image_filter(input, mask, outside_value=0):
"""Apply inverted mask to image."""import itk
image = itk.imread('input.png', itk.F)
# Rescale to [0, 255]
rescaled = itk.rescale_intensity_image_filter(image, output_minimum=0, output_maximum=255)
# Normalize
normalized = itk.normalize_image_filter(image)
# Sigmoid transformation
sigmoid = itk.sigmoid_image_filter(image, alpha=10.0, beta=128.0)
# Arithmetic
doubled = itk.multiply_image_filter(image, image)
itk.imwrite(rescaled, 'rescaled.png')Install with Tessl CLI
npx tessl i tessl/pypi-itkdocs
guides
reference