2015-04-14 51 views
0

我想用一個攝像頭來估計相對於相機的位姿。基本矩陣的相對位置姿態估計

爲達此目的,採取以下步驟。

  1. 校準的相機獲取的相機參數K
  2. 查找點使用SIFT/SURF
  3. 基本矩陣識別對應;通過使用所述findFundamentalMat(),以及輸入的匹配點的2D
  4. 估計基本矩陣的E = K'FK並修改E爲奇點約束
  5. 分解基本矩陣得到旋轉,R = UWVt/UW'Vt(U和Vt獲得E的SVD),並得到平移t;

但是這樣做後,翻譯t太小。假設初始攝像機位置是(0,0,0)。攝像機向前移動20cm後,下一個姿勢是(0,0,20),真正的翻譯應該是20釐米,兩者的水平是完全不同的。

有什麼不對?如何從翻譯矩陣中獲得真正的翻譯?你能幫助我嗎?

+0

您的攝像機校準參數按照您的設想縮放了嗎?如果你的新姿勢是20,你認爲它是20釐米,它可能只是以釐米爲單位縮放?你期望什麼樣的價值? – Micka

+0

@Micka謝謝攝像機標定參數的像素。實際上攝像機向前移動20cm。所以我認爲翻譯應該是(0,0,20);攝像機是單眼的。我想要得到真正的翻譯釐米。 – user4705465

+0

@Micka謝謝攝像機標定參數的像素。實際上攝像機向前移動20cm。所以我認爲翻譯應該是(0,0,20);攝像機是單眼的。我想要得到真正的翻譯釐米。 – user4705465

回答

0

基本矩陣只能按比例定義。從分解E得到的平移向量是一個單位向量。如果沒有更多信息,則無法獲取世界單元中攝像機之間的實際距離,例如場景中已知大小的參考對象。