Code for the paper "Improving Vision-and-Language Navigation with Image-Text Pairs from the Web" (ECCV 2020)

Overview

Improving Vision-and-Language Navigation with Image-Text Pairs from the Web

Arjun Majumdar, Ayush Shrivastava, Stefan Lee, Peter Anderson, Devi Parikh, and Dhruv Batra

Paper: https://arxiv.org/abs/2004.14973

Model Zoo

A variety of pre-trained VLN-BERT weights can accessed through the following links:

Pre-training Stages Job ID Val Unseen SR URL
0 no pre-training 174631 30.52% TBD
1 1 175134 45.17% TBD
3 1 and 2 221943 49.64% download
2 1 and 3 220929 50.02% download
4 1, 2, and 3 (Full Model) 220825 59.26% download

Usage Instructions

Follow the instructions in INSTALL.md to setup this codebase. The instructions walk you through several steps including preprocessing the Matterport3D panoramas by extracting regions with a pretrained object detector.

Training

To preform stage 3 of pre-training, first download ViLBERT weights from here. Then, run:

python \
-m torch.distributed.launch \
--nproc_per_node=8 \
--nnodes=1 \
--node_rank=0 \
train.py \
--from_pretrained <path/to/vilbert_pytorch_model_9.bin> \
--save_name [pre_train_run_id] \
--num_epochs 50 \
--warmup_proportion 0.08 \
--cooldown_factor 8 \
--masked_language \
--masked_vision \
--no_ranking

To fine-tune VLN-BERT for the path selection task, run:

python \
-m torch.distributed.launch \
--nproc_per_node=8 \
--nnodes=1 \
--node_rank=0 \
train.py \
--from_pretrained <path/to/pytorch_model_50.bin> \
--save_name [fine_tune_run_id]

Evaluation

To evaluate a pre-trained model, run:

python test.py \
--split [val_seen|val_unseen] \
--from_pretrained <path/to/run_[run_id]_pytorch_model.bin> \
--save_name [run_id]

followed by:

python scripts/calculate-metrics.py <path/to/results_[val_seen|val_unseen].json>

Citation

If you find this code useful, please consider citing:

@inproceedings{majumdar2020improving,
  title={Improving Vision-and-Language Navigation with Image-Text Pairs from the Web},
  author={Arjun Majumdar and Ayush Shrivastava and Stefan Lee and Peter Anderson and Devi Parikh and Dhruv Batra},
  booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},
  year={2020}
}
Comments
  • Executing Training Script

    Executing Training Script

    Hello,

    I am executing the training script, and got the following output. I am following the instructions exactly as described in the READ.ME.

    (tvlnbert) rehmanm@kw60805:/data1/vln-bert$ python -m torch.distributed.launch --nproc_per_node=2 --nnodes=1 --node_rank=0 train.py --from_pretrained data/models/vilbert_pytorch_model_9.bin --save_name pre_train_run_id --num_epochs 50 --warmup_proportion 0.08 --cooldown_factor 8 --masked_language --masked_vision --no_ranking


    Setting OMP_NUM_THREADS environment variable for each process to be 1 in default, to avoid your system being overloaded, please further tune the variable for optimal performance in your application as needed.


    02/15/2021 18:43:27 - INFO - pytorch_pretrained_bert.tokenization - loading vocabulary file https://s3.amazonaws.com/models.huggingface.co/bert/bert-base-uncased-vocab.txt from cache at /home/rehmanm/.pytorch_pretrained_bert/26bc1ad6c0ac742e9b52263248f6d0f00068293b33709fae12320c0e35ccfbbb.542ce4285a40d23a559526243235df47c5f75c197f04f37d1a0c124c32c9a084 02/15/2021 18:43:27 - INFO - pytorch_pretrained_bert.tokenization - loading vocabulary file https://s3.amazonaws.com/models.huggingface.co/bert/bert-base-uncased-vocab.txt from cache at /home/rehmanm/.pytorch_pretrained_bert/26bc1ad6c0ac742e9b52263248f6d0f00068293b33709fae12320c0e35ccfbbb.542ce4285a40d23a559526243235df47c5f75c197f04f37d1a0c124c32c9a084 02/15/2021 18:43:27 - INFO - main - using provided training trajectories 02/15/2021 18:44:49 - WARNING - utils.dataset.beam_dataset - skipping index: 603 in beam data in from path: data/beamsearch/beams_val_seen.json 02/15/2021 18:44:49 - WARNING - utils.dataset.beam_dataset - skipping index: 661 in beam data in from path: data/beamsearch/beams_val_seen.json 02/15/2021 18:44:49 - WARNING - utils.dataset.beam_dataset - skipping index: 1016 in beam data in from path: data/beamsearch/beams_val_seen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 32 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 76 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 121 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 268 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 285 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 298 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 301 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 306 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 361 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 384 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 439 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 487 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 537 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 547 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 791 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 813 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 909 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 918 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 929 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 974 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1128 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1204 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1245 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1281 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1312 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1391 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1430 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1587 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1651 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1769 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1775 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1857 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1860 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1906 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1928 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 1996 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2061 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2070 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2085 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2128 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2204 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2226 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2235 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2261 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - WARNING - utils.dataset.beam_dataset - skipping index: 2329 in beam data in from path: data/beamsearch/beams_val_unseen.json 02/15/2021 18:44:57 - INFO - main - batch_size: 4 02/15/2021 18:44:57 - INFO - vilbert.vilbert - loading archive file data/models/vilbert_pytorch_model_9.bin 02/15/2021 18:44:57 - INFO - vilbert.vilbert - Model config { "attention_probs_dropout_prob": 0.1, "bi_attention_type": 1, "bi_hidden_size": 1024, "bi_intermediate_size": 1024, "bi_num_attention_heads": 8, "fast_mode": false, "fixed_t_layer": 0, "fixed_v_layer": 0, "fusion_method": "mul", "hidden_act": "gelu", "hidden_dropout_prob": 0.1, "hidden_size": 768, "in_batch_pairs": false, "initializer_range": 0.02, "intermediate_size": 3072, "intra_gate": false, "max_position_embeddings": 512, "num_attention_heads": 12, "num_hidden_layers": 12, "pooling_method": "mul", "predict_feature": false, "t_biattention_id": [ 6, 7, 8, 9, 10, 11 ], "type_vocab_size": 2, "v_attention_probs_dropout_prob": 0.1, "v_biattention_id": [ 0, 1, 2, 3, 4, 5 ], "v_feature_size": 2048, "v_hidden_act": "gelu", "v_hidden_dropout_prob": 0.1, "v_hidden_size": 1024, "v_initializer_range": 0.02, "v_intermediate_size": 1024, "v_num_attention_heads": 8, "v_num_hidden_layers": 6, "v_target_size": 1601, "vocab_size": 30522, "with_coattention": true }

    02/15/2021 18:45:02 - INFO - vilbert.vilbert - Weights of VLNBert not initialized from pretrained model: ['bert.v_embeddings.image_orientation_embeddings.weight', 'bert.v_embeddings.image_orientation_embeddings.bias', 'bert.v_embeddings.image_next_orientation_embeddings.weight', 'bert.v_embeddings.image_next_orientation_embeddings.bias', 'bert.v_embeddings.image_sequence_embeddings.weight', 'vil_logit.weight', 'vil_logit.bias'] 02/15/2021 18:45:02 - INFO - main - number of parameters: 250,086,014 02/15/2021 18:45:04 - INFO - main - using distributed data parallel 02/15/2021 18:45:04 - INFO - main - starting training... /home/rehmanm/anaconda3/envs/tvlnbert/lib/python3.8/site-packages/torch/optim/lr_scheduler.py:231: UserWarning: To get the last learning rate computed by the scheduler, please use get_last_lr(). warnings.warn("To get the last learning rate computed by the scheduler, " /data1/vln-bert/vilbert/optimization.py:166: UserWarning: This overload of add_ is deprecated: add_(Number alpha, Tensor other) Consider using one of the following signatures instead: add_(Tensor other, *, Number alpha) (Triggered internally at /opt/conda/conda-bld/pytorch_1595629411241/work/torch/csrc/utils/python_arg_parser.cpp:766.) exp_avg.mul_(beta1).add_(1.0 - beta1, grad) /data1/vln-bert/vilbert/optimization.py:166: UserWarning: This overload of add_ is deprecated: add_(Number alpha, Tensor other) Consider using one of the following signatures instead: add_(Tensor other, *, Number alpha) (Triggered internally at /opt/conda/conda-bld/pytorch_1595629411241/work/torch/csrc/utils/python_arg_parser.cpp:766.) exp_avg.mul_(beta1).add_(1.0 - beta1, grad)

    I would be grateful if you could let me know if this is expected or if I need to change something to fix this error.

    opened by ManaalAhi 5
  • Reproducing full model's weights

    Reproducing full model's weights

    Hi Arjun,

    I have some issues with reproducing your weights. I run the exact same commands as you wrote in your README.md. However, the performances are less good than yours.

    Here's the tensorboard of my success rate on val seen and val unseen when finetuning with ranking loss:

    SR on val seen and val unseen

    One explanation could that the pre-training phase was not trained for enough time. On the following plots, it sounds as is 50 epochs is not enough.

    word masking loss image masking loss

    Also, I wasn't testing with the exact same dependencies version, which might explain the differences. I am testing again with it.

    Thanks for your guidance, Pierre

    opened by guhur 3
  • Speaker + follower + VLNBERT baseline

    Speaker + follower + VLNBERT baseline

    Hi Arjun,

    I am trying to reproduce your results for your speaker + follower + VLNBERT baseline from your paper.

    Can you confirm me that what you did is basically train VLNBERT with the augmented paths from Tan et al.: http://www.cs.unc.edu/~airsplay/aug_paths.json ?

    Have you done any pre-processing step such that joining the augmented paths to create longer paths?

    Do you mind sharing the beams and the weights of this baseline?

    Thanks, Pierre

    opened by guhur 3
  • Sharing precomputed dataset

    Sharing precomputed dataset

    Hi,

    Do you plan to share the precomputed dataset with features extracted from bottomup attention?

    The manual computation is quite heavy to setup.

    Thanks for your answer!

    opened by guhur 3
  • Generating metrics for testing

    Generating metrics for testing

    The output test.py is producing a score file + a result file.

    In order to get proper metrics, I guess the result file should be fed into the eval.py from the original R2R codebase.

    But do you have a version that is directly compatible with your codebase?

    Thanks!

    opened by guhur 2
  • Converting results file into sucess rate

    Converting results file into sucess rate

    The output test.py is producing a score file + a result file.

    In order to get proper metrics, I guess the result file should be fed into the eval.py from the original R2R codebase.

    But do you have a version that is directly compatible with your codebase?

    Thanks!

    opened by guhur 2
  • Model differs from weights

    Model differs from weights

    When loading the model with weights 1+2+3 in eval.py (I am using only a subset of the precomputed dataset), I receive the warning:

    11/01/2020 14:53:40 - INFO - vilbert.vilbert -   Weights from pretrained model not used in VLNBert: ['vil_prediction.logit_fc.0.weight', 'vil_prediction.logit_fc.0.bias', 'vil_prediction.logit_fc.2.weight', 'vil_prediction.logit_fc.2.bias', 'vil_prediction.logit_fc.3.weight', 'vil_prediction.logit_fc.3.bias', 'vision_logit.weight', 'vision_logit.bias', 'linguisic_logit.weight', 'linguisic_logit.bias']
    

    Apparently, the model should be VILBERTForVLTasks whereas it is loading VLNBert. Is that correct?

    opened by guhur 2
  • Reproducing resources requirement

    Reproducing resources requirement

    Hi, I am trying to reproduce the work from the scratch. I used it on 24GB titan rtx and it is out of memory. May I ask what resources are required? Like how many GPU hours and what type of GPU.

    opened by g-jing 1
  • Questions about the full results with speaker follower

    Questions about the full results with speaker follower

    Hi Arjun,

    Thanks a lot for releasing the code! Is it possible that you can also share the code to reproduce the results in Table 3 of the paper? For example the way of combining with speaker follower models. Thanks in advance!

    opened by vincentlux 1
  • Request access to `scripts/download-auxilary-data.py`

    Request access to `scripts/download-auxilary-data.py`

    Hi Arjun,

    Thanks again for sharing your code ;)

    The INSTALL.md is referring to download-auxilary-data.py. I guess you didn't have time yet to upload it.

    Please tell me when you can :)

    opened by guhur 1
  • How to perform the data preprocessing

    How to perform the data preprocessing

    In your INSTALL.md, data preprocessing is summarized as a python script to download existing processed files.

    However, as your VLN-BERT model is transferable, I would like to try this on other datasets and other models. Hence, how to pre-process the data is very important to me.

    To be specific, I would like to learn about the settings of how to generate beam_[dataset].json and the scores_[dataset].json and which model is used to compute those beams (Is it just following this github repo? Have you ever changed anything?). As if we would like to combine VLN-BERT with Follower and Speaker, we have to use data from beam_[dataset].json.

    Could you please release more details about that?

    Thanks a lot!

    opened by IMNearth 0
  • CVE-2007-4559 Patch

    CVE-2007-4559 Patch

    Patching CVE-2007-4559

    Hi, we are security researchers from the Advanced Research Center at Trellix. We have began a campaign to patch a widespread bug named CVE-2007-4559. CVE-2007-4559 is a 15 year old bug in the Python tarfile package. By using extract() or extractall() on a tarfile object without sanitizing input, a maliciously crafted .tar file could perform a directory path traversal attack. We found at least one unsantized extractall() in your codebase and are providing a patch for you via pull request. The patch essentially checks to see if all tarfile members will be extracted safely and throws an exception otherwise. We encourage you to use this patch or your own solution to secure against CVE-2007-4559. Further technical information about the vulnerability can be found in this blog.

    If you have further questions you may contact us through this projects lead researcher Kasimir Schulz.

    opened by TrellixVulnTeam 0
  • Could you add a license file?

    Could you add a license file?

    Hi there, I could not find a license file in the repo. I see that Vilbert is under MIT license, are you also using MIT license? Could you please add a license file to the repo?

    opened by lavenderrz 0
Owner
Arjun Majumdar
PhD student at Georgia Tech.
Arjun Majumdar
Code for our paper at ECCV 2020: Post-Training Piecewise Linear Quantization for Deep Neural Networks

PWLQ Updates 2020/07/16 - We are working on getting permission from our institution to release our source code. We will release it once we are granted

null 54 Dec 15, 2022
Code for the paper: Adversarial Training Against Location-Optimized Adversarial Patches. ECCV-W 2020.

Adversarial Training Against Location-Optimized Adversarial Patches arXiv | Paper | Code | Video | Slides Code for the paper: Sukrut Rao, David Stutz,

Sukrut Rao 32 Dec 13, 2022
Code for ECCV 2020 paper "Contacts and Human Dynamics from Monocular Video".

Contact and Human Dynamics from Monocular Video This is the official implementation for the ECCV 2020 spotlight paper by Davis Rempe, Leonidas J. Guib

Davis Rempe 207 Jan 5, 2023
PyTorch code for our ECCV 2020 paper "Single Image Super-Resolution via a Holistic Attention Network"

HAN PyTorch code for our ECCV 2020 paper "Single Image Super-Resolution via a Holistic Attention Network" This repository is for HAN introduced in the

五维空间 140 Nov 23, 2022
PyTorch implementation of ECCV 2020 paper "Foley Music: Learning to Generate Music from Videos "

Foley Music: Learning to Generate Music from Videos This repo holds the code for the framework presented on ECCV 2020. Foley Music: Learning to Genera

Chuang Gan 30 Nov 3, 2022
Code for Towards Streaming Perception (ECCV 2020) :car:

sAP — Code for Towards Streaming Perception ECCV Best Paper Honorable Mention Award Feb 2021: Announcing the Streaming Perception Challenge (CVPR 2021

Martin Li 85 Dec 22, 2022
Source code for "Progressive Transformers for End-to-End Sign Language Production" (ECCV 2020)

Progressive Transformers for End-to-End Sign Language Production Source code for "Progressive Transformers for End-to-End Sign Language Production" (B

null 58 Dec 21, 2022
[ECCV 2020] Reimplementation of 3DDFAv2, including face mesh, head pose, landmarks, and more.

Stable Head Pose Estimation and Landmark Regression via 3D Dense Face Reconstruction Reimplementation of (ECCV 2020) Towards Fast, Accurate and Stable

Remilia Scarlet 221 Dec 30, 2022
1st Place Solution to ECCV-TAO-2020: Detect and Represent Any Object for Tracking

Instead, two models for appearance modeling are included, together with the open-source BAGS model and the full set of code for inference. With this code, you can achieve around mAP@23 with TAO test set (based on our estimation).

null 79 Oct 8, 2022
Repository for Traffic Accident Benchmark for Causality Recognition (ECCV 2020)

Causality In Traffic Accident (Under Construction) Repository for Traffic Accident Benchmark for Causality Recognition (ECCV 2020) Overview Data Prepa

Tackgeun 21 Nov 20, 2022
git《Learning Pairwise Inter-Plane Relations for Piecewise Planar Reconstruction》(ECCV 2020) GitHub:

Learning Pairwise Inter-Plane Relations for Piecewise Planar Reconstruction Code for the ECCV 2020 paper by Yiming Qian and Yasutaka Furukawa Getting

null 37 Dec 4, 2022
dataset for ECCV 2020 "Motion Capture from Internet Videos"

Motion Capture from Internet Videos Motion Capture from Internet Videos Junting Dong*, Qing Shuai*, Yuanqing Zhang, Xian Liu, Xiaowei Zhou, Hujun Bao

ZJU3DV 98 Dec 7, 2022
《Unsupervised 3D Human Pose Representation with Viewpoint and Pose Disentanglement》(ECCV 2020) GitHub: [fig9]

Unsupervised 3D Human Pose Representation [Paper] The implementation of our paper Unsupervised 3D Human Pose Representation with Viewpoint and Pose Di

null 42 Nov 24, 2022
SNE-RoadSeg in PyTorch, ECCV 2020

SNE-RoadSeg Introduction This is the official PyTorch implementation of SNE-RoadSeg: Incorporating Surface Normal Information into Semantic Segmentati

null 242 Dec 20, 2022
[ECCV 2020] Gradient-Induced Co-Saliency Detection

Gradient-Induced Co-Saliency Detection Zhao Zhang*, Wenda Jin*, Jun Xu, Ming-Ming Cheng ⭐ Project Home » The official repo of the ECCV 2020 paper Grad

Zhao Zhang 35 Nov 25, 2022
Sign Language Translation with Transformers (COLING'2020, ECCV'20 SLRTP Workshop)

transformer-slt This repository gathers data and code supporting the experiments in the paper Better Sign Language Translation with STMC-Transformer.

Kayo Yin 107 Dec 27, 2022
IAST: Instance Adaptive Self-training for Unsupervised Domain Adaptation (ECCV 2020)

This repo is the official implementation of our paper "Instance Adaptive Self-training for Unsupervised Domain Adaptation". The purpose of this repo is to better communicate with you and respond to your questions. This repo is almost the same with Another-Version, and you can also refer to that version.

CVSM Group -  email: czhu@bupt.edu.cn 84 Dec 12, 2022
Boundary-preserving Mask R-CNN (ECCV 2020)

BMaskR-CNN This code is developed on Detectron2 Boundary-preserving Mask R-CNN ECCV 2020 Tianheng Cheng, Xinggang Wang, Lichao Huang, Wenyu Liu Video

Hust Visual Learning Team 178 Nov 28, 2022
Self-Supervised Monocular 3D Face Reconstruction by Occlusion-Aware Multi-view Geometry Consistency[ECCV 2020]

Self-Supervised Monocular 3D Face Reconstruction by Occlusion-Aware Multi-view Geometry Consistency(ECCV 2020) This is an official python implementati

null 304 Jan 3, 2023