MVG讀書筆記 三維空間中的射影幾何 一)

2021-08-06 03:33:35 字數 2335 閱讀 7163

前面講了2d情況下的射影幾何和射影變換,我們用到更多的則是3d情況下的射影幾何。這裡只需對一些概念進行推廣即可。對i

p3中的點我們使用乙個4元組x=

(x1,

x2,x

3,x4

)t表示,它與非齊次座標(x,y,z)的關係是 x=

x1x4

,y=x

2x4,

z=x3

x4 在

ip3 中的變換可以用乙個4×

4 的矩陣h表示。即x′

=hx

三維空間中的平面可以寫成 π1

x+π2

y+π3

z+π4

=0考慮到只有係數間的比例關係是有意義的,它的自由度為3。在齊次空間中可以用乙個4維向量表示,即ππ

=(π1

,π2,

π3,π

4)t

(通過替換非齊次座標)寫成平面方程形式為π1

x1+π

2x2+

π3x3

+π4x

4=0

即πtπ

tx=0

ππ 的前三個係數對應著歐氏幾何中平面的法線,使用非齊次座標表示就是n⋅

x~+d

=0。其中n=

(π1,

π2,π

3)t,

x~=(

x,y,

z)t,

x4=1

,d=π

4 。在此形式下,|d

|/||

n|| 是平面到原點的距離。

設有三個不共線的點x1

,x2,

x3,他們都在平面

π 上,則有πt

xi=0

,i=1

,2,3

因此 ⎡⎣

⎢⎢xt

1xt2

xt3⎤

⎦⎥⎥π

=0 x

1,x2

,x3 不共線,故他們線性不相關,因此它們構成的3×

4 矩陣的秩為3。

π 可以從該矩陣的零空間得到。

在二維平面中我們通過l=

x1×x

2 來確定一條直線,類似的,我們也能用更簡單的方法由三點確定乙個平面。

首先我們定義乙個矩陣m=

[x,x

1,x2

,x3]

。其中x為空間中任意一點。x1

,x2,

x3為用來確定平面

π 的3點。

顯然,對於平面上一點x=

[x1,

x2,x

3,x4

] ,它必能被x1

,x2,

x3線性表出,從而有det m = 0。

從第一列對det m展開有de

tm=x

1d234−x2

d134+x

3d124−x4

d123

。其中dj

kl是由矩陣[x

1,x2

,x3]

的jkl行組成的新矩陣。由於det m = 0,可以得到 π=

(d234,−d

134,

d124,−

d123)t

這也是之前平面所滿足的方程的解。

將空間點x表示為x=

[x~1

]t,x~=

[xyz

]t。則有

d234=∣

∣∣∣y

1−y3

z1−z

30y2

−y3z

2−z3

0y3z

31∣∣

∣∣=(

(x1~

−x2~

)×(x

2~−x

3~))

1 對其他的係數也有相似的結果,於是 π=

[(x1

~−x2

~)×(

x2~−

x3~)

−xt3

~(x1

~×x2

~)]

其中(x1

~−x2

~)×(

x2~−

x3~)

為平面的法線。π′

=h−t

π 對平面π

上一點x可以使用引數方程表示,即 x=

mxx為自變數,m為與

π 對應的引數,有πt

m=0 。設π=

(a,b

,c,d

)t,則它的引數矩陣的轉置mt

=[p|

i3×3

],p=

(−b/

a,−c

/a,−

d/a)

t

三維空間中剛體的旋轉

從零開始一起學習slam 三維空間剛體的旋轉 剛體 本身不會在運動過程中產生形變的物體,運動過程中同乙個向量的長度和夾角都不會發生變化。剛體變換也稱歐式變換。1 是重點!2 旋轉矩陣不是一般矩陣,它有比較強的約束條件。旋轉矩陣r具有正交性,r和r的轉置的乘積是單位陣,且行列式值為1。3 旋轉矩陣r的...

三維空間中的旋轉變換

1 繞座標軸旋轉的公式 1 繞z軸旋轉 2 繞x軸旋轉 3 繞y軸旋轉 以上的矩陣變換公式為 p p mat 2 繞任意軸旋轉的公式 給定具有單位長的 oa軸旋轉變換的矩陣表示可確定如下 3 繞任意軸旋轉在ogre中實現 ogre matrix3 i ogre matrix3 identity og...

三維空間剛體旋轉

剛體 運動過程中不會產生形變的物體,運動過程中同乙個向量的長度和夾角都不會發生變化。剛體變換也稱為歐式變換。旋轉矩陣 四元數旋轉向量 尤拉角安裝方式 eigen庫只有標頭檔案,沒有.so和.a二進位制檔案,所以在cmakelists.txt中只需要新增標頭檔案路徑,並不需要使用target link...