# irr **Repository Path**: xkc1995/irr ## Basic Information - **Project Name**: irr - **Description**: Iterative Residual Refinement for Joint Optical Flow and Occlusion Estimation (CVPR 2019) - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-10-18 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Iterative Residual Refinement
for Joint Optical Flow and Occlusion Estimation This repository is the PyTorch implementation of the paper: **Iterative Residual Refinement for Joint Optical Flow and Occlusion Estimation (CVPR 2019)** [Junhwa Hur](https://sites.google.com/site/hurjunhwa) and [Stefan Roth](https://www.visinf.tu-darmstadt.de/team_members/sroth/sroth.en.jsp) Department of Computer Science, TU Darmstadt [[Preprint]](https://arxiv.org/pdf/1904.05290.pdf)   [[Proceeding]](http://openaccess.thecvf.com/content_CVPR_2019/papers/Hur_Iterative_Residual_Refinement_for_Joint_Optical_Flow_and_Occlusion_Estimation_CVPR_2019_paper.pdf)   [[Supplemental]](http://openaccess.thecvf.com/content_CVPR_2019/supplemental/Hur_Iterative_Residual_Refinement_CVPR_2019_supplemental.pdf) Please cite the paper below if you find our paper and source codes are useful. @inproceedings{Hur:2019:IRR, Author = {Junhwa Hur and Stefan Roth}, Booktitle = {CVPR}, Title = {Iterative Residual Refinement for Joint Optical Flow and Occlusion Estimation}, Year = {2019} } Contact: junhwa.hur[at]visinf.tu-darmstadt.de ## Getting started This code has been developed under Anaconda(Python 3.6), Pytorch 0.4.1 and CUDA 8.0 on Ubuntu 16.04. 1. Please install the followings: - Anaconda (Python 3.6) - __PyTorch 0.4.1__ (Linux, Conda, Python 3.6, CUDA 8.0) - For __PyTorch 1.1__, Python 3.7, CUDA >= 9.0, the correlation module needs to be installed accordingly: - Please move all files in `models/correlation_package_cu9` to `models/correlation_package` (overwritting) - Depending on your system, configure `-gencode`, `-ccbin`, `cuda-path` in `models/correlation_package/setup.py` accordingly - tqdm (`conda install -c conda-forge tqdm`) 2. Then, install the correlation package: ``` ./install.sh ``` 3. The datasets used for this projects are followings: - [FlyingChairsOcc dataset](https://github.com/visinf/irr/tree/master/flyingchairsocc) - [MPI Sintel Dataset](http://sintel.is.tue.mpg.de/downloads) + [revised occlusion GT](https://www.dropbox.com/s/kwx1s5a8g7r0t2y/occlusions_rev.zip) - [KITTI Optical Flow 2015](http://www.cvlibs.net/datasets/kitti/eval_scene_flow.php?benchmark=flow) and [KITTI Optical Flow 2012](http://www.cvlibs.net/datasets/kitti/eval_stereo_flow.php?benchmark=flow) - [FlyingThings3D subset](https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html) ## Training The `scripts` folder contains training scripts of experiments demonstrated in the paper. To train the model, you can simply run the script file, e.g., `./IRR-PWC_flyingChairsOcc.sh`. In script files, please configure your own experiment directory (EXPERIMENTS_HOME) and dataset directory in your local system (e.g., SINTEL_HOME or KITTI_HOME). ## Pretrained Models The `saved_check_point` contains the pretrained models of *i)* baseline, *ii)* baseline + irr, and *iii)* full models. Additional pretrained models in the ablations study (Table 1 in the main paper) and their training scripts are available upon request. ## Inference The scripts for testing the pre-trained models are located in `scripts/validation`. ## Acknowledgement Portions of the source code (e.g., training pipeline, runtime, argument parser, and logger) are from [Jochen Gast](https://www.visinf.tu-darmstadt.de/team_members/jgast/jgast.en.jsp)