我有抖動的視頻的2幀。我在所有的內點上申請了單應性。現在,我得到不同的幀合成基質都是這樣Homography的結果矩陣表示什麼?
0.2711 -0.0036 0.853
-0.0002 0.2719 -0.2247
0.0000 -0.0000 0.2704
0.4787 -0.0061 0.5514
0.0007 0.4798 -0.0799
0.0000 -0.0000 0.4797
什麼是那些相似的價值觀對角線,我怎麼能檢索這個矩陣的平移分量?
我有抖動的視頻的2幀。我在所有的內點上申請了單應性。現在,我得到不同的幀合成基質都是這樣Homography的結果矩陣表示什麼?
0.2711 -0.0036 0.853
-0.0002 0.2719 -0.2247
0.0000 -0.0000 0.2704
0.4787 -0.0061 0.5514
0.0007 0.4798 -0.0799
0.0000 -0.0000 0.4797
什麼是那些相似的價值觀對角線,我怎麼能檢索這個矩陣的平移分量?
具有以下觀察開始:單應性矩陣只被定義了按比例繪製。這意味着如果將所有矩陣係數除以相同的數字,則可以獲得表示相同幾何變換的矩陣。這是因爲,爲了在座標(x,y)提供到單應適用於一個點,則乘上由所述列向量的權的矩陣H [X,Y,1]」(這裏我用撇號符號來表示然後將結果H * x = [u,v,w]'除以第三個分量w。因此,如果代替h將使用經縮放的矩陣(S * H),則結束與[S * U,S * V,S * W],它代表了相同的2D點。
所以,瞭解正在發生的事情與你的矩陣,通過將兩者通過他們的右下部分開始:
octave:1> a = [
> 0.2711 -0.0036 0.853
> -0.0002 0.2719 -0.2247
> 0.0000 -0.0000 0.2704
> ];
octave:2> b=[
> 0.4787 -0.0061 0.5514
> 0.0007 0.4798 -0.0799
> 0.0000 -0.0000 0.4797];
octave:3> a/a(3,3)
ans =
1.00259 -0.01331 3.15459
-0.00074 1.00555 -0.83099
0.00000 -0.00000 1.00000
octave:4> b/b(3,3)
ans =
0.99792 -0.01272 1.14947
0.00146 1.00021 -0.16656
0.00000 -0.00000 1.00000
現在假設,就目前而言,在兩個第三列元素矩陣[0,0,1]'。那麼將它應用到任何點(x,y)的效果就是將它移動大約1/100個單位(比如像素)。基本上,沒有太多改變。 用於第三列堵回的實際值顯示兩個基質,基本上,通過恆定量的平移整個圖像。
因此,在結束時,在具有索引(1,2)和(2,1)上的對角線相等的值,以及非常小的值,意味着這些單應性均爲(基本上)純的翻譯。
各種變換涉及如加法,乘法,除法,和附加常數的所有基本操作。只有前兩個可以用正則矩陣乘法建模。請注意,添加一個常數,並且在使用Homography時,除法不能用2D中的矩陣乘法表示。添加第三個座標(即將點轉換爲齊次表示)解決了這個問題。例如,如果你想添加常數5到X,你可以做到這一點像這樣
1 0 5 x x+5
0 1 0 * y = y
1
需要注意的是矩陣的2x3,2x2的不和座標有三個數字雖然他們代表的2D點。此外,最後的轉換是從均勻轉換回歐幾里德表示。因此可以得到兩個結果:所有操作(乘法,除法,變量加法和常量加法)都可以用矩陣乘法表示;第二,我們可以鏈接多個操作(通過乘以它們的矩陣),並且作爲(矩陣乘法的)結果,仍然只有單個矩陣。
好了,現在讓我們來解釋一下單應。在整個變換系列從簡單變爲複雜變換的情況下,Homography更好地考慮。換言之,通過將它們與較簡單的歐幾里得,相似性和仿射變換的係數的含義進行比較,更容易理解Homography係數的含義。 Euclidwan變換是最簡單的,代表了空間中的剛性旋轉和平移(注意矩陣是2×3)。對於2D情況,
cos(a) -sin(a) Tx
sin(a) cos(a) Ty
相似性將比例增加到旋轉系數。所以,現在的矩陣如下所示:
Scl*cos(a) -scl*sin(a) Tx
Scl*sin(a) scl*cos(a) Ty
加盟轉換添加剪切使旋轉系數成爲不受限制:
a11 a12 Tx
a21 a22 Ty
單應增加另一行劃分輸出x和y(看看我們如何解釋過渡形式均勻歐幾里得除法期間以上的座標),並因此引入投影性或非均勻縮放即點座標的函數。通過查看向歐幾里得座標的轉換可以更好地理解這一點。
a11 a12 Tx x a11*x+a12*y+Tx (a11*x+a12*y+Tx)/(a32*x+a32*y+a33)
a21 a22 Ty * y = a21*x+a22*y+Ty -> (a21*x+a22*y+Ty)/(a32*x+a32*y+a33)
a31 a32 a33 1 a32*x+a32*y+a33
因此,與其他轉換(如仿射或相似性)相比,單應性具有額外的行。這額外的行允許根據它們的座標來縮放對象,這是如何形成預測性的。
最後,說你的數字:
0.4787 -0.0061 0.5514
0.0007 0.4798 -0.0799
0.0000 -0.0000 0.4797
這不是單應!。只要看看最後一行,你會看到前兩個係數是0,因此沒有項目性。由於A11 = A22 這甚至不是一個仿射變換。這相當於一個相似變換。翻譯是 的Tx = 0.5514/0.4797和Ty = -0.0799/0.4797
嘿,感謝了很多,是很好的解釋。 – pcoder