Code Monkey home page Code Monkey logo

neurai-lab / mt-sfmlearner Goto Github PK

View Code? Open in Web Editor NEW
9.0 3.0 2.0 2.18 MB

Official code for 'Transformers in Unsupervised Structure-from-Motion' and 'Transformers in Self-Supervised Monocular Depth Estimation with Unknown Camera Intrinsics'

License: MIT License

Makefile 0.76% Python 98.20% Dockerfile 1.04%
computer-vision deep-learning monocular-depth-estimation transformers ego-motion-estimation machine-learning monocular-visual-odometry robustness transformer-architecture transformer-models pose-estim

mt-sfmlearner's Introduction

MT-SfMLearner (v2)

This is the official code for VISAPP 2022 paper Transformers in Self-Supervised Monocular Depth Estimation with Unknown Camera Intrinsics and its extended paper in Springer CCIS, Transformers in Unsupervised Structure-from-Motion.

Authors: Hemang Chawla, Arnav Varma, Elahe Arani and Bahram Zonooz.

alt text

We propose MT-SfMLearner v1 and v2(pdf) that show how transformers are more competitive and robust for monocular depth estimation.

Install

Hardware details for original training of MT-SfMLearner (v2) can be found in respective papers.

git clone https://github.com/NeurAI-Lab/MT-SfMLearner.git
cd MT-SfMLearner
make docker-build

Training

MT-SfMLearner (v2) is trained in a self-supervised manner from videos. For training, utilize a .yaml config file or a .ckpt model checkpoint file with scripts/train.py.

python scripts/train.py <config_file.yaml or model_checkpoint.ckpt>

Example config file to train MIMDepth can be found in configs folder.

Evaluation

A trained model can be evaluated by providing a .ckpt model checkpoint.

python scripts/eval.py --checkpoint <model_checkpoint.ckpt>

For running inference on a single image or folder,

python scripts/infer.py --checkpoint <checkpoint.ckpt> --input <image or folder> --output <image or folder> [--image_shape <input shape (h,w)>]

Pretrained Models for MT-SfMLearner and MIMDepth can be found Coming soon!

Cite Our Work

If you find the code useful in your research, please consider citing our papers:

@inproceedings{chawlavarma2022MTSfMLearnerv2,
  title={Transformers in Unsupervised Structure-from-Motion},
  author={Chawla, Hemang and Varma, Arnav and Arani, Elahe and Zonooz, Bahram},
  booktitle={International Joint Conference on Computer Vision, Imaging and Computer Graphics, Revised Selected Papers},
  pages={281--303},
  year={2022},
  doi={10.1007/978-3-031-45725-8_14},
  organization={Springer Nature}
}
@inproceedings{varmachawla2022MTSfMLearner,
	author={A. {Varma} and H. {Chawla} and E. {Arani} and B. {Zonooz}},
    booktitle={Proceedings of the 17th International Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications (VISIGRAPP 2022) - Volume 4: VISAPP},
    year={2022},
    pages={758-769},
    publisher={SciTePress},
    doi={10.5220/0010884000003124},
}

License

This project is licensed under the terms of the MIT license.

mt-sfmlearner's People

Contributors

hemangchawla avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

mt-sfmlearner's Issues

Could you please share the source code with me?

Hello, I recently read your paper "Transformers in Self-Supervised Monocular Depth Estimation with Unknown Camera Intrinsics," and I would like to optimize it based on your work. Could you please share the source code with me?

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.