ICON
(TPAMI2022) Salient Object Detection via Integrity Learning.
Install / Use
/learn @mczhuge/ICONREADME
<p align=center>Salient Object Detection via Integrity Learning</p><!-- omit in toc -->
Authors: Mingchen Zhuge, Deng-Ping Fan, Nian Liu, Dingwen Zhang, Dong Xu, & Ling Shao.
This repository contains the source code, prediction results, and evaluation toolbox of our ICON method. The technical report could be found at [Paper][中文版].
Introduction

To facilitate integrity learning for SOD, we design a novel Integrity Cognition Network (ICON), which explores three important components to learn strong integrity features. 1) Unlike the existing models that focus more on feature discriminability, we introduce a diverse feature aggregation (DFA) component to aggregate features with various receptive fields (i.e., kernel shape and context) and increase the feature diversity. Such diversity is the foundation for mining the integral salient objects. 2) Based on the DFA features, we introduce the integrity channel enhancement (ICE) component with the goal of enhancing feature channels that highlight the integral salient objects (i.e., micro and macro levels) while suppressing the other distracting ones. 3) After extracting the enhanced features, the part-whole verification (PWV) method is employed to determine whether the part and whole object features have strong agreement. Such part-whole agreements can further improve the micro-level integrity for each salient object.
News
☀️ [2022/12/21] ICON's results on COD benchmark could be found at Google Drive. We appreciate CamoFormer's contribution, whose code is based on our ICON project as well.
☀️ [2022/07/05] Based on our code, Shi has published a TCSVT paper (SCI-Q1). Congratulation!
☀️ This is a friendly codebase for new learners in SOD (or any binary segmentation tasks):
-
it supports VGG, ResNet, PVT, Swin, CycleMLP as alternative encoders.
-
it ensembles the quick SOD evaltools.
-
it releases an efficient way to conduct the SOC dataset.
-
it gives a code for drawing PR/F-measre curves.
Get Start
0. Install
You could refer to here.
1. Download Datasets and Checkpoints.
- Datasets:
Baidu | 提取码:ICON or Goole Drive
also you could quikcly download by running:
wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=1aHYvxXGMsAS0yN4zhKt8kKorVL--9bLu' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1aHYvxXGMsAS0yN4zhKt8kKorVL--9bLu" -O datasets.zip && rm -rf /tmp/cookies.txt
- Checkpoints:
Baidu | 提取码:ICON or Goole Drive
also you could quikcly download by running:
wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=1wcL8n3lSc1pswMfDYCOBQJJjwnuhWdwK' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1wcL8n3lSc1pswMfDYCOBQJJjwnuhWdwK" -O checkpoint.zip && rm -rf /tmp/cookies.txt
2. Train ICON.
sh util/scripts/train_icon.sh
3. Test ICON.
sh util/scripts/test_icon.sh
4. Eval ICON.
sh util/scripts/run_sod_eval.sh
sh util/scripts/run_soc_eval.sh
Prediction Maps
- ICON-S saliency maps: Baidu | 提取码:ICON
- ICON-P saliency maps: Baidu | 提取码:ICON
- ICON-R saliency maps: Baidu | 提取码:ICON
- ICON-V saliency maps: Baidu | 提取码:ICON
- You can also find them in [Google Drive](- You can also find them in Google Drive.
Acknowlegement
Thanks Dawn-bin pointing out a code mistake. And thanks Jing-Hui Shi contributes a MLP-encoder version.
Citation
@article{zhuge2021salient,
title={Salient Object Detection via Integrity Learning},
author={Zhuge, Mingchen and Fan, Deng-Ping and Liu, Nian and Zhang, Dingwen and Xu, Dong and Shao, Ling},
journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
year={2022},
publisher={IEEE}
}
Related Skills
proje
Interactive vocabulary learning platform with smart flashcards and spaced repetition for effective language acquisition.
YC-Killer
2.7kA library of enterprise-grade AI agents designed to democratize artificial intelligence and provide free, open-source alternatives to overvalued Y Combinator startups. If you are excited about democratizing AI access & AI agents, please star ⭐️ this repository and use the link in the readme to join our open source AI research team.
groundhog
400Groundhog's primary purpose is to teach people how Cursor and all these other coding agents work under the hood. If you understand how these coding assistants work from first principles, then you can drive these tools harder (or perhaps make your own!).
workshop-rules
Materials used to teach the summer camp <Data Science for Kids>
