All Projects → ppliuboy → Selflow

ppliuboy / Selflow

Licence: mit
SelFlow: Self-Supervised Learning of Optical Flow

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Selflow

Ddflow
DDFlow: Learning Optical Flow with Unlabeled Data Distillation
Stars: ✭ 101 (-68.34%)
Mutual labels:  unsupervised-learning, optical-flow
Arflow
The official PyTorch implementation of the paper "Learning by Analogy: Reliable Supervision from Transformations for Unsupervised Optical Flow Estimation".
Stars: ✭ 134 (-57.99%)
Mutual labels:  unsupervised-learning, optical-flow
Voxelmorph
Unsupervised Learning for Image Registration
Stars: ✭ 1,057 (+231.35%)
Mutual labels:  unsupervised-learning, optical-flow
Cc
Competitive Collaboration: Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation
Stars: ✭ 348 (+9.09%)
Mutual labels:  unsupervised-learning, optical-flow
GuidedNet
Caffe implementation for "Guided Optical Flow Learning"
Stars: ✭ 28 (-91.22%)
Mutual labels:  optical-flow, unsupervised-learning
Hidden Two Stream
Caffe implementation for "Hidden Two-Stream Convolutional Networks for Action Recognition"
Stars: ✭ 179 (-43.89%)
Mutual labels:  unsupervised-learning, optical-flow
Back2future.pytorch
Unsupervised Learning of Multi-Frame Optical Flow with Occlusions
Stars: ✭ 104 (-67.4%)
Mutual labels:  unsupervised-learning, optical-flow
PCLNet
Unsupervised Learning for Optical Flow Estimation Using Pyramid Convolution LSTM.
Stars: ✭ 29 (-90.91%)
Mutual labels:  optical-flow, unsupervised-learning
Joint-Motion-Estimation-and-Segmentation
[MICCAI'18] Joint Learning of Motion Estimation and Segmentation for Cardiac MR Image Sequences
Stars: ✭ 45 (-85.89%)
Mutual labels:  optical-flow, unsupervised-learning
Unflow
UnFlow: Unsupervised Learning of Optical Flow with a Bidirectional Census Loss
Stars: ✭ 239 (-25.08%)
Mutual labels:  unsupervised-learning, optical-flow
deepOF
TensorFlow implementation for "Guided Optical Flow Learning"
Stars: ✭ 26 (-91.85%)
Mutual labels:  optical-flow, unsupervised-learning
back2future
Unsupervised Learning of Multi-Frame Optical Flow with Occlusions
Stars: ✭ 39 (-87.77%)
Mutual labels:  optical-flow, unsupervised-learning
adareg-monodispnet
Repository for Bilateral Cyclic Constraint and Adaptive Regularization for Unsupervised Monocular Depth Prediction (CVPR2019)
Stars: ✭ 22 (-93.1%)
Mutual labels:  unsupervised-learning
Pytorch Vsumm Reinforce
AAAI 2018 - Unsupervised video summarization with deep reinforcement learning (PyTorch)
Stars: ✭ 283 (-11.29%)
Mutual labels:  unsupervised-learning
learning-topology-synthetic-data
Tensorflow implementation of Learning Topology from Synthetic Data for Unsupervised Depth Completion (RAL 2021 & ICRA 2021)
Stars: ✭ 22 (-93.1%)
Mutual labels:  unsupervised-learning
dti-clustering
(NeurIPS 2020 oral) Code for "Deep Transformation-Invariant Clustering" paper
Stars: ✭ 60 (-81.19%)
Mutual labels:  unsupervised-learning
Fastmot
High-performance multiple object tracking based on YOLO, Deep SORT, and optical flow
Stars: ✭ 284 (-10.97%)
Mutual labels:  optical-flow
Sealion
The first machine learning framework that encourages learning ML concepts instead of memorizing class functions.
Stars: ✭ 278 (-12.85%)
Mutual labels:  unsupervised-learning
altair
Assessing Source Code Semantic Similarity with Unsupervised Learning
Stars: ✭ 42 (-86.83%)
Mutual labels:  unsupervised-learning
Speechsplit
Unsupervised Speech Decomposition Via Triple Information Bottleneck
Stars: ✭ 266 (-16.61%)
Mutual labels:  unsupervised-learning

SelFlow: Self-Supervised Learning of Optical Flow

The official Tensorflow implementation of SelFlow (CVPR 2019 Oral).

Authors: Pengpeng liu, Michael R. Lyu, Irwin King, Jia Xu

  • Testing code and part of pre-trained models are available.
  • Training code: please refer to DDFlow to implement. With the current testing code and DDFlow code, the only thing you need to do is write a superpixel generation script. We use skimage.segmentation.slic to generate superpixels.
  • Raw Sintel data used in the paper: download images from the link, resize the image to resolution [1024*436] with nearest neighbor sampling and find the training clips in clip split

Our SelFlow is the 1st place winner on Sintel Optical Flow Benchmark from November 2018 to November 2019.

Requirements

  • Software: The code was developed with python (both python 2 and python 3 are supported), opencv, tensorflow 1.8 and anaconda (optional). It's okay to run without anaconda, but you may need to install the lacking packages by yourself when needed. For tensorflow of different versions, you may need to modify some functions accordingly.

Dockerfile

There is a dockerfile with the neccesary dependencies which you can build with the command below.

docker build --network=host -t selflow .

You can run the docker image with command below.

docker run -it --rm --network=host -w /SelFlow selflow

You can then follow the instructions below to test the model

Usage

By default, you can get the testing results using the pre-trained Sintel model by running:

python main.py

Both forward and backward optical flow and their visualization will be written to the output folder.

Please refer to the configuration file template config for a detailed description of the different operating modes.

Testing

  • Edit config, set mode = test.
  • Create or edit a file, where the first three columns are the input image names, and the last column is the saving name.
  • Edit config and set data_list_file to the file directory.
  • Edit config and set img_dir to the directory of your image directory.
  • Run python main.py.
  • Note
    • Supervised pre-trained model: we normalize each channel to be standard normal distribution, please set is_normalize_img=True.
    • Unsupervised pre-trained model: please set is_normalize_img=False.

Pre-trained Models

Check models for our pre-trained models on different datasets.

Citation

If you find SelFlow useful in your research, please consider citing:

@inproceedings{Liu:2019:SelFlow, 
title = {SelFlow: Self-Supervised Learning of Optical Flow}, 
author = {Pengpeng Liu and Michael R. Lyu and Irwin King and Jia Xu}, 
booktitle = {CVPR}, 
year = {2019}
}

@inproceedings{Liu:2019:DDFlow, 
title = {DDFlow: Learning Optical Flow with Unlabeled Data Distillation}, 
author = {Pengpeng Liu and Irwin King and Michael R. Lyu and Jia Xu}, 
booktitle = {AAAI}, 
year = {2019}}

Acknowledgement

Part of our codes are adapted from PWC-Net and UnFlow, we thank the authors for their contributions.

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].