habitat_analysis module

Habitat Analysis module for HABIT package.

V1: imports are fail-fast. If a habitat-analysis dependency is missing the package will raise ImportError at first import, not silently set attributes to None. For genuinely optional dependencies (e.g. optional extractor backends), prefer habit.is_available(name).

Public exports are lazy so lightweight imports such as habit.core.habitat_analysis.config_schemas do not pull PyRadiomics or pipeline orchestration until the symbol is actually used.

Core analysis

HabitatAnalysis is the main entry class for habitat analysis.

Configuration

These classes define habitat analysis config structures; essential for customizing pipelines.

Pipeline and steps

V1 removed the legacy strategies/ subpackage; clustering_mode dispatch lives in a recipe dict inside HabitatAnalysis. Read the pipeline base class and concrete steps for the current structure.

Domain services

HabitatConfigurator constructs the implementations below and injects them into HabitatAnalysis, which wires them into HabitatPipeline steps on the predict path (whitelist _PIPELINE_SERVICE_ATTRS).

Analyzers and extractors