Occlusion Aware Unsupervised Learning of Optical
CVPR 2018 論文原文:
Occlusion Aware Unsupervised Learning of Optical Flow
用Unsupervised的方法估計視頻的optimal flaw。通過逆求光流生成遮罩層,一定程度上解決了Occlusion的問題。通過擴大搜索區域,一定程度上結果了large motion的問題。
Preliminary
FlowNet :一個用於預測光流的CNN網路。Supervised。
Learning Optical Flow with Convolutional NetworksUnsupervised Learning of Optimal Flow: 在 FlowNetS 後面加上Unsupervised 模塊。但是沒有解決Occlusion和 large motion 的問題。
Unsupervised Learning of Optical Flow via Brightness Constancy and Motion Smoothness
演算法框架
演算法分為兩層。上層為主要的訓練層,下層為遮罩層。
上層
FlowNetS 輸出 Forward Flow 。 理想情況下, 位置上的像素值應該跑到 位置。因此我們藉助 和 就能構建出一張warping得到的 。 。通過對比 和 ,我們就能訓練 FlowNetS 了。
不過, 和 可不一定是整數,因此我們取 周圍4個像素的雙線性插值後的結果[1]:
求導得
類似的,我們可以求出 。
我們可以見到導數會促使 向它周圍四個點中像素值最接近 的那個點移動。而如果它周圍的四個點都和 的像素值差別都比較大的時候,求導會得出錯誤的方向。為了解決這個問題,這篇文章在 bilinear 的基礎上提出了新的 sampling 方法:
演算法在 周圍創造了一個更大的取值範圍,在這個範圍里選取一個像素值與_ 最接近的點 ,並以和它相對於的三個鏡像點做 bilinear interpolation。比如上圖中,如果採用基本的 bilinear 方法,應該選擇四個黑色的點。而論文提出的方法則是選用四個帶有紅色加號的點做 bilinear interpolation,從而計算出的像素值,接著便能求導,從而逐漸靠近 。
下層
輸入時先將 與 調換,FlowNetS 輸出 Backward Flow 。 用來生成一個遮罩層: 可以將 回退到 的狀態,這是圖像上必然有一些空缺的地方,這些地方就是 因為視角變化而被遮擋的像素。網路就不用費勁在 中匹配這些像素了,因為這些像素在 根本就不存在。
上圖就是一個例子。我們從左上角開始看, 中的B像素在 中是被遮擋的,A像素從 移動到了 , 所以 。我們根據 將 回退到 的狀態,可以發現A被移回了 , 同時 的位置上還有E像素,所以 。而 ,說明 中沒有任何像素是由 而來。對 取一個閾值,便得到了遮罩層 。
數學表達:
因為 不一定是一個整數,所以還需要用上文中的 bilinear interpolation方法。
Loss Function
Photometric Loss
用 Charbonnier penalty formula 來計算Photometric Loss。 用來衡量image brightness的loss, 用來衡量image gradient的 loss。
Smoothness Loss
Photomatric loss 只有在非遮擋區域才有效。而對於被遮擋的區域,我們用Smoothness Loss來進行優化。一般來說,一個物體的光流是比較smooth的,所以光流圖像中的邊緣要和原圖中的邊緣基本一致。所謂邊緣,其實就是圖像的一階導數 。
Smooth Loss 最早被用於[2]. 我是這樣理解這個式子的: 代表光流的平滑程度,這個值越小,光流越平滑。可是我們只希望物體內部的光流儘可能平滑,物體邊緣地方的光流大一些也沒有所謂,因此我們就成一個係數 。在物體邊緣, 很小,在物體內部, 趨近於1。
除此之外,這篇文章還對FlowNetS的結構進行了一些小調整。
參考文獻
[1] Jaderberg, Max, Karen Simonyan, and Andrew Zisserman. "Spatial transformer networks."Advances in neural information processing systems. 2015.
[2] Heise P, Klose S, Jensen B, et al. Pm-huber: Patchmatch with huber regularization for stereo matching[C]//Proceedings of the IEEE International Conference on Computer Vision. 2013: 2360-2367.
推薦閱讀: