affine幾何是研究這樣一種幾何: 它只涉及兩點之間的向量,而不考慮實際的距離、角度,甚至不考慮作為參照的原點。這些幾何構成的空間就是affine空間。
affine空間
相比較於熟悉的歐幾里得空間,affine有一些特別的性質。比如歐式空間認為空間中有乙個原點,對於這個原點有向量a與b。在affine空間中認為任意一點均可作為原點,對同樣兩個點有向量a』和b』。在兩個空間中把向量分別相加:
歐式空間:a + b
affine空間:a』 + b』 = p + (a – p) + (b - p)
這就導致在兩個空間中同一種運算可以得出不同的結果。比如有乙個a和b的線性組合c:
c = 4a + 6b
c』 = 4a』 + 6b』 = p + 4a - 4p + 6b - 6p = 4a + 6b -9p
可以看到c』多了乙個p項。如果我們要令它們相等就必須把這個係數變為0,即線性組合係數之和為1。
考慮:
c = 0.4a + 0.6b
c』 = 0.4a』 + 0.6b』 = p + 0.4a – 0.4p + 0.6b – 0.6p = 0.4a + 0.6b
c = c』
affine空間的好處
如前所述,如果線性組合係數為1,那麼兩種空間中的運算沒有任何區別,affine空間還更加簡便。如果一幾何體是「affine invariant」的,就是說它不管是被旋轉、縮放還是平移,都不會改變它的性質。
再舉乙個複雜些的例子。有乙個10x3的mesh,pc在乙個轉換矩陣u (100x10)作用下變成了100x3的mesh, pf。
pf = u * pc
考慮pf中任意乙個點=
u_i,1 * + u_i,2* + … + u_i,10 *
pf中的任何乙個點都可以看成pc中點的線性組合,而u中的每一行都是對應一組pf點的係數。如上可知,如果u中每一行的係數之和都取為1,就可以保證在變換後的幾何圖形是affine invariant的。另外,u中每一列對應一格pc點,所以每列叫做乙個pc點的shape function。
仿射affine 小結
hom mat2d identity hommat2didentity 生成乙個同質2d轉換矩陣。平移仿射 hom mat2d translate hommat2didentity,100,100,hommat2dtranslate 矩陣平移變換,形成新的矩陣hommat2dtranslate af...
OpenCV學習 仿射變換(affine)
影象的基本幾何變換有 平移,旋轉,尺度,仿射 仿射變換可以理解為平移旋轉尺度的組合效果。下面給出數學上的定義 a是2x2旋轉矩陣,b是平移向量 一 平移的實現 二 旋轉的實現 三 尺度的實現 從上面的實現可以看出,使用仿射變換是需要求解6個引數,旋轉矩陣4個,平移向量2個。這也是我們在使用openc...
仿射函式和仿射組合
假設f是乙個矢性函式,若它可以表示為f x1,x2,xn a1x1 a2x2 anxn b,其中ai可以是標量,也可以是矩陣,則稱f是仿射函式。矢性函式定義 標性函式f x ax b 即我們通常見到的函式 其中a x b都是標量。維基百科的解釋 affine combination,a certai...