PerturbationOcclusion
- class xaitk_saliency.impls.gen_object_detector_blackbox_sal.occlusion_based.PerturbationOcclusion(perturber: PerturbImage, generator: GenerateDetectorProposalSaliency, fill: int | Sequence[int] | ndarray | None = None, threads: int | None = 0)
Generator composed of modular perturbation and occlusion-based algorithms.
This implementation exposes its fill attribute as public. This allows it to be set during runtime as this is most often driven by the black-box algorithm used, if at all.
Methods
Create a PerturbationOcclusion instance from a configuration dictionary.
generate
Generate per-detection visual saliency heatmaps for some object detector black-box over some input reference detections from some input reference image.
Get the configuration dictionary of the PerturbationOcclusion instance.
Returns the default configuration for the PerturbationOcclusion.
get_impls
Discover and return a set of classes that implement the calling class.
is_usable
Check whether this class is available for use.
- __init__(perturber: PerturbImage, generator: GenerateDetectorProposalSaliency, fill: int | Sequence[int] | ndarray | None = None, threads: int | None = 0) None
Generator composed of modular perturbation and occlusion-based algorithms.
- Parameters:
perturber – PerturbImage implementation instance for generating occlusion masks.
generator – GenerateDetectorProposalSaliency implementation instance for generating saliency masks given occlusion masks and black-box detector outputs.
fill – Optional fill for alpha-blending the occluded regions based on the masks generated by the given perturber. Can be a scalar value, a per-channel sequence or a shape-matched image.
threads – Optional number threads to use to enable parallelism in applying perturbation masks to an input image. If 0, a negative value, or None, work will be performed on the main-thread in-line.
- classmethod from_config(config_dict: dict, merge_default: bool = True) C
Create a PerturbationOcclusion instance from a configuration dictionary.
- Args:
config_dict (dict): Configuration dictionary with perturber details. merge_default (bool): Whether to merge with the default configuration.
- Returns:
PerturbationOcclusion: An instance of PerturbationOcclusion.
- get_config() dict[str, Any]
Get the configuration dictionary of the PerturbationOcclusion instance.
- Returns:
dict[str, Any]: Configuration dictionary.
- classmethod get_default_config() dict[str, Any]
Returns the default configuration for the PerturbationOcclusion.
This method provides a default configuration dictionary, specifying default values for key parameters in the factory. It can be used to create an instance of the factory with preset configurations.
- Returns:
dict[str, Any]: A dictionary containing default configuration parameters.