• Stars
    star
    243
  • Rank 166,489 (Top 4 %)
  • Language
    Python
  • Created over 4 years ago
  • Updated about 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An official implementation of "Learning with Privileged Information for Efficient Image Super-Resolution" (ECCV2020) in PyTorch.

PyTorch implementation of PISR

This is an official implementation of the paper "Learning with Privileged Information for Efficient Image Super-Resolution", accepted to ECCV2020.

This work effectively boosts the performance of FSRCNN by exploiting a distillation framework, treating HR images as privileged information.

For more information, checkout the project site [website] and the paper [PDF].

Overview of our framework

no_image

Getting started

Dependencies

Docker

We provide a Dockerfile to reproduce our work easily.

$ docker build -t pisr:latest . # or docker pull wonkyunglee/pytorch_pisr:latest
$ docker run -it -v <working_dir>:/data -w /data pisr:latest /bin/bash

Datasets

  • For training and validation
    • DIV2K
  • For evaluation
    • Set5
    • Set14
    • B100
    • Urban100

Please download DIV2K dataset from here and other benchmark datasets from here.

After download all datasets, the folder data should be like this:

    data
    ├── benchmark
    │   ├── B100
    │   ├── Set14
    │   ├── Set5
    │   └── Urban100
    │       ├── HR
    │       └── LR_bicubic
    │           ├── X2
    │           ├── X3
    │           └── X4
    │      
    └── DIV2K
        ├── DIV2K_train_HR
        └── DIV2K_train_LR_bicubic
            ├── X2
            ├── X3
            └── X4

Training

First, clone our github repository.

$ git clone https://github.com/yonsei-cvlab/PISR.git

To train our teacher model, run the following script.

$ python step1_train_teacher.py --config configs/fsrcnn/step1.yml

To train our student model, run the following script.

$ python step2_train_student.py --config configs/fsrcnn/step2.yml

Using the pretrained models

  • Download pre-trained weights for teacher model into results/fsrcnn/fsrcnn_teacher/checkpoint/ folder.
    Link: [weights]
  • Download pre-trained weights for student model into results/fsrcnn/fsrcnn_student/checkpoint/ folder.
    Link: [weights]

Evaluation

To evaluate our student model, run following script. Benchmark datasets can be choosed by editing the config file configs/fsrcnn/base.ram.yml.

$ python evaluate.py --config configs/fsrcnn/step2.yml

Citation

@inproceedings{lee2020pisr,
    author={Lee, Wonkyung and Lee, Junghyup and Kim, Dohyung and Ham, Bumsub},
    title={Learning with Privileged Information for Efficient Image Super-Resolution},
    booktitle={Proceedings of European Conference on Computer Vision},
    year={2020},
}

Credit

Some parts of this code (e.g., data_loader) are based on EDSR-PyTorch repository.

More Repositories

1

MNAD

An official implementation of "Learning Memory-guided Normality for Anomaly Detection" (CVPR 2020) in PyTorch.
Python
336
star
2

projects

HTML
99
star
3

SFNet

An official implementation of "SFNet: Learning Object-aware Semantic Correspondence" (CVPR 2019, TPAMI 2020) in PyTorch.
Python
91
star
4

EWGS

An official implementation of "Network Quantization with Element-wise Gradient Scaling" (CVPR 2021) in PyTorch.
Python
88
star
5

dkn

An official implementation of "Deformable Kernel Network for Joint Image Filtering" (IJCV 2020) in PyTorch.
Python
75
star
6

RRID

An official implementation of "Relation Network for Person Re-identification" (AAAI 2020) in PyTorch.
Python
73
star
7

BANA

An official implementation of "Background-Aware Pooling and Noise-Aware Loss for Weakly-Supervised Semantic Segmentation" (CVPR 2021) in PyTorch.
Python
70
star
8

ISGAN

An official implementation of "Learning Disentangled Representation for Robust Person Re-identification" (NeurIPS 2019) in PyTorch.
Python
67
star
9

ACLS

An official implementation of "ACLS:Adaptive and Conditional Label Smoothing for Network Calibration" (ICCV 2023) in PyTorch.
Python
52
star
10

DKD

An official implementation of "Decomposed Knowledge Distillation for Class-incremental Semantic Segmentation" (NeurIPS 2022) in PyTorch.
Python
49
star
11

DAQ

An official PyTorch implementation of the paper "Distance-aware Quantization", ICCV 2021.
Python
46
star
12

HVPR

An official implementation of "HVPR: Hybrid Voxel-Point Representation for Single-stage 3D Object Detection" (CVPR 2021) in PyTorch.
Python
46
star
13

STMN

An official implementation of "Video-based Person Re-identification with Spatial and Temporal Memory Networks" (ICCV 2021) in PyTorch.
Python
46
star
14

DASS

An official PyTorch implementation of "Bi-directional Contrastive Learning for Domain Adaptive Semantic Segmentation", ECCV 2022.
Python
43
star
15

OIMNetPlus

An official PyTorch implementation of "OIMNet++: Prototypical Normalization and Localization-aware Learning for Person Search", ECCV 2022.
Python
41
star
16

AZ-NAS

An official implementation of "AZ-NAS: Assembling Zero-Cost Proxies for Network Architecture Search" (CVPR 2024) in PyTorch.
Python
41
star
17

ALIFE

An official implementation of "ALIFE: Adaptive Logit Regularizer and Feature Replay for Incremental Semantic Segmentation" (NeurIPS 2022) in PyTorch.
Python
40
star
18

Few-Shot-NAS

Python
39
star
19

LbA

An official PyTorch implementation of the paper "Learning by Aligning: Visible-Infrared Person Re-identification using Cross-Modal Correspondences", ICCV 2021.
Python
38
star
20

JoEm

An official implementation of "Exploiting a Joint Embedding Space for Generalized Zero-Shot Semantic Segmentation" (ICCV 2021) in PyTorch.
Python
37
star
21

FlowGRU

An official implementation of "Temporally Consistent Depth Prediction with Flow-Guided Memory Units" (TITS 2019) in Tensorflow.
Python
36
star
22

mixing-augmentation

Python
11
star
23

One-Shot-NAS

Jupyter Notebook
9
star
24

RankMixup

An official implementation of "RankMixup: Ranking-Based Mixup Training for Network Calibration" (ICCV 2023) in PyTorch.
Python
8
star
25

FYI

An official implementation of "FYI: Flip Your Images for Dataset Distillation" (ECCV 2024) in PyTorch.
Python
4
star
26

Multi-Task-Learning

Python
3
star