SESS

August 11, 2026 ยท View on GitHub

Saliency Enhancing with Scaling and Sliding

SESS: Saliency Enhancing with Scaling and Sliding [arXiv]

@inproceedings{
  tursun2022sess,
  title={{SESS}: Saliency Enhancing with Scaling and Sliding},
  author={Osman Tursun and Simon Denman and Sridha Sridharan and Clinton Fookes},
  booktitle={European Conference on Computer Vision (ECCV)},
  year={2022}
}

Overview

SESS is a method and model agnostic extension to existing saliency map generation methods. With SESS, existing saliency approaches become robust to scale variance, multiple occurrences of target objects, presence of distractors and generate less noisy and more discriminative saliency maps. SESS improves saliency by fusing saliency maps extracted from multiple patches at different scales from different areas, and combines these individual maps using a novel fusion scheme that incorporates channel-wise weights and spatial weighted average. SESS is efficient, as it applies a pre-filtering step that can exclude uninformative saliency maps to improve efficiency while still enhancing overall results.

SESS

SESS in pytorch-grad-cam

SESS is also available as a drop-in meta-method for pytorch-grad-cam, where it enhances any of the CAM methods of that library (GradCAM, GradCAM++, ScoreCAM, XGradCAM, EigenCAM, LayerCAM, ...). It lives on the sess branch of this fork:

pip install git+https://github.com/neouyghur/pytorch-grad-cam.git@sess
from pytorch_grad_cam import SESS, GradCAM
from pytorch_grad_cam.utils.model_targets import ClassifierOutputTarget

with SESS(model=model,
          target_layers=[model.layer4[-1]],
          base_method=GradCAM) as cam:
    grayscale_cam = cam(input_tensor=input_tensor,
                        targets=[ClassifierOutputTarget(243)])

That implementation reproduces the saliency maps of this repository, and adds batched patch processing and support for the pytorch-grad-cam target and metric APIs.

Requirements

  • PIL
  • cv2
  • matplotlib
  • numpy
  • torch
  • torchvision

Other

  • Note some parts of the codes are taken from [group-CAM]
  • If you have any questions, feel free to open an issue