
最新論文調査:Optical Flow編
目次[非表示]
- 1.はじめに
- 2.教師ありオプティカルフロー推定
- 2.1.FlowNet (ICCV 2015)
- 2.2.FlowNet2 (CVPR 2017)
- 2.3.PWC-Net (CVPR 2018)
- 2.4.RAFT (ECCV 2020)
- 3.教師なしオプティカルフロー推定
- 3.1.UnsupFlownet (ECCV 2016)
- 3.2.UnFlow (AAAI 2018)
- 3.3.UFlow (ECCV 2020)
- 3.4.SMURF (CVPR 2021)
- 4.おわりに
- 5.引用
はじめに
こんにちは,AI技術開発部の風山です.私たちのチームではX線動画解析に関する技術開発を行っており,「動き」の技術に接する機会が多いです.今回はオプティカルフローの推定技術について,特に,ディープラーニングベースの手法についての論文調査結果からいくつか内容を紹介したいと思います.
コニカミノルタのX線動画解析について詳しくはこちら.
教師ありオプティカルフロー推定
オプティカルフロー推定は,動画像のフレーム間で画素の動きの対応関係を求めるタスクです.物体追跡や行動認識とも関連が深く,コンピュータビジョンにおける基本的なタスクの1つとして近年も研究が進展しています.ここではまず,教師ありのアプローチについて著名な論文をご紹介します.一般にオプティカルフローの真値を得ることは困難なため,モデルの学習には合成画像データやCGデータが用いられることが多いです.
FlowNet (ICCV 2015)
オプティカルフロー推定のタスクに初めてディープラーニングでアプローチした論文は,FlowNet[1]として知られています.オプティカルフロー推定は画素の対応関係を求めるタスクであることから,FlowNetでは特徴マップ間の明示的な相関を計算するcorrelation layerが導入されています.デモ動画を見ると,動きの方向と大きさに応じたフローマップが得られていることが分かります.
FlowNet2 (CVPR 2017)
FlowNetはオプティカルフロー推定に革新を起こした一方で,精度面では古典的なstate-of-the-art (SOTA) 手法に及びませんでした.FlowNet2[2]では,複数個のFlowNetをスタックしてフローをrefinementすることでSOTAに匹敵する精度を達成しています.論文冒頭に次のような印象的な記述があります.
However, first implementations of new ideas often have a hard time competing with highly fine-tuned existing methods, and FlowNet was no exception to this rule.
デモ動画を見ると,FlowNetに比べても滑らかで高精細なフローマップが得られていることが分かります.
PWC-Net (CVPR 2018)
FlowNet2は精度を引き上げた一方,モデルサイズが大きく推論に時間がかかる問題がありました.
Is it possible to both increase the accuracy and reduce the size of a CNN model for optical flow?
上記の問いから始まるPWC-Net[3]では,特徴マップ間の相関に基づくCost volume layerとマルチスケールでのフローのrefinementを反復的に繰り返す構造で,FlowNet2よりも軽量かつ高精度なモデルを実現しました.広域情報を考慮するためのContext networkも導入され,更なるフローのrefinementが図られています.複数のベンチマークでSOTAを達成し,end-to-endの手法が古典的手法を上回りました
RAFT (ECCV 2020)
教師ありのアプローチとして最後に紹介するRAFT[4]は,ECCV 2020のBest Paper Awardにも選ばれた論文です.これまでのCNNモデルはマルチスケールの構造上フローのrefinement回数に制限があり,階層を増やした場合の解像度低下やパラメータ数増加も問題でした.RAFTは再帰型ニューラルネットワークの一種であるGRUを用いて高解像度を維持しつつ繰り返しフローをrefinementする手法を提案し,SOTAを更新しました.フローマップを見ると,物体の境界付近でもGround-Truthに近い精確なフローが予測できていることに驚きます.古典的手法から着想を得たcorrelation layerや反復最適化の仕組みがディープラーニングモデルに統合されてきた経緯は興味深いです.
教師なしオプティカルフロー推定
ここまでは,教師ありのオプティカルフロー推定について述べてきました.しかしながら,実際の開発の場面において,オプティカルフローの真値を入手することは困難です.そこで次に,教師なしのオプティカルフロー推定について紹介したいと思います.
UnsupFlownet (ECCV 2016)
教師なしオプティカルフロー推定についてのキーアイデアはUnsupFlownet (Back2Basics) [5]に示されています.UnsupFlownetでは,photometric lossとsmoothness lossの2種類のロスを組み合わせることで,画像ペアのみからオプティカルフローを推定しています.ネットワークが推定したフローマップに基づいて実際にframe i+1の画像を変形 ((inverse) warp) させて,frame iの画像との差分を最小化する仕組みです.warpの操作には,Spatial Transformer Networks[6]と同じ仕組みが用いられています.smoothness lossは滑らかなフローを出力させるための制約条件です.この研究ではネットワークにFlowNetが使用されました.
UnFlow (AAAI 2018)
教師なしオプティカルフロー推定では画像に対して直接photometric loss (data loss) を計算するため,対応画素が存在しないオクルージョン (物体どうしの重なり合い) 領域でもロスが計算されてしまう問題点がありました.そこでUnFlow[7]では,双方向にオプティカルフローを計算し,その一貫性 (consistency) を確認することでオクルージョン領域を推定し,ロス計算から除く工夫が行われました.このocclusion-maskingのアイデアは,その後の研究でも採用されています.この研究ではネットワークにFlowNet2が使用されました.
UFlow (ECCV 2020)
教師なしオプティカルフロー推定ではフローの真値に対して直接モデルの出力を最適化するといったことができないため,photometric lossやsmoothness loss等各種のプロキシロスが提案されて来ました.
What Matters in Unsupervised Optical Flow
上記のタイトルから始まるUFlow[8]は,これまでの研究で提案されてきたキーアイデアに種々の改良を加えるとともにそれらを網羅的に比較検証し,occlusion-masking, smoothness, 自己教師あり学習の3要素全てが重要である,との結論を報告しています.ネットワークもPWC-Netに変化しています.教師なしオプティカルフロー研究の進展を願う最後の一文が印象的です.
In addition to its strong performance, our method is also significantly simpler than many related approaches, which we hope will make it useful as a starting point for further research into unsupervised optical flow. Our code is available at https://github.com/google-research/google-research/tree/master/uflow.
SMURF (CVPR 2021)
最後に紹介するSMURF[9]は,ネットワークにRAFTが採用された新しい教師なしオプティカルフロー推定モデルです.オリジナル画像とクロップされた画像の両方をうまく利用してモデルを学習しています.これは,物体がフレームアウトする画像端においても有効な自己教師信号を生成できるメリットがあります.教師なし学習にも関わらず,全てのベンチマークについて教師ありのFlowNet2とPWC-Netを上回ったとの報告には驚きます.グラフィカルな説明動画では,複数フレーム入力によるocclusion inpaintingについても述べられています.
おわりに
本記事では,ディープラーニングベースのオプティカルフロー推定に関する論文をいくつか紹介させていただきました.特に,教師なし学習の分野の進展は,私たち企業の開発者にとっても心強いです.一方で,合成画像データやCGデータ (out-of-domain data) から教師あり学習をベースに汎化させるアプローチがよいのか,適用先の実データ (in-domain data) から教師なしで学習するアプローチがよいのか,という問いは残り続けます.だからこそ企業の開発においては,実際に試してみる,チャレンジする姿勢が重要なのかもしれません.
今後も,AI技術開発部では最新論文の調査,様々な機械学習モデルの開発を日々行い,価値あるサービスにつなげていきます.
コニカミノルタは画像IoTプラットフォームFORXAIを通じて,お客様やパートナー様との共創を加速させ,技術・ソリューションの提供により人間社会の進化に貢献してまいります.
引用
[1] Alexey Dosovitskiy, Philipp Fischer, Eddy Ilg, Philip H¨ausser, Caner Hazırbas¸, Vladimir Golkov, Patrick van der Smagt, Daniel Cremers, and Thomas Brox. Flownet: Learning optical flow with convolutional networks. In ICCV, 2015.
[2] Eddy Ilg, Nikolaus Mayer, Tonmoy Saikia, Margret Keuper, Alexey Dosovitskiy, and Thomas Brox. Flownet 2.0: Evolution of optical flow estimation with deep networks. In CVPR, 2017.
[3] Deqing Sun, Xiaodong Yang, Ming-Yu Liu, and Jan Kautz. PWC-Net: CNNs for optical flow using pyramid, warping, and cost volume. In CVPR, 2018.
[4] Zachary Teed and Jia Deng. Raft: Recurrent all pairs field transforms for optical flow. In ECCV, 2020.
[5] Jason J. Yu, Adam W. Harley, and Konstantinos G. Derpanis. Back to basics: Unsupervised learning of optical flow via brightness constancy and motion smoothness. In ECCV Workshop, 2016.
[6] Max Jaderberg, Karen Simonyan, Andrew Zisserman, and Koray Kavukcuoglu. Spatial transformer networks. In NIPS, 2015.
[7] Simon Meister, Junhwa Hur, and Stefan Roth. Unflow: Unsupervised learning of optical flow with a bidirectional census loss. In AAAI, 2018.
[8] Rico Jonschkowski, Austin Stone, Jonathan T Barron, Ariel Gordon, Kurt Konolige, and Anelia Angelova. What matters in unsupervised optical flow. In ECCV, 2020.
[9] Austin Stone, Daniel Maurer, Alper Ayvaci, Anelia Angelova, and Rico Jonschkowski. Smurf: Self-teaching multiframe unsupervised raft with full-image warping. In CVPR, 2021.