運動與視訊

Lucas-Kanade 方法

Lucas-Kanade 方法用一個簡潔的假設化解孔徑問題:一個小視窗內的所有像素以相同的光流 (u, v) 一起移動。單一像素只給你一條方程式(光流約束),但若你相信例如一個 15×15 的影像塊共享同一個運動,你現在就有了 225 條方程式去求同樣的兩個未知數。兩個未知數、許多方程式:這是一個超定線性系統(over-determined system),最自然的解便是最小平方解(least-squares solution),讓所有約束同時盡可能被滿足。

具體來說,把每個像素的方程式 I_x·u + I_y·v = -I_t 堆疊成矩陣系統 A·v = b,其中每一列存放一個像素的梯度 (I_x, I_y),v = (u, v) 是未知光流,b 存放負的時間梯度。最小平方解來自正規方程式(normal equations)(AᵀA)·v = Aᵀb。這個 2×2 矩陣 AᵀA 就是結構張量(structure tensor):它在視窗內加總 I_x²、I_xI_y 與 I_y²。當這個矩陣良好條件化(well-conditioned,即兩個特徵值都很大)時光流才可靠,而這正發生在角點。在邊緣上它會秩虧(rank-deficient,有一個特徵值趨近於零),於是孔徑問題以一個無法求解的方向重新出現。這也是驅動 Harris 角點偵測器的同一個矩陣,正因如此「適合追蹤的好特徵」就是角點。

有兩項精修使它實用。第一,亮度恆定的泰勒展開只在小運動下有效,因此大位移要用由粗到細的影像金字塔(coarse-to-fine pyramid)處理:先在大幅降採樣、運動很小的影像上估計光流,再逐層扭曲(warp)並精修,一路上推到完整解析度。第二,在每一層內部對解做迭代(一個 Gauss-Newton 更新):用目前的估計把第二格扭曲、重算殘差 I_t、再求解一次,直到收斂。以這種方式跨多格追蹤一組稀疏的角點特徵,就是經典的 KLT 追蹤器(Kanade-Lucas-Tomasi)。

無法求解的情形本身很有啟發性:若 AᵀA 有一個極小特徵值,你正位於邊緣上,只能還原法向光流;若兩個都很小,你身處平坦區域、完全沒有資訊。特徵選取器(Shi-Tomasi 的「適合追蹤的好特徵」)就是挑選那些較小特徵值仍夠大的像素。

又称
LKKLT (Kanade-Lucas-Tomasi)