Open-source project
Pchank/caffe-sal avatar
Pchank/caffe-sal

caffe-sal: the Caffe and Matlab code behind three ICCV 2017 saliency models

Amulet and UCF methods for Saliency Detection

50 stars19 forksUnknownLicense varies

At a glance

What is it?
A research code drop for salient object detection, holding the Amulet and UCF models plus the stagewise refinement model SRM, where training runs on Caffe with a batch-normalisation trick borrowed from SegNet to save memory, and every evaluation number comes from a Matlab script rather than a Python notebook.
Who is it for?
This repository suits someone reproducing or comparing the 2017 saliency detection baselines in a Caffe and Matlab environment, where the training and evaluation scripts already exist and the PR curves are provided. It is a poor fit for a modern pipeline, since there is no Python path, no container, no licence file, and nothing has been committed since June 9, 2018.
Can I use it commercially?
Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
Is it still maintained?
Probably not. The repository last received commits 101 months ago, on June 9, 2018.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on October 4, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • Pchank/caffe-sal50 ★ · +0
Star history
Repository2026-08-182026-10-04
Pchank/caffe-sal5050

0 Stars in the last 47 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

Three models sit in a repository whose name mentions neither

The mismatch is worth naming first. The repository is called caffe-sal and described as Amulet and UCF methods for Saliency Detection, but the document inside it is titled IIAU (2017) Saliency Detection Models and covers three methods, since SRM is listed alongside Amulet and UCF. What the codebase contains is saliency detection models that appeared at ICCV 2017, built by delving into the convolutional features in pre-trained FCN models. The tree is also not a normal source layout: it holds IIAU2018.md, an IIAU_saliency2018 directory and the README itself, and the README describes itself as a single file. The source code is not in the repository at all, it is downloaded separately.

Amulet and UCF share a premise; SRM changes the author list

The three papers are listed with full titles and author lists. Amulet is Aggregating Multi-level Convolutional Features for Salient Object Detection, by Pingping Zhang, Dong Wang, Huchuan Lu, Hongyu Wang and Xiang Ruan. UCF is Learning Uncertain Convolutional Features for Accurate Saliency Detection, by the same group with Baocai Yin in place of Xiang Ruan. SRM is A Stagewise Refinement Model for Detecting Salient Objects in Images, and its list is different: Tiantian Wang, Ali Borji, Lihe Zhang, Pingping Zhang and Huchuan Lu. So two of the three share an author core and differ in the fifth name, while the third is a separate collaboration that the repository description leaves out entirely.

Model weights live behind three drives, and two links repeat

Each method is distributed through three mirrors, a Google Drive link, a OneDrive link and a Baidu Pan link. Amulet has its own set. UCF has its own Google Drive link, but its OneDrive and Baidu Pan links are the same two URLs listed under SRM, which looks like a copy from the section above rather than a distinct archive. That matters in practice, because a mirror that 404s for one method will fail for the other as well. The source code itself is a separate download from the method archives, again with Google Drive, OneDrive and Baidu Pan options, and the results, the saliency maps themselves, are distributed separately through Baidu only.

The prerequisite is a full Caffe toolbox with the Matlab wrappers

There is no build step to run here. The instruction is to follow the official Caffe framework website and install the whole toolbox, with the necessary Matlab wrappers called out as part of that, so the expectation is a working Caffe installation plus Matlab rather than a container or a Python environment. That single dependency shapes everything downstream: the training code is written for Caffe, and the entire evaluation path is Matlab scripts. Anyone planning to use these models with a current deep learning stack should expect to port the network definitions by hand, since nothing in the repository offers a modern loader.

Training is Caffe, with batch normalisation borrowed from SegNet

The training code sits in ./models/Amulet and ./models/UCF, and the note about SRM is that its title is listed without a training directory being pointed at. Memory is the stated reason for a specific choice: for saving memory the models use the batch-normalisation method implemented by Alex Kendall and colleagues at the SegNet project. Training then follows the examples that come with Caffe. Data enters through the ImageData layer, which loads training image pairs, and the data list those pairs come from is generated by Matlab rather than by a script in the repository, with lists hosted on Google Drive and Baidu Pan. The README is blunt about the remaining work: the only thing you need to change is the path of the data files.

Evaluation is five Matlab scripts, plus a folder of finished curves

The testing code lives in ./matlab/Amulet_test and ./matlab/UCF_test, and the saliency testing path is a fixed sequence of five files. test_saliency_dataset.m produces the predictions. PR.m computes the precision-recall values. code_pr.m plots the PR curves, code_bar.m plots bar figures, and getmae.m returns the mean absolute error for each method. Precomputed PR curves are already provided in ./PR_curves, which is the fastest way to compare against the published numbers without running the models at all. The tooling is therefore opinionated about how results are summarised: every comparison in this repository is expressed as a PR curve or an MAE produced by these scripts.

Citation blocks, contact addresses, and no commits since 2018

The document closes with citation instructions and a contact address. Three BibTeX entries are supplied: the Amulet paper as arXiv preprint 1708.02001 and as an ICCV 2017 proceedings entry dated October 2017, the UCF paper as arXiv preprint 1708.02031 with the matching ICCV entry, and the SRM paper as an ICCV entry with no preprint reference listed. Questions are directed to an email address in both a Gmail and a Dalian University of Technology form. Repository state is thin in a way worth checking before you build on it: no licence is declared, the primary language is not recorded, the default branch is master, and the last commit was June 9, 2018, which means the Caffe and Matlab versions it expects are eight years old.

Editorial conclusion

This repository suits someone reproducing or comparing the 2017 saliency detection baselines in a Caffe and Matlab environment, where the training and evaluation scripts already exist and the PR curves are provided. It is a poor fit for a modern pipeline, since there is no Python path, no container, no licence file, and nothing has been committed since June 9, 2018. Before you rely on it, install the full Caffe toolbox with its Matlab wrappers, generate the data lists in Matlab, and expect to fix the data paths yourself.

Frequently asked questions

Which saliency detection models are in the caffe-sal repository?

Three, all from ICCV 2017: Amulet for aggregating multi-level convolutional features, UCF for learning uncertain convolutional features, and SRM, a stagewise refinement model. The repository description names only Amulet and UCF, and the training directories pointed at are models/Amulet and models/UCF.

What do I need installed to run the caffe-sal models?

The whole Caffe toolbox with the necessary Matlab wrappers, following the official Caffe website, plus a separate download of the source code from Google Drive, OneDrive or Baidu Pan. Training uses Caffe and evaluation is done entirely with Matlab scripts.

How are the caffe-sal saliency models evaluated?

With five Matlab scripts under matlab/Amulet_test and matlab/UCF_test: test_saliency_dataset.m for predictions, PR.m for precision-recall values, code_pr.m and code_bar.m for plots, and getmae.m for mean absolute error per method. Precomputed PR curves are supplied in ./PR_curves.

How do I cite the caffe-sal models?

Three entries are provided: Amulet as arXiv preprint 1708.02001 and ICCV October 2017, UCF as arXiv preprint 1708.02031 and ICCV October 2017, and SRM as an ICCV October 2017 proceeding with no preprint listed.

Official sources

  1. Official README
  2. Project repository
  3. README
  4. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/pchank-caffe-sal.svg)](https://hysenlabs.com/projects/pchank-caffe-sal)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/pchank-caffe-sal.svg)](https://hysenlabs.com/projects/pchank-caffe-sal)