オプティカルフローって何?
Optical flow is a vector field between two images, indicating how the pixels of an object in the first image can move to form the same object in the second image.2枚の画像の間にできるベクトル場です。 オブジェクトの対応するピクセルがわかっていれば、オプティカルフローフィールドを計算することができるので、対応学習の一種と言えます。
オプティカルフロー式&従来の方法
(u, v) をどう解決するか? 何か方程式を立てるための制約があるのでしょうか?
まず、H(x, y) = I(x+u, y+v) なので、I(x+u, y+v) をテイラー級数で割ってみます。
そして高次項を捨てて H(x, y) = I(x+u, y+v) に結合します。
最後にuとvが0になる極限になると、以下のようにオプティカルフロー方程式を得たことになる。
しかし、実際のアプリケーションでは、uとvはゼロリミット以外にも数ピクセルから十ピクセルに渡る大きなものや小さなものもあるかもしれません。 したがって、実際のオプティカルフローの近似値しか得られないのです。 しかし、uとvがゼロに近ければ、フローフィールドはより正確になる。
上の式では、他の変数はx、y、時間次元からの差から計算できるため、未知数はuとvである。 したがって、1つの方程式に2つの未知数があり、これを解くことはできない。 そこで、過去40年間、多くの研究者が、u,vの別の方程式を与えて、解けるようにすることを試みてきた。 その中で最も有名なのがルーカス・カナード法です。
ディープラーニングの時代、オプティカルフローをディープニューラルネットワークで解くことはできるのでしょうか?
ディープラーニングの時代になって、オプティカルフローをディープニューラルネットワークで解けるようになったのでしょうか?
答えはイエスで、この分野では近年研究が進み、その成果はどんどん良くなっています。 今回は、ECCV2020のBest paper awardを受賞したRAFTという代表作を紹介します。