All Projects → tonyjo → edlsm_pytorch

tonyjo / edlsm_pytorch

Licence: MIT license
Pytorch implementation for stereo matching described in the paper: Efficient Deep learning for stereo matching

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to edlsm pytorch

semi-global-matching
Semi-Global Matching
Stars: ✭ 122 (+662.5%)
Mutual labels:  stereo-vision, stereo-matching
Openmvs
open Multi-View Stereo reconstruction library
Stars: ✭ 1,842 (+11412.5%)
Mutual labels:  stereo-vision, stereo-matching
ONNX-HITNET-Stereo-Depth-estimation
Python scripts form performing stereo depth estimation using the HITNET model in ONNX.
Stars: ✭ 21 (+31.25%)
Mutual labels:  stereo-vision, stereo-matching
UAV-Stereo-Vision
A program for controlling a micro-UAV for obstacle detection and collision avoidance using disparity mapping
Stars: ✭ 30 (+87.5%)
Mutual labels:  stereo-vision, stereo-matching
PatchMatchCuda
The PatchMatch stereo match algorithm implemented by CUDA.
Stars: ✭ 32 (+100%)
Mutual labels:  stereo-vision, stereo-matching
SASensorProcessing
ROS node to create pointcloud out of stereo images from the KITTI Vision Benchmark Suite
Stars: ✭ 26 (+62.5%)
Mutual labels:  stereo-vision, stereo-matching
Pandora
A stereo matching framework that will help you design your stereo matching pipeline with state of the art performances.
Stars: ✭ 31 (+93.75%)
Mutual labels:  stereo-vision, stereo-matching
RealtimeStereo
Attention-Aware Feature Aggregation for Real-time Stereo Matching on Edge Devices (ACCV, 2020)
Stars: ✭ 110 (+587.5%)
Mutual labels:  stereo-vision, stereo-matching
sparse-scene-flow
This repo contains C++ code for sparse scene flow method.
Stars: ✭ 23 (+43.75%)
Mutual labels:  stereo-vision
MetaD2A
Official PyTorch implementation of "Rapid Neural Architecture Search by Learning to Generate Graphs from Datasets" (ICLR 2021)
Stars: ✭ 49 (+206.25%)
Mutual labels:  efficient-deep-learning
mobilestereonet
Lightweight stereo matching network based on MobileNet blocks
Stars: ✭ 92 (+475%)
Mutual labels:  stereo-vision
Reversing
Code for "Reversing the cycle: self-supervised deep stereo through enhanced monocular distillation"
Stars: ✭ 43 (+168.75%)
Mutual labels:  stereo-matching
zed-pytorch
3D Object detection using the ZED and Pytorch
Stars: ✭ 41 (+156.25%)
Mutual labels:  stereo-vision
RoboVision
Attempting to create a program capable of combining stereo video input , with motors and other sensors on a PC running linux , the target is embedded linux for use in a robot!
Stars: ✭ 21 (+31.25%)
Mutual labels:  stereo-vision
jpp
Joint Perception and Planning For Efficient Obstacle Avoidance Using Stereo Vision
Stars: ✭ 42 (+162.5%)
Mutual labels:  stereo-vision
StereoVisionforADAS
Stereo vision based object detection for ADAS, autonomous vehicle
Stars: ✭ 137 (+756.25%)
Mutual labels:  stereo-vision
DispNet-TensorFlow
TensorFlow implementation of DispNet by Zhijian Jiang.
Stars: ✭ 55 (+243.75%)
Mutual labels:  stereo-vision
Awesome 3dreconstruction list
A curated list of papers & resources linked to 3D reconstruction from images.
Stars: ✭ 3,151 (+19593.75%)
Mutual labels:  stereo-vision
dispflownet-tf
Tensorflow implementation of https://lmb.informatik.uni-freiburg.de/Publications/2016/MIFDB16 + pretrained weights + implementation of "Unsupervised Adaptation for Deep Stereo" (ICCV 2017)
Stars: ✭ 18 (+12.5%)
Mutual labels:  stereo-vision
IRONSIDES
Trifo Ironsides SDK
Stars: ✭ 17 (+6.25%)
Mutual labels:  stereo-vision

EDLSM

This is a Pytorch implementation for stereo matching described in the paper: Efficient Deep learning for stereo matching

Sample Output

alt text

Prerequisites

  1. Pytorch Version --v0.4 with CUDA > 8.0
  2. Numpy --v1.14
  3. OpenCV --v3.2
  4. Matplotlib --v2.1

Preparing training and validation data

First we need to generate the valid pixel locations.

  1. Download the KITTI 2015 dataset.
  2. Go to the cloned EDLSM folder and run the following command:
mkdir dataset

python prepare_kitti_dataset.py  --dataset_dir=/path/to/data_scene_flow/training --dump_root=./dataset

Note: In order to see other changeable parameters such as patch size, image height/width, train/val split etc, run the following command:

python prepare_kitti_dataset.py  --h

Training

Once the data is successfully prepared, the model can be trained by running the following command:

python train.py --dataset_dir=/path/to/data_scene_flow/training --train_dataset_name=tr_160_18_100.txt --checkpoint_dir=/where/to/store/checkpoints

Note: In order to see other changeable parameters such as batch size, image height/width, pixel weights, etc., run the following command:

python prepare_kitti_dataset.py  --h

In order to see the training loss graph open a tensorboard session by

tensorboard --logdir=./logs --port 8080

Inference

Once model is trained, we can generate disparity map by running the following command:

python inference_match.py --dataset_dir=/path/to/data_scene_flow/training --checkpoint_dir=/where/checkpoints/stored --checkpoint_file=eldsm_38000 --test_num=82

Note: In order to see other changeable parameters such as image height/width,disparity range, etc, run the following command:

python inference_match.py  --h

Future Work

Implement the post-processing steps.

Code citation

Original Code: https://bitbucket.org/saakuraa/cvpr16_stereo_public

Pytorch Code: https://github.com/vijaykumar01/stereo_matching

Paper citation

@inproceedings{luo2016efficient,
  title={Efficient deep learning for stereo matching},
  author={Luo, Wenjie and Schwing, Alexander G and Urtasun, Raquel},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  pages={5695--5703},
  year={2016}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].