Skip to content

Result Types

This section covers the result types returned by each visualizer.

Type Module

imvf.type

VisualizationResult

Bases: BaseModel

Base class for visualization results.

This class provides common functionality for all visualization results, including validation and immutability.

Source code in src/imvf/type.py
class VisualizationResult(BaseModel):
    """Base class for visualization results.

    This class provides common functionality for all visualization results,
    including validation and immutability.
    """

    model_config = ConfigDict(
        frozen=True,  # Make instances immutable
        arbitrary_types_allowed=True,  # Allow NumPy arrays
    )

    @field_validator("*", mode="before")
    @classmethod
    def _validate_numpy_array(cls, v: Any) -> ImageArray:
        """Validate NumPy array with uint8 dtype and 2D/3D shape.

        Args:
            v: The value to validate.

        Returns:
            The validated NumPy array with dtype uint8.

        Raises:
            ValueError: If validation fails.
        """
        if not isinstance(v, np.ndarray):
            raise ValueError(f"Expected numpy.ndarray, got {type(v).__name__}")

        if v.dtype != np.uint8:
            raise ValueError(f"Expected dtype uint8, got {v.dtype}")

        if v.ndim not in (2, 3):
            raise ValueError(f"Expected 2D or 3D array, got {v.ndim}D")

        return v

ColorChannelResult

Bases: VisualizationResult

A Pydantic model for storing color channel results.

Attributes:

Name Type Description
blue ImageArray

Blue channel as uint8 array.

green ImageArray

Green channel as uint8 array.

red ImageArray

Red channel as uint8 array.

Source code in src/imvf/type.py
class ColorChannelResult(VisualizationResult):
    """A Pydantic model for storing color channel results.

    Attributes:
        blue: Blue channel as uint8 array.
        green: Green channel as uint8 array.
        red: Red channel as uint8 array.
    """

    blue: ImageArray
    green: ImageArray
    red: ImageArray

GradientResult

Bases: VisualizationResult

A Pydantic model for storing gradient results.

Attributes:

Name Type Description
gradient_x ImageArray

Gradient in x direction as uint8 array.

gradient_y ImageArray

Gradient in y direction as uint8 array.

gradient_xy ImageArray

Gradient in xy direction as uint8 array.

Source code in src/imvf/type.py
class GradientResult(VisualizationResult):
    """A Pydantic model for storing gradient results.

    Attributes:
        gradient_x: Gradient in x direction as uint8 array.
        gradient_y: Gradient in y direction as uint8 array.
        gradient_xy: Gradient in xy direction as uint8 array.
    """

    gradient_x: ImageArray
    gradient_y: ImageArray
    gradient_xy: ImageArray

PowerSpectrumResult

Bases: VisualizationResult

A Pydantic model for storing power spectrum results.

Attributes:

Name Type Description
power_spectrum ImageArray

Power spectrum as uint8 array.

Source code in src/imvf/type.py
class PowerSpectrumResult(VisualizationResult):
    """A Pydantic model for storing power spectrum results.

    Attributes:
        power_spectrum: Power spectrum as uint8 array.
    """

    power_spectrum: ImageArray

HogResult

Bases: VisualizationResult

A Pydantic model for storing Histogram of Oriented Gradient results.

Attributes:

Name Type Description
hog ImageArray

HoG features as uint8 array.

Source code in src/imvf/type.py
class HogResult(VisualizationResult):
    """A Pydantic model for storing Histogram of Oriented Gradient results.

    Attributes:
        hog: HoG features as uint8 array.
    """

    hog: ImageArray

LBPResult

Bases: VisualizationResult

A Pydantic model for storing Local Binary Pattern results.

Attributes:

Name Type Description
lbp ImageArray

LBP features as uint8 array.

Source code in src/imvf/type.py
class LBPResult(VisualizationResult):
    """A Pydantic model for storing Local Binary Pattern results.

    Attributes:
        lbp: LBP features as uint8 array.
    """

    lbp: ImageArray

KeypointResult

Bases: VisualizationResult

A Pydantic model for storing keypoint results.

Attributes:

Name Type Description
keypoint ImageArray

Keypoint positions as uint8 array.

rich_keypoint ImageArray

Rich keypoint visualization as uint8 array.

Source code in src/imvf/type.py
class KeypointResult(VisualizationResult):
    """A Pydantic model for storing keypoint results.

    Attributes:
        keypoint: Keypoint positions as uint8 array.
        rich_keypoint: Rich keypoint visualization as uint8 array.
    """

    keypoint: ImageArray
    rich_keypoint: ImageArray

options: show_root_heading: true show_source: true

ColorChannelResult

imvf.type.ColorChannelResult

Bases: VisualizationResult

A Pydantic model for storing color channel results.

Attributes:

Name Type Description
blue ImageArray

Blue channel as uint8 array.

green ImageArray

Green channel as uint8 array.

red ImageArray

Red channel as uint8 array.

Source code in src/imvf/type.py
class ColorChannelResult(VisualizationResult):
    """A Pydantic model for storing color channel results.

    Attributes:
        blue: Blue channel as uint8 array.
        green: Green channel as uint8 array.
        red: Red channel as uint8 array.
    """

    blue: ImageArray
    green: ImageArray
    red: ImageArray

options: show_root_heading: true show_source: true

GradientResult

imvf.type.GradientResult

Bases: VisualizationResult

A Pydantic model for storing gradient results.

Attributes:

Name Type Description
gradient_x ImageArray

Gradient in x direction as uint8 array.

gradient_y ImageArray

Gradient in y direction as uint8 array.

gradient_xy ImageArray

Gradient in xy direction as uint8 array.

Source code in src/imvf/type.py
class GradientResult(VisualizationResult):
    """A Pydantic model for storing gradient results.

    Attributes:
        gradient_x: Gradient in x direction as uint8 array.
        gradient_y: Gradient in y direction as uint8 array.
        gradient_xy: Gradient in xy direction as uint8 array.
    """

    gradient_x: ImageArray
    gradient_y: ImageArray
    gradient_xy: ImageArray

options: show_root_heading: true show_source: true

PowerSpectrumResult

imvf.type.PowerSpectrumResult

Bases: VisualizationResult

A Pydantic model for storing power spectrum results.

Attributes:

Name Type Description
power_spectrum ImageArray

Power spectrum as uint8 array.

Source code in src/imvf/type.py
class PowerSpectrumResult(VisualizationResult):
    """A Pydantic model for storing power spectrum results.

    Attributes:
        power_spectrum: Power spectrum as uint8 array.
    """

    power_spectrum: ImageArray

options: show_root_heading: true show_source: true

HogResult

imvf.type.HogResult

Bases: VisualizationResult

A Pydantic model for storing Histogram of Oriented Gradient results.

Attributes:

Name Type Description
hog ImageArray

HoG features as uint8 array.

Source code in src/imvf/type.py
class HogResult(VisualizationResult):
    """A Pydantic model for storing Histogram of Oriented Gradient results.

    Attributes:
        hog: HoG features as uint8 array.
    """

    hog: ImageArray

options: show_root_heading: true show_source: true

LBPResult

imvf.type.LBPResult

Bases: VisualizationResult

A Pydantic model for storing Local Binary Pattern results.

Attributes:

Name Type Description
lbp ImageArray

LBP features as uint8 array.

Source code in src/imvf/type.py
class LBPResult(VisualizationResult):
    """A Pydantic model for storing Local Binary Pattern results.

    Attributes:
        lbp: LBP features as uint8 array.
    """

    lbp: ImageArray

options: show_root_heading: true show_source: true

KeypointResult

imvf.type.KeypointResult

Bases: VisualizationResult

A Pydantic model for storing keypoint results.

Attributes:

Name Type Description
keypoint ImageArray

Keypoint positions as uint8 array.

rich_keypoint ImageArray

Rich keypoint visualization as uint8 array.

Source code in src/imvf/type.py
class KeypointResult(VisualizationResult):
    """A Pydantic model for storing keypoint results.

    Attributes:
        keypoint: Keypoint positions as uint8 array.
        rich_keypoint: Rich keypoint visualization as uint8 array.
    """

    keypoint: ImageArray
    rich_keypoint: ImageArray

options: show_root_heading: true show_source: true