otx.core.model.segmentation#

Class definition for detection model entity used in OTX.

Classes

OTXSegmentationModel(label_info, ...[, ...])

Semantic Segmentation model used in OTX.

OVSegmentationModel(model_name, model_type, ...)

Semantic segmentation model compatible for OpenVINO IR inference.

class otx.core.model.segmentation.OTXSegmentationModel(label_info: LabelInfoTypes, data_input_params: DataInputParams, model_name: str = 'otx_segmentation_model', optimizer: OptimizerCallable = <function _default_optimizer_callable>, scheduler: LRSchedulerCallable | LRSchedulerListCallable = <function _default_scheduler_callable>, metric: MetricCallable = <function _segm_callable>, torch_compile: bool = False, tile_config: TileConfig = TileConfig(enable_tiler=False, enable_adaptive_tiling=True, tile_size=(400, 400), overlap=0.2, iou_threshold=0.45, max_num_instances=1500, object_tile_ratio=0.03, sampling_ratio=1.0, with_full_img=False))[source]#

Bases: OTXModel

Semantic Segmentation model used in OTX.

Parameters:
  • label_info (LabelInfoTypes) – Information about the hierarchical labels.

  • data_input_params (DataInputParams) – Parameters for data input.

  • model_name (str, optional) – Name of the model. Defaults to “otx_segmentation_model”.

  • optimizer (OptimizerCallable, optional) – Callable for the optimizer. Defaults to DefaultOptimizerCallable.

  • scheduler (LRSchedulerCallable | LRSchedulerListCallable, optional) – Callable for the learning rate scheduler.

  • DefaultSchedulerCallable. (Defaults to) –

  • metric (MetricCallable, optional) – Callable for the metric. Defaults to SegmCallable.

  • torch_compile (bool, optional) – Flag to indicate whether to use torch.compile. Defaults to False.

  • tile_config (TileConfig, optional) – Configuration for tiling. Defaults to TileConfig(enable_tiler=False).

Initialize the base model with the given parameters.

Parameters:
  • label_info (LabelInfoTypes) – Information about the labels used in the model.

  • data_input_params (DataInputParams) – Parameters of the input data such as input size, mean, and std.

  • model_name (str, optional) – Name of the model. Defaults to “OTXModel”.

  • optimizer (OptimizerCallable, optional) – Callable for the optimizer. Defaults to DefaultOptimizerCallable.

  • scheduler (LRSchedulerCallable | LRSchedulerListCallable) – Callable for the learning rate scheduler. Defaults to DefaultSchedulerCallable.

  • metric (MetricCallable, optional) – Callable for the metric. Defaults to NullMetricCallable.

  • torch_compile (bool, optional) – Flag to indicate if torch.compile should be used. Defaults to False.

  • tile_config (TileConfig, optional) – Configuration for tiling. Defaults to TileConfig(enable_tiler=False).

Returns:

None

forward_explain(inputs: TorchDataBatch) TorchPredBatch[source]#

Model forward explain function.

forward_for_tracing(image: Tensor) Tensor | dict[str, Tensor][source]#

Model forward function used for the model tracing during model exportation.

forward_tiles(inputs: OTXTileBatchDataEntity) TorchPredBatch[source]#

Unpack segmentation tiles.

Parameters:

inputs (TileBatchSegDataEntity) – Tile batch data entity.

Returns:

Merged semantic segmentation prediction.

Return type:

TorchPredBatch

get_dummy_input(batch_size: int = 1) TorchDataBatch[source]#

Returns a dummy input for semantic segmentation model.

class otx.core.model.segmentation.OVSegmentationModel(model_name: str, model_type: str = 'Segmentation', async_inference: bool = True, max_num_requests: int | None = None, use_throughput_mode: bool = True, model_api_configuration: dict[str, Any] | None = None, metric: MetricCallable = <function _segm_callable>, **kwargs)[source]#

Bases: OVModel

Semantic segmentation model compatible for OpenVINO IR inference.

It can consume OpenVINO IR model path or model name from Intel OMZ repository and create the OTX segmentation model compatible for OTX testing pipeline.

Initialize the base model with the given parameters.

Parameters:
  • label_info (LabelInfoTypes) – Information about the labels used in the model.

  • data_input_params (DataInputParams) – Parameters of the input data such as input size, mean, and std.

  • model_name (str, optional) – Name of the model. Defaults to “OTXModel”.

  • optimizer (OptimizerCallable, optional) – Callable for the optimizer. Defaults to DefaultOptimizerCallable.

  • scheduler (LRSchedulerCallable | LRSchedulerListCallable) – Callable for the learning rate scheduler. Defaults to DefaultSchedulerCallable.

  • metric (MetricCallable, optional) – Callable for the metric. Defaults to NullMetricCallable.

  • torch_compile (bool, optional) – Flag to indicate if torch.compile should be used. Defaults to False.

  • tile_config (TileConfig, optional) – Configuration for tiling. Defaults to TileConfig(enable_tiler=False).

Returns:

None