2015-12-02 212 views
2

我有兩個已知的相應2D點的圖像,相機的內在參數和相機之間的3D轉換。我想計算從一個圖像到另一個圖像的二維重投影誤差。爲了做到這一點,我想從轉換中獲得一個基本矩陣,所以我可以計算這些點與相應的核線之間的點到線的距離。我如何獲得基本矩陣?轉化的基本矩陣

我知道E = R * [t]F = K^(-t) * E * K^(-1),其中E是基本矩陣,[t]是平移向量的斜對稱矩陣。但是,如果運動是純旋轉(t = [0 0 0]),則返回空矩陣。我知道在這種情況下,單應性比基本矩陣更好地解釋運動,以便我可以將平移向量的範數與小的閾值進行比較,以選擇基本矩陣或同構。有沒有更好的方法來做到這一點?

+0

如果旋轉和平移都不爲空,則單應性不能正確模擬運動。 – ChronoTrigger

+0

對不起,我沒有,但這是針對房間的照片。雖然,結構不應該很重要。 – ChronoTrigger

+0

哦!對不起,我沒有正確地讀你的問題..我刪除了我的評論 –

回答

1

「我想計算從一個圖像到另一個圖像的2D重投影誤差。」

然後去計算它。您的設置已經過校準,因此除了已知的3D幾何體之外,您不需要任何其他設置。忘記極線錯誤,如果您的相機運動(接近)純旋轉,那麼也可能不確定。使用已知大小和形狀的對象(例如棋盤格),從一個攝影機視圖中計算出其在3D空間中的位置(對於棋盤格,您可以在其物理模型和投影之間進行單應性匹配,然後分解它變成[R | t])。然後,根據相機的校準參數將現在定位的3D形狀投影到另一個相機中,並將投影與對象的實際圖像進行比較。

+0

我在場景中有一些已知的3D結構,但我也有深度未知的2D點,我也想在計算重投影錯誤時考慮到[R | t]轉換的質量。我對後者感興趣。 – ChronoTrigger

+0

那麼,你真的無法比捆綁調整做得更好,然後使用你的校準設置和已知的3d結構作爲起點。 –

+0

如何進行捆綁調整以計算重投影誤差?我已經知道3D變換。 – ChronoTrigger