Code Monkey home page Code Monkey logo

dualcross's Introduction

Run Docker to build environment usage: bash run_docker.sh donghe


DualCross: Cross-Modality Cross-Domain Adaptation for Monocular BEV Perception

Logo

IROS, 2023
Yunze Man · Liang-Yan Gui · Yu-Xiong Wang ·

Paper PDF Project Page Youtube Video Youtube Video


This repository contains a pytorch implementation for the paper: DualCross: Cross-Modality Cross-Domain Adaptation for Monocular BEV Perception. This work results in the first open analysis of cross-domain cross-sensor perception and adaptation for monocular 3D tasks in the wild.

Overview

overview

Preparation

Clone this repository:

git clone https://github.com/YunzeMan/DualCross
cd DualCross

Install requirements in a virtual environment (Tested on anaconda/miniconda environment):

conda create --name dualcross --file requirements.txt

Download nuscenes data from https://www.nuscenes.org/. Install dependencies.

pip install nuscenes-devkit tensorboardX efficientnet_pytorch==0.7.0

The code is tested on Python 3.6.10 with Pytorch 1.5.0+cu102 and 1.7.0+cu110.

Train a Model

To train the LiDAR-Teacher model first

python main.py train  --logdir=./runs-lteacher  --dataroot=/directory/to/dataset  --bsz=8  --gpuid=0  --domain_gap=True  --source='day'  --target='night'  --parser_name='lidarinputdata'  --up_scale=4  --color_jitter=True  --rand_resize=False  --teacher_student=True  --adv_training=False

To train the Image-Student model

python main.py train  --logdir=./runs-istudent  --dataroot=/directory/to/dataset  --bsz=4  --gpuid=0  --domain_gap=True  --source='day'  --target='night'  --parser_name='imglidardata'  --up_scale=4  --color_jitter=True --rand_resize=False  --adv_training=True  --align_place='midfinal'  --domainloss_lambda=0.1  --middomain_weight=0.1  --teacher_student=True  --train_student=True  --modelf_teacher=/directory/to/trained/teacher/model  --teacher_lambda=1.0  --use_gt=True  --gt_lambda=0.1  --use_depth=True  --depth_lambda=0.05

Visualize Results

python main.py viz_model_preds --domain_gap=True --source='day' --target='night' --gpuid=1  --nsweeps=1  --up_scale=4  --bsz=1  --version='trainval'  --modelf=/directory/to/trained/model  --parser_name='vizdata'  --viz_gt=False  --viz_depth=True  --mask_2d=True --sep_dpft=False  --strict_import=True  --adv_training=True  --align_midfin=True

Make Videos

python main.py make_video  --vis_folder='./visualization'  --vtype='tags'  --start_frame=0 --end_frame=150

A More Detailed Doc is Coming Soon

Demo

A comparison between Cross-domain Adaptation (Left) and DualCross (Right) on day -> night scenario.

Citation

If you find our work useful in your research, please cite:

@inproceedings{man2023dualcross,
  title={{DualCross: Cross-Modality Cross-Domain Adaptation for Monocular BEV Perception}},
  author={Man, Yunze and Gui, Liang-Yan and Wang, Yu-Xiong},
  booktitle={2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
  year={2023}
}

Acknowledgements

This repo is built based on the fantastic work Lift-Splat-Shoot by Jonah Philion and Sanja Fidler.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.