Liu Pengpeng, Lyu Michael R, King Irwin, Xu Jia
IEEE Trans Pattern Anal Mach Intell. 2022 Sep;44(9):5026-5041. doi: 10.1109/TPAMI.2021.3085525. Epub 2022 Aug 4.
We present DistillFlow, a knowledge distillation approach to learning optical flow. DistillFlow trains multiple teacher models and a student model, where challenging transformations are applied to the input of the student model to generate hallucinated occlusions as well as less confident predictions. Then, a self-supervised learning framework is constructed: confident predictions from teacher models are served as annotations to guide the student model to learn optical flow for those less confident predictions. The self-supervised learning framework enables us to effectively learn optical flow from unlabeled data, not only for non-occluded pixels, but also for occluded pixels. DistillFlow achieves state-of-the-art unsupervised learning performance on both KITTI and Sintel datasets. Our self-supervised pre-trained model also provides an excellent initialization for supervised fine-tuning, suggesting an alternate training paradigm in contrast to current supervised learning methods that highly rely on pre-training on synthetic data. At the time of writing, our fine-tuned models ranked 1st among all monocular methods on the KITTI 2015 benchmark, and outperform all published methods on the Sintel Final benchmark. More importantly, we demonstrate the generalization capability of DistillFlow in three aspects: framework generalization, correspondence generalization and cross-dataset generalization. Our code and models will be available on https://github.com/ppliuboy/DistillFlow.
我们提出了DistillFlow,一种用于学习光流的知识蒸馏方法。DistillFlow训练多个教师模型和一个学生模型,其中对学生模型的输入应用具有挑战性的变换,以生成虚假遮挡以及可信度较低的预测。然后,构建一个自监督学习框架:将教师模型的可信预测用作注释,以指导学生模型学习那些可信度较低预测的光流。这种自监督学习框架使我们能够有效地从未标记数据中学习光流,不仅适用于非遮挡像素,也适用于遮挡像素。DistillFlow在KITTI和Sintel数据集上均取得了领先的无监督学习性能。我们的自监督预训练模型还为监督微调提供了出色的初始化,这表明了一种与当前高度依赖合成数据预训练的监督学习方法不同的训练范式。在撰写本文时,我们的微调模型在KITTI 2015基准测试的所有单目方法中排名第一,并且在Sintel Final基准测试中优于所有已发表的方法。更重要的是,我们从三个方面展示了DistillFlow的泛化能力:框架泛化、对应关系泛化和跨数据集泛化。我们的代码和模型将在https://github.com/ppliuboy/DistillFlow上提供。