第3至5章講了3d-3d和3d-2d問題,為了全面介紹相機位姿的求解方法,本章介紹2d-2d問題。根據3d-3d和3d-2d問題的描述,就可以理解2d-2d問題:相機在兩個位置看到了同樣的3維點,即知道畫素座標,求這兩個相機的位姿關係。
對極幾何有極線、極點等概念,而我們不需要這些,只需要知道空間向量共面的判定方法。
−6.1.1對極
幾何圖-6.1.1對極幾何
圖−6.1.
1對極幾
何先來確定幾個向量:
\overrightarrow = k^p \\ \overrightarrow = rk^(p'-o_2)=rk^p' \\ \overrightarrow = \vec t \end \tag
⎩⎪⎪⎨⎪⎪
⎧o1
p=
k−1p
o2p
=rk
−1(p
′−o2
)=r
k−1p
′o1
o2
=t(
6.1.
1)公式(
6.1.1
)(6.1.1)
(6.1.1
)中的三個向量都是o
1o_1
o1座標系中的向量。其中k
kk是相機內參矩陣,p
pp是空間點p
pp在左側相機的歸一化畫素座標,p′p'
p′是空間點p
pp在右側相機的歸一化畫素座標。參考公式(
5.1.4
)(5.1.4)
(5.1.4
)。n =k
−1pn=k^p
n=k−1p
稱為歸一化的歸一化成像平面座標:n
nn是乙個三維座標,第3維為1,n
nn的前兩維組成的二維座標是歸一化成像平面座標。
注意:根據公式(
5.1.4
)(5.1.4)
(5.1.4
),我們並沒有利用空間點p
pp到左右相機的距離z
zz。由於使用的歸一化畫素座標p
pp和p′p'
p′的第三維是1
11,所以在公式(
6.1.1
)(6.1.1)
(6.1.1
)中,向量o1p
→\overrightarrow
o1p和o2p
→\overrightarrow
o2p
的終點並不一定是p
pp。但這並不影響我們的結果,因為我們只需要令公式(
6.1.1
)(6.1.1)
(6.1.1
)中的三個向量的混合積為0,而不關心它們的長度。
對極幾何就是公式(6.1.1)中的三個向量共面,它們的混合積為0:
o 1p
→t×o
1o2→
⋅o2p
→=0.\overrightarrow ^t × \overrightarrow \cdot \overrightarrow = 0.
o1pt
×o1
o2
⋅o2
p=0
.即:p tk
−t×t
⃗⋅rk
−1p′
=0(6.1.2)
p^tk^ × \vec t \cdot rk^p'=0 \tag
ptk−t×
t⋅rk
−1p′
=0(6
.1.2
)把t⃗
\vec t
t寫成矩陣的形式,把公式(
6.1.2
)(6.1.2)
(6.1.2
)寫成矩陣相乘的形式就是:
p tk
−tt⃗
^rk−
1p′=
0(6.1.3)
p^tk^ \vec t \hat rk^p'=0 \tag
ptk−tt
^rk−
1p′=
0(6.
1.3)
其中t⃗
^\vec t \hat
t^是把向量(t1
,t2,
t3)(t_1,t_2,t_3)
(t1,t
2,t
3)寫成反對稱矩陣的形式:
[ 0−
t3t2
t30−
t1−t
2t10
]\left[ \begin 0 & -t_3 & t_2 \\ t_3 & 0 & -t_1 \\ -t_2 & t_1 & 0 \end \right]
⎣⎡0t3
−t2
−t
30t
1t
2−t
10
⎦⎤公式(
6.1.3
)(6.1.3)
(6.1.3
)稱為對極約束。
假如把e
ee稱為本質矩陣,f
ff稱為基礎矩陣:
e = \vec t \hat r \\ f = k^ e k^ \end
n^en'=0 \\ p^fp'=0 \end
void
pose_estimation_2d2d
(const vector pts1,
const vector pts2,
const mat& k)
intmain()
我們依然使用那6個三維點來實驗,因為我們知道它們的位姿關係。第20行求本質矩陣,第23行從本質矩陣中得出旋轉矩陣和平移向量。
注意:ope
ncvopencv
opencv
求本質矩陣時,輸入是畫素座標,而沒有要求使用歸一化平面座標。
執行結果:
注意:我們是利用平面座標求相機位姿的,平面座標不包含距離資訊。所以,我們求得的旋轉是正確的,但平移卻不準確:我們使用的6個點對應的平移向量(0,
−1,0
)(0,-1,0)
(0,−1,
0)的模長為1,所以求得的平移向量是準確的。實際上如果平移向量是(0,
−2,0
)(0,-2,0)
(0,−2,
0),求得的結果還是(0,
−1,0
)(0,-1,0)
(0,−1,
0)。也就是說這樣求得的平移向量的模長永遠是1,包含乙個縮放係數α
\alpha
α是無法求得的。
語音識別實踐 第6章總結2
cd dnn hmm帶來語音識別效能提公升的三大關鍵因素是 1 使用足夠深的神經網路 2 使用一長段的幀作為輸入 3 直接對三因素進行建模。1.進行比較和分析的資料集實驗 a.必應 bing 移動語音搜尋資料集 資料分為訓練集 開發集 測試集,避免三個集合之間重複。語言模型 一元片語 二元片語 三元...
遊戲設計藝術 第2版 第6章 讀書筆記
體驗並不會隨機地與遊戲聯絡在一起,而是由玩家與遊戲的互動產生。我們的目標不是藝術化的表達,而是創造偉大的體驗。我們可以創造無主題或者弱主題的遊戲,然而如果遊戲有統一的 能引發共鳴的主題,創造的體驗就會更加強大。設計圍繞乙個單一的主題,最大的優勢就是遊戲中的所有元素將互相強化,因為它們向著乙個共同的目...
unix網路程式設計第2版 卷1 第6章 同步
6.1概述 在5.12節中,我們看到tcp客戶同時處理兩個輸入 標準輸入和tcp套介面。我們遇到的問題是客戶阻塞於 標準輸入上的 fgets呼叫,而伺服器程序又被殺死。伺服器tcp雖正確地給客戶tcp發了乙個fin,但客戶程序正阻塞於從標準輸入讀入,它直到從套介面讀時才能看到此檔案結束符 可能已經過...