Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jbeomlee93/AdvCAM
Anti-Adversarially Manipulated Attributions for Weakly and Semi-Supervised Semantic Segmentation (CVPR 2021)
https://github.com/jbeomlee93/AdvCAM
advcam cvpr2021 weakly-supervised-learning weakly-supervised-segmentation
Last synced: about 1 month ago
JSON representation
Anti-Adversarially Manipulated Attributions for Weakly and Semi-Supervised Semantic Segmentation (CVPR 2021)
- Host: GitHub
- URL: https://github.com/jbeomlee93/AdvCAM
- Owner: jbeomlee93
- License: mit
- Created: 2021-03-08T08:36:28.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-07-13T01:48:46.000Z (over 2 years ago)
- Last Synced: 2024-08-03T01:11:52.655Z (5 months ago)
- Topics: advcam, cvpr2021, weakly-supervised-learning, weakly-supervised-segmentation
- Language: Python
- Homepage:
- Size: 2.62 MB
- Stars: 124
- Watchers: 2
- Forks: 16
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Anti-Adversarially Manipulated Attributions for Weakly and Semi-Supervised Semantic Segmentation
Input Image | Initial CAM | Successive Maps with adversarial climbing
:-------------------------:|:-------------------------:|:-------------------------:
![a](demo/2008_004430.jpg) | ![b](demo/2008_004430_noreg_c_idx_0_iter_0.jpg) | ![c](demo/2008_004430_gif.gif)The implementation of Anti-Adversarially Manipulated Attributions for Weakly and Semi-Supervised Semantic Segmentation, Jungbeom Lee, Eunji Kim, and Sungroh Yoon, CVPR 2021. [[paper](https://arxiv.org/abs/2103.08896)]
# Installation
- We kindly refer to the offical implementation of [IRN](https://github.com/jiwoon-ahn/irn).
- This repository is tested on Ubuntu 18.04, with Python 3.6, PyTorch 1.4, pydensecrf, scipy, chaniercv, imageio, and opencv-python.
## Usage#### Step 1. Prepare Dataset
- Download PASCAL VOC 2012 benchmark: [Download](https://drive.google.com/file/d/1e-yprFZzOYDAehjyMVyC5en5mNq6Mjh4/view?usp=sharing).
#### Step 2. Prepare pre-trained classifier
- Pre-trained model used in this paper: [Download](https://drive.google.com/file/d/1G0UkgjA4bndGBw2YFCrBpv71M5bj86qf/view?usp=sharing).
- You can also train your own classifiers following [IRN](https://github.com/jiwoon-ahn/irn).#### Step 3. Obtain the pseudo ground-truth masks for PASCAL VOC train_aug images and evaluate them
```
bash get_mask_quality.sh
```#### Step 4. Train a semantic segmentation network
- To train DeepLab-v2, we refer to [deeplab-pytorch](https://github.com/kazuto1011/deeplab-pytorch). However, this repo contains only COCO pre-trained model. We provide [ImageNet pre-trained model](https://drive.google.com/file/d/14soMKDnIZ_crXQTlol9sNHVPozcQQpMn/view?usp=sharing) for a fair comparison with the other methods.## Acknowledgment
This code is heavily borrowed from [IRN](https://github.com/jiwoon-ahn/irn), thanks [jiwoon-ahn](https://github.com/jiwoon-ahn)!