s6.schema.pipeline_configΒΆ

Compatibility exports for Sense Core pipeline configuration models.

class s6.schema.pipeline_config.BoundaryConfig(*, smoothing_window: ConstrainedIntValue = 3, max_radius_change_frac: ConstrainedFloatValue = 0.05, max_center_change_frac: ConstrainedFloatValue = 0.05, default_center: Tuple[float, float] = (640.0, 480.0), default_radius: ConstrainedFloatValue = 600.0)

Bases: BaseModel

Outer boundary detection/smoothing configuration.

smoothing_window: int
max_radius_change_frac: float
max_center_change_frac: float
default_center: Tuple[float, float]
default_radius: float
class s6.schema.pipeline_config.DetectionConfig(*, components_area_thresholds: Tuple[int, int] = (600, 5000), fallback_margin_frac: ConstrainedFloatValue = 0.05)

Bases: BaseModel

Coarse component detection parameters.

components_area_thresholds: Tuple[int, int]
fallback_margin_frac: float
class s6.schema.pipeline_config.ExportConfig(*, preview_size: Tuple[int, int] = (320, 240), preview_format: str = '.jpg')

Bases: BaseModel

Export/telemetry configuration.

preview_size: Tuple[int, int]
preview_format: str
s6.schema.pipeline_config.PipelineConfig

alias of PipelineConfigV1

class s6.schema.pipeline_config.PipelineConfigBase(*, pipeline_name: str = 'PipelineV1', platform: PlatformConfig = None, run_cpp: bool = False, run_level: RunLevel = RunLevel.NORMAL, calibration_file: str = 'configs/calibration.config.json')

Bases: BaseModel

Common pipeline configuration shared across implementations.

default_config_candidates: ClassVar[Tuple[str, ...]] = ('configs/pipeline.config.yaml', 'configs/pipeline.config.yml')
pipeline_name: str
platform: PlatformConfig
run_cpp: bool
run_level: RunLevel
calibration_file: str
classmethod load_default_data() dict[str, Any]

Load raw default config data, preferring YAML when available.

class s6.schema.pipeline_config.PipelineConfigT1(*, pipeline_name: str = 'PipelineT1', platform: PlatformConfig = None, run_cpp: bool = False, run_level: RunLevel = RunLevel.NORMAL, calibration_file: str = 'configs/calibration.config.json', tracking: TrackingConfig = None, tip: TipConfig = None, export: ExportConfig = None)

Bases: PipelineConfigBase

Root configuration for s6.app.pipeline.t1.PipelineT1.

default_config_candidates: ClassVar[Tuple[str, ...]] = ('configs/pipeline_t1.config.yaml', 'configs/pipeline_t1.config.yml', 'configs/pipeline.config.t1.yaml', 'configs/pipeline.config.t1.yml', 'configs/pipeline.config.yaml', 'configs/pipeline.config.yml')
pipeline_name: str
platform: PlatformConfig
tracking: TrackingConfig
tip: TipConfig
export: ExportConfig
static load_default() PipelineConfigT1
class s6.schema.pipeline_config.PipelineConfigV1(*, pipeline_name: str = 'PipelineV1', platform: PlatformConfig = None, run_cpp: bool = False, run_level: RunLevel = RunLevel.NORMAL, calibration_file: str = 'configs/calibration.config.json', tracking: TrackingConfig = None, solver: SolverConfig = None, detection: DetectionConfig = None, refine: RefineConfig = None, boundary: BoundaryConfig = None, tip: TipConfig = None, export: ExportConfig = None, demo_mode: bool = False)

Bases: PipelineConfigBase

Root configuration for s6.app.pipeline.v1.PipelineV1.

tracking: TrackingConfig
solver: SolverConfig
detection: DetectionConfig
refine: RefineConfig
boundary: BoundaryConfig
tip: TipConfig
export: ExportConfig
demo_mode: bool
static load_default() PipelineConfigV1
class s6.schema.pipeline_config.PipelineConfigV2(*, pipeline_name: str = 'PipelineV2', platform: PlatformConfig = None, run_cpp: bool = False, run_level: RunLevel = RunLevel.NORMAL, calibration_file: str = 'configs/calibration.config.json', tracking: TrackingConfig = None, solver: SolverConfig = None, detection: DetectionConfig = None, refine: RefineConfig = None, boundary: BoundaryConfig = None, tip: TipConfig = None, export: ExportConfig = None, demo_mode: bool = False)

Bases: PipelineConfigBase

Root configuration for s6.app.pipeline.v2.PipelineV2.

default_config_candidates: ClassVar[Tuple[str, ...]] = ('configs/pipeline_v2.config.yaml', 'configs/pipeline_v2.config.yml', 'configs/pipeline.config.v2.yaml', 'configs/pipeline.config.v2.yml', 'configs/pipeline.config.yaml', 'configs/pipeline.config.yml')
pipeline_name: str
platform: PlatformConfig
tracking: TrackingConfig
solver: SolverConfig
detection: DetectionConfig
refine: RefineConfig
boundary: BoundaryConfig
tip: TipConfig
export: ExportConfig
demo_mode: bool
static load_default() PipelineConfigV2
class s6.schema.pipeline_config.PlatformConfig(*, prototype: str = 'V1', gstreamer: VideoCaptureConfig = None)

Bases: BaseModel

Selector for concrete platform implementations.

prototype: str
gstreamer: VideoCaptureConfig
property implementation: Platform
property camera_names: Tuple[str, ...]
property camera_count: int
class s6.schema.pipeline_config.RefineConfig(*, zoom_factor: ConstrainedFloatValue = 4.5, patch_size: Tuple[int, int] = (128, 128))

Bases: BaseModel

Local refinement (patch warp) configuration.

zoom_factor: float
patch_size: Tuple[int, int]
class s6.schema.pipeline_config.RunLevel(*values)

Bases: str, Enum

Ordered runtime modes for trading diagnostics against throughput.

PERFORMANCE = 'performance'
NORMAL = 'normal'
DEV = 'dev'
DEBUG = 'debug'
class s6.schema.pipeline_config.SolverConfig(*, instrument_length: ConstrainedFloatValue = 0.135)

Bases: BaseModel

Configuration for geometric solver behaviour.

instrument_length: float
class s6.schema.pipeline_config.TipConfig(*, boundary_margin_px: ConstrainedIntValue = 0, tracking_box_radius_px: ConstrainedIntValue = 80, tracking_box_next_radius_px: ConstrainedIntValue = 100, refine_area_thresholds: Tuple[int, int] = (20, 1200), suppression_radius_px: ConstrainedIntValue = 30)

Bases: BaseModel

Tip detection settings for ROI and refinement.

boundary_margin_px: int
tracking_box_radius_px: int
tracking_box_next_radius_px: int
refine_area_thresholds: Tuple[int, int]
suppression_radius_px: int
class s6.schema.pipeline_config.TrackingConfig(*, enable_prediction: bool = True, search_radius_px: ConstrainedIntValue = 150, trajectory_maxlen: ConstrainedIntValue = 20, search_radius_m: ConstrainedFloatValue = 0.05)

Bases: BaseModel

Per-frame tracking/search configuration.

enable_prediction: bool
search_radius_px: int
trajectory_maxlen: int
search_radius_m: float
s6.schema.pipeline_config.available_platforms() Tuple[str, ...]

Return the supported platform identifiers.

s6.schema.pipeline_config.create_platform(prototype: str) Platform

Create a platform implementation for prototype.