anomalib.deploy¶
Functions for Inference and model deployment.
Subpackages¶
Submodules¶
Package Contents¶
Classes¶
OpenVINO implementation for the inference. |
|
PyTorch implementation for the inference. |
Functions¶
|
Export the model to onnx format and convert to OpenVINO IR. |
|
Get meta data related to normalization from model. |
- class anomalib.deploy.OpenVINOInferencer(config: Union[omegaconf.DictConfig, omegaconf.ListConfig], path: Union[str, pathlib.Path, Tuple[bytes, bytes]], meta_data_path: Union[str, pathlib.Path] = None)¶
Bases:
anomalib.deploy.inferencers.base.InferencerOpenVINO implementation for the inference.
- Parameters
config (DictConfig) – Configurable parameters that are used during the training stage.
path (Union[str, Path]) – Path to the openvino onnx, xml or bin file.
meta_data_path (Union[str, Path], optional) – Path to metadata file. Defaults to None.
- load_model(self, path: Union[str, pathlib.Path, Tuple[bytes, bytes]])¶
Load the OpenVINO model.
- Parameters
path (Union[str, Path, Tuple[bytes, bytes]]) – Path to the onnx or xml and bin files or tuple of .xml and .bin data as bytes.
- Returns
- Input and Output blob names
together with the Executable network.
- Return type
[Tuple[str, str, ExecutableNetwork]]
- pre_process(self, image: numpy.ndarray) numpy.ndarray¶
Pre process the input image by applying transformations.
- Parameters
image (np.ndarray) – Input image.
- Returns
pre-processed image.
- Return type
np.ndarray
- forward(self, image: numpy.ndarray) numpy.ndarray¶
Forward-Pass input tensor to the model.
- Parameters
image (np.ndarray) – Input tensor.
- Returns
Output predictions.
- Return type
np.ndarray
- post_process(self, predictions: numpy.ndarray, meta_data: Optional[Union[Dict, omegaconf.DictConfig]] = None) Tuple[numpy.ndarray, float]¶
Post process the output predictions.
- Parameters
predictions (np.ndarray) – Raw output predicted by the model.
meta_data (Dict, optional) – Meta data. Post-processing step sometimes requires additional meta data such as image shape. This variable comprises such info. Defaults to None.
- Returns
Post processed predictions that are ready to be visualized.
- Return type
np.ndarray
- class anomalib.deploy.TorchInferencer(config: Union[omegaconf.DictConfig, omegaconf.ListConfig], model_source: Union[str, pathlib.Path, anomalib.models.components.AnomalyModule], meta_data_path: Union[str, pathlib.Path] = None)¶
Bases:
anomalib.deploy.inferencers.base.InferencerPyTorch implementation for the inference.
- Parameters
config (DictConfig) – Configurable parameters that are used during the training stage.
model_source (Union[str, Path, AnomalyModule]) – Path to the model ckpt file or the Anomaly model.
meta_data_path (Union[str, Path], optional) – Path to metadata file. If none, it tries to load the params from the model state_dict. Defaults to None.
- _load_meta_data(self, path: Optional[Union[str, pathlib.Path]] = None) Union[Dict, omegaconf.DictConfig]¶
Load metadata from file or from model state dict.
- Parameters
path (Optional[Union[str, Path]], optional) – Path to metadata file. If none, it tries to load the params from the model state_dict. Defaults to None.
- Returns
Dictionary containing the meta_data.
- Return type
Dict
- load_model(self, path: Union[str, pathlib.Path]) anomalib.models.components.AnomalyModule¶
Load the PyTorch model.
- Parameters
path (Union[str, Path]) – Path to model ckpt file.
- Returns
PyTorch Lightning model.
- Return type
- pre_process(self, image: numpy.ndarray) torch.Tensor¶
Pre process the input image by applying transformations.
- Parameters
image (np.ndarray) – Input image
- Returns
pre-processed image.
- Return type
Tensor
- forward(self, image: torch.Tensor) torch.Tensor¶
Forward-Pass input tensor to the model.
- Parameters
image (Tensor) – Input tensor.
- Returns
Output predictions.
- Return type
Tensor
- post_process(self, predictions: torch.Tensor, meta_data: Optional[Union[Dict, omegaconf.DictConfig]] = None) Tuple[numpy.ndarray, float]¶
Post process the output predictions.
- Parameters
predictions (Tensor) – Raw output predicted by the model.
meta_data (Dict, optional) – Meta data. Post-processing step sometimes requires additional meta data such as image shape. This variable comprises such info. Defaults to None.
- Returns
Post processed predictions that are ready to be visualized.
- Return type
np.ndarray
- anomalib.deploy.export_convert(model: anomalib.models.components.AnomalyModule, input_size: Union[List[int], Tuple[int, int]], onnx_path: Union[str, pathlib.Path], export_path: Union[str, pathlib.Path])[source]¶
Export the model to onnx format and convert to OpenVINO IR.
- Parameters
model (AnomalyModule) – Model to convert.
input_size (Union[List[int], Tuple[int, int]]) – Image size used as the input for onnx converter.
onnx_path (Union[str, Path]) – Path to output onnx model.
export_path (Union[str, Path]) – Path to exported OpenVINO IR.
- anomalib.deploy.get_model_metadata(model: anomalib.models.components.AnomalyModule) Dict[str, torch.Tensor][source]¶
Get meta data related to normalization from model.
- Parameters
model (AnomalyModule) – Anomaly model which contains metadata related to normalization.
- Returns
metadata
- Return type
Dict[str, Tensor]