2012-11-26 84 views
1

我目前的工作,需要我找到使用OpenCV庫相機的姿態的項目。我正在研究iPod,目前採用視頻輸入,並使用ORB和匹配點準確實時地從兩幀中使用BruteForceMatcher(現在非常不可視)來查找關鍵點和描述符。我不知道這是否是必要的,但我也篩選匹配,從而只匹配映射兩種方式繪製即K-> K1和K1->ķopencv的相機姿態估計

我有我使用的相機的內在參數以及2D關鍵點。從這我希望找到相機的位置(我認爲這些是旋轉和平移的外在參數)。

雖然我已經看過經過無數的教程很多這已經有點超過我的頭,我需要一些指導,以什麼方法將工作,以及解釋。大多數教程使用了設置參考點的平方,但除了從幀中抽出的關鍵點之外,我沒有使用其他標記。

從我瞭解的步驟是:

a)找到對應的關鍵點

b)確定基本矩陣

C)估計本質矩陣

d)分解本質矩陣爲旋轉和翻譯載體

然而,除了步驟a)我堅持。

回答

0

從您的發言中,我明白,你已經得到了一套2D對應的,你可以送入cvFindFundamentalMat.This發現它涉及兩個角度的基本矩陣。即,對於在照相機 - 2在攝像機1和對應點P」的每個點p,p'Fp = 0 所計算的基本矩陣可以在OpenCV中,用於查找對應於所述指定點的核線被進一步傳遞給ComputeCorrespondEpilines功能。它也可以傳遞給StereoRectifyUncalibrated函數來計算整流變換。在這裏你可以獲得兩個攝像機座標系之間的旋轉和平移(達到縮放比例)。

基本矩陣是與校準攝像機有關的度量對象,而基本矩陣描述了射影幾何的更一般和基本術語中的對應關係,所以我不認爲你需要基本矩陣在你的情況。在基本矩陣中。也可以在不知道攝像機的內在參數及其在空間中的相對位置的情況下計算整流變換。

如果您使用的不是棋盤校準圖案,而是使用通用的對象或圖像,你是正確的,你需要手動或使用一個強大的特徵提取和匹配ORB,MSER,SURF,SIFT找到的對應關係,FAST

此外我建議參考opencv文檔here我希望這有助於。

+0

我不知道,@Zoosmell Pooplord是否在談論立體聲情況。我的理解是他想要從圖像中可見的參考對象獲取相機的位置。糾正我,如果我錯了。 –

+0

背後的動機是我試圖找到相機相對於場景中的物體的位置,即牆。這樣我可以測量從相機到牆壁的距離。 – Zoosmell

+0

我已經使用棋盤計算了內部參數,但實際的應用程序不使用任何設置的模式或對象作爲參考點。因此,我使用計算的點對來創建兩個匹配關鍵點列表,每個圖像一個並將其傳遞到cvFindFundamentalMat方法中?感謝關於基本矩陣的解釋,它非常有幫助。 – Zoosmell