StarGAN v2 - Official PyTorch Implementation (CVPR 2020)

Overview

StarGAN v2 - Official PyTorch Implementation

StarGAN v2: Diverse Image Synthesis for Multiple Domains
Yunjey Choi*, Youngjung Uh*, Jaejun Yoo*, Jung-Woo Ha
In CVPR 2020. (* indicates equal contribution)

Paper: https://arxiv.org/abs/1912.01865
Video: https://youtu.be/0EVh5Ki4dIY

Abstract: A good image-to-image translation model should learn a mapping between different visual domains while satisfying the following properties: 1) diversity of generated images and 2) scalability over multiple domains. Existing methods address either of the issues, having limited diversity or multiple models for all domains. We propose StarGAN v2, a single framework that tackles both and shows significantly improved results over the baselines. Experiments on CelebA-HQ and a new animal faces dataset (AFHQ) validate our superiority in terms of visual quality, diversity, and scalability. To better assess image-to-image translation models, we release AFHQ, high-quality animal faces with large inter- and intra-domain variations. The code, pre-trained models, and dataset are available at clovaai/stargan-v2.

Teaser video

Click the figure to watch the teaser video.

IMAGE ALT TEXT HERE

TensorFlow implementation

The TensorFlow implementation of StarGAN v2 by our team member junho can be found at clovaai/stargan-v2-tensorflow.

Software installation

Clone this repository:

git clone https://github.com/clovaai/stargan-v2.git
cd stargan-v2/

Install the dependencies:

conda create -n stargan-v2 python=3.6.7
conda activate stargan-v2
conda install -y pytorch=1.4.0 torchvision=0.5.0 cudatoolkit=10.0 -c pytorch
conda install x264=='1!152.20180717' ffmpeg=4.0.2 -c conda-forge
pip install opencv-python==4.1.2.30 ffmpeg-python==0.2.0 scikit-image==0.16.2
pip install pillow==7.0.0 scipy==1.2.1 tqdm==4.43.0 munch==2.5.0

Datasets and pre-trained networks

We provide a script to download datasets used in StarGAN v2 and the corresponding pre-trained networks. The datasets and network checkpoints will be downloaded and stored in the data and expr/checkpoints directories, respectively.

CelebA-HQ. To download the CelebA-HQ dataset and the pre-trained network, run the following commands:

bash download.sh celeba-hq-dataset
bash download.sh pretrained-network-celeba-hq
bash download.sh wing

AFHQ. To download the AFHQ dataset and the pre-trained network, run the following commands:

bash download.sh afhq-dataset
bash download.sh pretrained-network-afhq

Generating interpolation videos

After downloading the pre-trained networks, you can synthesize output images reflecting diverse styles (e.g., hairstyle) of reference images. The following commands will save generated images and interpolation videos to the expr/results directory.

CelebA-HQ. To generate images and interpolation videos, run the following command:

python main.py --mode sample --num_domains 2 --resume_iter 100000 --w_hpf 1 \
               --checkpoint_dir expr/checkpoints/celeba_hq \
               --result_dir expr/results/celeba_hq \
               --src_dir assets/representative/celeba_hq/src \
               --ref_dir assets/representative/celeba_hq/ref

To transform a custom image, first crop the image manually so that the proportion of face occupied in the whole is similar to that of CelebA-HQ. Then, run the following command for additional fine rotation and cropping. All custom images in the inp_dir directory will be aligned and stored in the out_dir directory.

python main.py --mode align \
               --inp_dir assets/representative/custom/female \
               --out_dir assets/representative/celeba_hq/src/female

AFHQ. To generate images and interpolation videos, run the following command:

python main.py --mode sample --num_domains 3 --resume_iter 100000 --w_hpf 0 \
               --checkpoint_dir expr/checkpoints/afhq \
               --result_dir expr/results/afhq \
               --src_dir assets/representative/afhq/src \
               --ref_dir assets/representative/afhq/ref

Evaluation metrics

To evaluate StarGAN v2 using Fréchet Inception Distance (FID) and Learned Perceptual Image Patch Similarity (LPIPS), run the following commands:

# celeba-hq
python main.py --mode eval --num_domains 2 --w_hpf 1 \
               --resume_iter 100000 \
               --train_img_dir data/celeba_hq/train \
               --val_img_dir data/celeba_hq/val \
               --checkpoint_dir expr/checkpoints/celeba_hq \
               --eval_dir expr/eval/celeba_hq

# afhq
python main.py --mode eval --num_domains 3 --w_hpf 0 \
               --resume_iter 100000 \
               --train_img_dir data/afhq/train \
               --val_img_dir data/afhq/val \
               --checkpoint_dir expr/checkpoints/afhq \
               --eval_dir expr/eval/afhq

Note that the evaluation metrics are calculated using random latent vectors or reference images, both of which are selected by the seed number. In the paper, we reported the average of values from 10 measurements using different seed numbers. The following table shows the calculated values for both latent-guided and reference-guided synthesis.

Dataset FID (latent) LPIPS (latent) FID (reference) LPIPS (reference) Elapsed time
celeba-hq 13.73 ± 0.06 0.4515 ± 0.0006 23.84 ± 0.03 0.3880 ± 0.0001 49min 51s
afhq 16.18 ± 0.15 0.4501 ± 0.0007 19.78 ± 0.01 0.4315 ± 0.0002 64min 49s

Training networks

To train StarGAN v2 from scratch, run the following commands. Generated images and network checkpoints will be stored in the expr/samples and expr/checkpoints directories, respectively. Training takes about three days on a single Tesla V100 GPU. Please see here for training arguments and a description of them.

# celeba-hq
python main.py --mode train --num_domains 2 --w_hpf 1 \
               --lambda_reg 1 --lambda_sty 1 --lambda_ds 1 --lambda_cyc 1 \
               --train_img_dir data/celeba_hq/train \
               --val_img_dir data/celeba_hq/val

# afhq
python main.py --mode train --num_domains 3 --w_hpf 0 \
               --lambda_reg 1 --lambda_sty 1 --lambda_ds 2 --lambda_cyc 1 \
               --train_img_dir data/afhq/train \
               --val_img_dir data/afhq/val

Animal Faces-HQ dataset (AFHQ)

We release a new dataset of animal faces, Animal Faces-HQ (AFHQ), consisting of 15,000 high-quality images at 512×512 resolution. The figure above shows example images of the AFHQ dataset. The dataset includes three domains of cat, dog, and wildlife, each providing about 5000 images. By having multiple (three) domains and diverse images of various breeds per each domain, AFHQ sets a challenging image-to-image translation problem. For each domain, we select 500 images as a test set and provide all remaining images as a training set. To download the dataset, run the following command:

bash download.sh afhq-dataset

[Update: 2021.07.01] We rebuild the original AFHQ dataset by using high-quality resize filtering (i.e., Lanczos resampling). Please see the clean FID paper that brings attention to the unfortunate software library situation for downsampling. We thank to Alias-Free GAN authors for their suggestion and contribution to the updated AFHQ dataset. If you use the updated dataset, we recommend to cite not only our paper but also their paper.

The differences from the original dataset are as follows:

  • We resize the images using Lanczos resampling instead of nearest neighbor downsampling.
  • About 2% of the original images had been removed. So the set is now has 15803 images, whereas the original had 16130.
  • Images are saved as PNG format to avoid compression artifacts. This makes the files bigger than the original, but it's worth it.

To download the updated dataset, run the following command:

bash download.sh afhq-v2-dataset

License

The source code, pre-trained models, and dataset are available under Creative Commons BY-NC 4.0 license by NAVER Corporation. You can use, copy, tranform and build upon the material for non-commercial purposes as long as you give appropriate credit by citing our paper, and indicate if changes were made.

For business inquiries, please contact [email protected].
For technical and other inquires, please contact [email protected].

Citation

If you find this work useful for your research, please cite our paper:

@inproceedings{choi2020starganv2,
  title={StarGAN v2: Diverse Image Synthesis for Multiple Domains},
  author={Yunjey Choi and Youngjung Uh and Jaejun Yoo and Jung-Woo Ha},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  year={2020}
}

Acknowledgements

We would like to thank the full-time and visiting Clova AI Research (now NAVER AI Lab) members for their valuable feedback and an early review: especially Seongjoon Oh, Junsuk Choe, Muhammad Ferjad Naeem, and Kyungjune Baek. We also thank Alias-Free GAN authors for their contribution to the updated AFHQ dataset.

Comments
  • Questions about the batch size 4 model

    Questions about the batch size 4 model

      Hello, according to the source code you provided,  I keep the same parameters, except batchsize changed to 4, training a model.
      However, it was found that the batch size 4 model  was quite different from the official model, especially in terms of hairstyle and style diversification.
      Could you please help me to analyze the reason? Is it batch size or the parameter used by the official model is different from the source code?
      Thanks a million!
    
    opened by ypw1996 8
  • Segmentation fault when align custom images

    Segmentation fault when align custom images

    Hi @yunjey , thanks for great work! I followed your instruction to manually crop my own image and run the wing alignment, yet I get segmentation fault without any more error message. Please help

    Error below: UserWarning: Default upsampling behavior when mode=bilinear is changed to align_corners=False since 0.4.0. Please specify align_corners=True if the old behavior is desired. See the documentation of nn.Upsample for details. "See the documentation of nn.Upsample for details.".format(mode)) Segmentation fault

    opened by shiyingZhang90 8
  • Working on expr/results/celeba_hq/video_ref.mp4 Killed

    Working on expr/results/celeba_hq/video_ref.mp4 Killed

    Hey!

    I am following the readme tutorial but when I run the command

    python main.py --mode sample --num_domains 2 --resume_iter 100000 --w_hpf 1
    --checkpoint_dir expr/checkpoints/celeba_hq
    --result_dir expr/results/celeba_hq
    --src_dir assets/representative/celeba_hq/src
    --ref_dir assets/representative/celeba_hq/ref

    The video generation seems to go well but then after 100% it just print a "Killed" message and the video is not generated:

    Working on expr/results/celeba_hq/reference.jpg... /home/ubuntu/anaconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/nn/functional.py:2506: UserWarning: Default upsampling behavior when mode=bilinear is changed to align_corners=False since 0.4.0. Please specify align_corners=True if the old behavior is desired. See the documentation of nn.Upsample for details. "See the documentation of nn.Upsample for details.".format(mode)) Working on expr/results/celeba_hq/video_ref.mp4... video_ref: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [04:01<00:00, 7.54s/it] Killed

    opened by edmar 5
  • Use of masks and Highpass filter

    Use of masks and Highpass filter

    I would like to understand the intuition and improvement attained by using masks and w_hpf as in the following lines:

    1. At solver.py Line 106: masks = nets.fan.get_heatmap(x_real) if args.w_hpf > 0 else None
    2. At mode.py Line 182-185:
    if (masks is not None) and (x.size(2) in [32, 64, 128]):
                    mask = masks[0] if x.size(2) in [32] else masks[1]
                    mask = F.interpolate(mask, size=x.size(2), mode='bilinear')
                    x = x + self.hpf(mask * cache[x.size(2)])
    

    PS: I think both stargan and stargan v2 are impeccable researches.

    opened by arshagarwal 4
  • Using number of iterations but not Epoch for training

    Using number of iterations but not Epoch for training

    Hi, may i have a question about the implementation in solver.py of training step. In which the number of iterations (steps) is particularly used instead of number of epochs ?

    opened by tranctan 4
  • mode of sample and align

    mode of sample and align

    when i execute command of python main.py --mode sample --num_domains 2 --resume_iter 100000 --w_hpf 1
    --checkpoint_dir expr/checkpoints/celeba_hq
    --result_dir expr/results/celeba_hq
    --src_dir assets/representative/celeba_hq/src
    --ref_dir assets/representative/celeba_hq/ref or python main.py --mode align
    --inp_dir assets/representative/custom/female
    --out_dir assets/representative/celeba_hq/src/female

    the following error occurred: Traceback (most recent call last): File "main.py", line 182, in main(args) File "main.py", line 37, in main solver = Solver(args) File "/root/work/stargan-v2/core/solver.py", line 34, in init self.nets, self.nets_ema = build_model(args) File "/root/work/stargan-v2/core/model.py", line 300, in build_model fan = FAN(fname_pretrained=args.wing_path).eval() File "/root/work/stargan-v2/core/wing.py", line 213, in init self.load_pretrained_weights(fname_pretrained) File "/root/work/stargan-v2/core/wing.py", line 217, in load_pretrained_weights checkpoint = torch.load(fname) # map_location=torch.device('cpu')) File "/root/anaconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/serialization.py", line 526, in load if _is_zipfile(opened_file): File "/root/anaconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/serialization.py", line 76, in _is_zipfile if ord(magic_byte) != ord(read_byte): TypeError: ord() expected a character, but string of length 0 found

    and i have installed all dependencies and downloaded the corresponding datasets and checkpoints as your description in repository. could you tell me how to solve this problem? tks much

    opened by newExplore-hash 4
  • Path error upon running the example you provided to transform a custom image

    Path error upon running the example you provided to transform a custom image

    Probably caused by windows, edited the line 58 of solver to link directly to the checkpoint instead

    Traceback (most recent call last): File "main.py", line 182, in main(args) File "main.py", line 37, in main solver = Solver(args) File "D:\Documents\Desktop\StarGAN\core\solver.py", line 58, in init self.ckptios = [CheckpointIO(ospj(args.checkpoint_dir, '{:06d}_nets_ema.ckpt'), **self.nets_ema)] File "D:\Documents\Desktop\StarGAN\core\checkpoint.py", line 17, in init os.makedirs(os.path.dirname(fname_template), exist_ok=True) File "D:\Dev\Python\lib\os.py", line 220, in makedirs mkdir(name, mode) FileNotFoundError: [WinError 3] Path not found: '{:'

    opened by Remideza 4
  • Generate Image resolution higher than 256

    Generate Image resolution higher than 256

    Is it possible to generate image with resolution 512 or 1024? I tried the img_size argument in main.py to change it to 512, yet I got following errors, seems like the model doesn't support other resolution?

    RuntimeError: Error(s) in loading state_dict for Generator: Missing key(s) in state_dict: "encode.3.conv1x1.weight", "encode.7.conv1.weight", "encode.7.conv1.bias", "encode.7.conv2.weight", "encode.7.conv2.bias", "encode.7.norm1.weight", "encode.7.norm1.bias", "encode.7.norm2.weight", "encode.7.norm2.bias", "decode.7.conv1.weight", "decode.7.conv1.bias", "decode.7.conv2.weight", "decode.7.conv2.bias", "decode.7.norm1.fc.weight", "decode.7.norm1.fc.bias", "decode.7.norm2.fc.weight", "decode.7.norm2.fc.bias", "decode.7.conv1x1.weight". size mismatch for from_rgb.weight: copying a param with shape torch.Size([64, 3, 3, 3]) from checkpoint, the shape in current model is torch.Size([32, 3, 3, 3]). size mismatch for from_rgb.bias: copying a param with shape torch.Size([64]) from checkpoint, the shape in current model is torch.Size([32]).

    opened by shiyingZhang90 3
  • update generator

    update generator

    when updating the generator, the discriminator parameters should be fixed, but i found that you did not

    this part in solver.py (239-241): x_fake = nets.generator(x_real, s_trg, masks=masks) out = nets.discriminator(x_fake, y_trg) loss_adv = adv_loss(out, 1)

    i think maybe the following is right: x_fake = nets.generator(x_real, s_trg, masks=masks) with torch.no_grad(): out = nets.discriminator(x_fake, y_trg)

    loss_adv = adv_loss(out, 1)

    could tell me this right? tks

    opened by newExplore-hash 3
  • Heatmaps

    Heatmaps

    Hello, nice work. I have a couple of doubts regarding the heatmaps.

    1. Could you please elaborate on these values? Why resizing and shifting heatmaps and why those numbers for different regions of the face (x and x2)? In the main paper, there is nothing about heatmaps or keypoints, so I am trying to understand the intuition.

    2. Are wing.ckpt pre-trained weights the same as in this work, or do they differ in some way?

    3. Does CelebA_HQ work without heatmaps?

    Thanks :)

    opened by affromero 3
  • RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED

    RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED

    Namespace(batch_size=4, beta1=0.0, beta2=0.99, checkpoint_dir='expr/checkpoints', ds_iter=100000, eval_dir='expr/eval', eval_every=50000, f_lr=1e-06, hidden_dim=512, img_size=256, inp_dir='assets/representative/custom/crack', lambda_cyc=1, lambda_ds=1, lambda_reg=1, lambda_sty=1, latent_dim=16, lm_path='expr/checkpoints/celeba_lm_mean.npz', lr=0.0001, mode='train', num_domains=2, num_outs_per_domain=10, num_workers=4, out_dir='assets/representative/ourset/src/del', print_every=1, randcrop_prob=0.5, ref_dir='assets/representative/ourset/ref', result_dir='expr/results', resume_iter=0, sample_dir='expr/samples', sample_every=5000, save_every=10000, seed=777, src_dir='assets/representative/ourset/src', style_dim=64, total_iters=100000, train_img_dir='data/ourset/train', val_batch_size=32, val_img_dir='data/ourset/val', w_hpf=1, weight_decay=0.0001, wing_path='expr/checkpoints/wing.ckpt')
    Device: cuda
    Number of parameters of generator: 43467395
    Number of parameters of mapping_network: 2438272
    Number of parameters of style_encoder: 20916928
    Number of parameters of discriminator: 20852290
    Number of parameters of fan: 6333603
    Initializing generator...
    Initializing mapping_network...
    Initializing style_encoder...
    Initializing discriminator...
    Preparing DataLoader to fetch source images during the training phase...
    Preparing DataLoader to fetch reference images during the training phase...
    Preparing DataLoader for the generation phase...
    Start training...
    /home/user/miniconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/nn/functional.py:2506: UserWarning: Default upsampling behavior when mode=bilinear is changed to align_corners=False since 0.4.0. Please specify align_corners=True if the old behavior is desired. See the documentation of nn.Upsample for details.
      "See the documentation of nn.Upsample for details.".format(mode))
    Traceback (most recent call last):
      File "main.py", line 184, in <module>
        main(args)
      File "main.py", line 61, in main
        solver.train(loaders)
      File "/mnt/d/<username>/core/solver.py", line 107, in train
        masks = nets.fan.get_heatmap(x_real) if args.w_hpf > 0 else None
      File "/home/user/miniconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/autograd/grad_mode.py", line 49, in decorate_no_grad
        return func(*args, **kwargs)
      File "/mnt/d/<username>/core/wing.py", line 253, in get_heatmap
        outputs, _ = self(x_01)
      File "/home/user/miniconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/nn/modules/module.py", line 532, in __call__
        result = self.forward(*input, **kwargs)
      File "/mnt/d/<username>/core/wing.py", line 226, in forward
        x, _ = self.conv1(x)
      File "/home/user/miniconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/nn/modules/module.py", line 532, in __call__
        result = self.forward(*input, **kwargs)
      File "/mnt/d/<username>/core/wing.py", line 147, in forward
        ret = self.conv(ret)
      File "/home/user/miniconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/nn/modules/module.py", line 532, in __call__
        result = self.forward(*input, **kwargs)
      File "/home/user/miniconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/nn/modules/conv.py", line 345, in forward
        return self.conv2d_forward(input, self.weight)
      File "/home/user/miniconda3/envs/stargan-v2/lib/python3.6/site-packages/torch/nn/modules/conv.py", line 342, in conv2d_forward
        self.padding, self.dilation, self.groups)
    RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED
    
    opened by aliwaqas333 2
  • Error: From Generate Interpolation video

    Error: From Generate Interpolation video

    Error: Processed finished with exit code 137(interrupted by signed 9: SIGKILL)

    When the progress of video generation is 50%, the error occured. How can i do!

    opened by zhangqian001 0
  • Dataset acquisition

    Dataset acquisition

    Hello everyone, this is an outstanding achievement. We hope to showcase your work in the end-of-course report. I live in Chinese mainland, because of the wall, it is difficult to download the dataset of the project at high speed, can anyone kindly send me a copy? My mailbox is [email protected]

    opened by srx123456 0
  • Ask about reproducing the style synthesis results

    Ask about reproducing the style synthesis results

    Hi, I have tried implementing StarGAN v2 following the codes. After training, I met the poor generated images. Below results are output by trained my Generator for animal to animal translation. From left to right, content images, targeted style images and style synthesised images are displayed. As you could see, the output images had the random color images without content and style features. epoch50_fakeStyle_result

    About the parameters, I set

    • latent noise dim = 16
    • batch size = 8
    • Adam
    • -------Generator : learning rate = 1e-4, beta1=0.0, beta2=0.99, weight_decay=1e-4
    • -------Discriminator : learning rate = 1e-4, beta1=0.0, beta2=0.99, weight_decay=1e-4
    • -------Mapping Encoder (Latent Noise Encoder) : learning rate = 1e-6, beta1=0.0, beta2=0.99, weight_decay=1e-4
    • -------Style Encoder (Style Image Encoder) : learning rate = 1e-4, beta1=0.0, beta2=0.99, weight_decay=1e-4

    Could you give me the advices?

    opened by rkomatsu2020 1
Owner
Clova AI Research
Open source repository of Clova AI Research, NAVER & LINE
Clova AI Research
An official implementation of "SFNet: Learning Object-aware Semantic Correspondence" (CVPR 2019, TPAMI 2020) in PyTorch.

PyTorch implementation of SFNet This is the implementation of the paper "SFNet: Learning Object-aware Semantic Correspondence". For more information,

CV Lab @ Yonsei University 87 Dec 30, 2022
Official PyTorch code for CVPR 2020 paper "Deep Active Learning for Biased Datasets via Fisher Kernel Self-Supervision"

Deep Active Learning for Biased Datasets via Fisher Kernel Self-Supervision https://arxiv.org/abs/2003.00393 Abstract Active learning (AL) aims to min

Denis 29 Nov 21, 2022
The official implementation of Equalization Loss v1 & v2 (CVPR 2020, 2021) based on MMDetection.

The Equalization Losses for Long-tailed Object Detection and Instance Segmentation This repo is official implementation CVPR 2021 paper: Equalization

Jingru Tan 129 Dec 16, 2022
PyTorch implementation of CVPR 2020 paper (Reference-Based Sketch Image Colorization using Augmented-Self Reference and Dense Semantic Correspondence) and pre-trained model on ImageNet dataset

Reference-Based-Sketch-Image-Colorization-ImageNet This is a PyTorch implementation of CVPR 2020 paper (Reference-Based Sketch Image Colorization usin

Yuzhi ZHAO 11 Jul 28, 2022
Official code for "End-to-End Optimization of Scene Layout" -- including VAE, Diff Render, SPADE for colorization (CVPR 2020 Oral)

End-to-End Optimization of Scene Layout Code release for: End-to-End Optimization of Scene Layout CVPR 2020 (Oral) Project site, Bibtex For help conta

Andrew Luo 41 Dec 9, 2022
Official Pytorch implementation of 'GOCor: Bringing Globally Optimized Correspondence Volumes into Your Neural Network' (NeurIPS 2020)

Official implementation of GOCor This is the official implementation of our paper : GOCor: Bringing Globally Optimized Correspondence Volumes into You

Prune Truong 71 Nov 18, 2022
This is the official Pytorch implementation of "Lung Segmentation from Chest X-rays using Variational Data Imputation", Raghavendra Selvan et al. 2020

README This is the official Pytorch implementation of "Lung Segmentation from Chest X-rays using Variational Data Imputation", Raghavendra Selvan et a

Raghav 42 Dec 15, 2022
Unofficial implementation of "TTNet: Real-time temporal and spatial video analysis of table tennis" (CVPR 2020)

TTNet-Pytorch The implementation for the paper "TTNet: Real-time temporal and spatial video analysis of table tennis" An introduction of the project c

Nguyen Mau Dung 438 Dec 29, 2022
Implementation of CVPR 2020 Dual Super-Resolution Learning for Semantic Segmentation

Dual super-resolution learning for semantic segmentation 2021-01-02 Subpixel Update Happy new year! The 2020-12-29 update of SISR with subpixel conv p

Sam 79 Nov 24, 2022
Poplar implementation of "Bundle Adjustment on a Graph Processor" (CVPR 2020)

Poplar Implementation of Bundle Adjustment using Gaussian Belief Propagation on Graphcore's IPU Implementation of CVPR 2020 paper: Bundle Adjustment o

Joe Ortiz 34 Dec 5, 2022
UDP++ (ECCVW 2020 Oral), (Winner of COCO 2020 Keypoint Challenge).

UDP-Pose This is the pytorch implementation for UDP++, which won the Fisrt place in COCO Keypoint Challenge at ECCV 2020 Workshop. Top-Down Results on

null 20 Jul 29, 2022
Official pytorch implementation of paper "Inception Convolution with Efficient Dilation Search" (CVPR 2021 Oral).

IC-Conv This repository is an official implementation of the paper Inception Convolution with Efficient Dilation Search. Getting Started Download Imag

Jie Liu 111 Dec 31, 2022
Official PyTorch implementation of RobustNet (CVPR 2021 Oral)

RobustNet (CVPR 2021 Oral): Official Project Webpage Codes and pretrained models will be released soon. This repository provides the official PyTorch

Sungha Choi 173 Dec 21, 2022
Official pytorch implementation of Rainbow Memory (CVPR 2021)

Rainbow Memory: Continual Learning with a Memory of Diverse Samples

Clova AI Research 91 Dec 17, 2022
Official Pytorch implementation of "Beyond Static Features for Temporally Consistent 3D Human Pose and Shape from a Video", CVPR 2021

TCMR: Beyond Static Features for Temporally Consistent 3D Human Pose and Shape from a Video Qualtitative result Paper teaser video Introduction This r

Hongsuk Choi 215 Jan 6, 2023
Official PyTorch Implementation of Embedding Transfer with Label Relaxation for Improved Metric Learning, CVPR 2021

Embedding Transfer with Label Relaxation for Improved Metric Learning Official PyTorch implementation of CVPR 2021 paper Embedding Transfer with Label

Sungyeon Kim 37 Dec 6, 2022
Official PyTorch implementation of the preprint paper "Stylized Neural Painting", accepted to CVPR 2021.

Official PyTorch implementation of the preprint paper "Stylized Neural Painting", accepted to CVPR 2021.

Zhengxia Zou 1.5k Dec 28, 2022
Official PyTorch Implementation of Convolutional Hough Matching Networks, CVPR 2021 (oral)

Convolutional Hough Matching Networks This is the implementation of the paper "Convolutional Hough Matching Network" by J. Min and M. Cho. Implemented

Juhong Min 70 Nov 22, 2022
Official PyTorch implementation of "VITON-HD: High-Resolution Virtual Try-On via Misalignment-Aware Normalization" (CVPR 2021)

VITON-HD — Official PyTorch Implementation VITON-HD: High-Resolution Virtual Try-On via Misalignment-Aware Normalization Seunghwan Choi*1, Sunghyun Pa

Seunghwan Choi 250 Jan 6, 2023