UnFlow: Unsupervised Learning of Optical Flow with a Bidirectional Census Loss
About
In the era of end-to-end deep learning, many advances in computer vision are driven by large amounts of labeled data. In the optical flow setting, however, obtaining dense per-pixel ground truth for real scenes is difficult and thus such data is rare. Therefore, recent end-to-end convolutional networks for optical flow rely on synthetic datasets for supervision, but the domain mismatch between training and test scenarios continues to be a challenge. Inspired by classical energy-based optical flow methods, we design an unsupervised loss based on occlusion-aware bidirectional flow estimation and the robust census transform to circumvent the need for ground truth flow. On the KITTI benchmarks, our unsupervised approach outperforms previous unsupervised deep networks by a large margin, and is even more accurate than similar supervised methods trained on synthetic datasets alone. By optionally fine-tuning on the KITTI training data, our method achieves competitive optical flow accuracy on the KITTI 2012 and 2015 benchmarks, thus in addition enabling generic pre-training of supervised networks for datasets with limited amounts of ground truth.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Optical Flow Estimation | KITTI 2015 (train) | Fl-epe8.1 | 431 | |
| Optical Flow Estimation | MPI Sintel Final (train) | Endpoint Error (EPE)7.91 | 209 | |
| Optical Flow | MPI Sintel Clean (test) | AEE9.38 | 158 | |
| Optical Flow | MPI-Sintel final (test) | EPE7.91 | 137 | |
| Optical Flow | KITTI 2012 (train) | -- | 115 | |
| Optical Flow Estimation | Sintel clean (test) | EPE9.38 | 103 | |
| Optical Flow Estimation | Sintel Final (test) | EPE10.21 | 101 | |
| Optical Flow | KITTI 2015 (test) | Fl Error (All)11.11 | 95 | |
| Optical Flow | Sintel Final (train) | EPE7.91 | 92 | |
| Optical Flow Estimation | KITTI 2015 (test) | Fl-all23.3 | 91 |