理論背景

Geometric Transformation

二維圖像旋轉與平移(包含 x 和 y 座標)的組合可以表示為:

方程式 19。


其中 x' 與 y' 是目標圖像中的座標。旋轉角度為 和 分別是 x 與 y 方向的平移參數。 逆平移與逆旋轉則為:

方程式 20。


因此,源圖像中的座標計算方式為:

方程式 21。


對於 VA 設計,由於採用目標到源的對應 (target-to-source mapping),我們需要逆轉換來進行座標計算。 座標的 Scaling 可以透過乘以常數來實現 適用於 x 與 y 方向。

Distortion Correction

當物體的放大倍率隨著與光軸的距離而改變時,就會產生光學失真。此時圖像會呈現 桶狀或枕狀變形。對於 VA 設計, 我們採用根據 [ 的多項式擬合方法Par09]。失真座標 由未失真座標計算得出 為:

方程式 22。


這些座標相對於光學失真中心。參數 是徑向失真係數。某些開源程式(例如 OpenCV)可以利用校正影像來計算這些參數 [Ope16a]。 對於所有 ,可以使用 Matlab 程式計算包含校正參數的查閱表 (lookup-table) 可以使用 Python 範例程式碼進行計算。您可以在 \examples\Processing\Geometry\GeometricTransformation\distortion_correction.py 中找到它。透過此對照表,只需將失真座標與未失真座標相乘,即可計算出所有失真座標。

Keystone Correction

當相機未垂直放置於被拍攝物體時,就會產生這種梯形失真。 透過包含元素的 3x3 轉換矩陣 M ,可以修正此效果 [Ope16b]:

方程式 23。


請注意,此處由於目標到來源的對應而執行反向校正。變數 和 分別為 Keystone 扭曲和 Keystone 校正後的坐標。 可以使用 OpenCV 函數計算 [Ope16b]。

Image Moments

有關影像動差的詳細理論描述,請參閱 節。