24

我有兩個從不同位置拍攝的圖像。第二臺攝像機位於右側,相對於第一臺攝像機位於上方和後方。 所以我認爲這兩個視圖之間存在透視變換,而不僅僅是仿射變換,因爲相機處於相對不同的深度。我是對的)我在兩幅圖像之間有幾個對應點。我想用這些對應點來確定每個像素從第1個圖像到第2個圖像的轉換。基本,基本和同形矩陣之間的區別

我很困惑的功能findFundamentalMatfindHomography .... 都返回3x3矩陣,兩者的區別是什麼?

是否有任何條件要求/先決條件使用它們(何時使用它們)?

哪一個用來從第一個圖像轉換點到第二個圖像?在函數返回的3x3矩陣中,它們是否包含兩個圖像幀之間的旋轉和平移?

wikipedia,知道基礎矩陣是相應圖像點之間的關係。在SO回答here,據說基本矩陣E是需要得到相應的點...但我沒有內部相機矩陣來計算E .....我只有兩個圖像。

我該如何着手確定相應的點?等待建議.. 謝謝

回答

11

沒有任何額外的世界場景幾何假設,你不能肯定在兩個視圖之間有一個投影轉換。只有場景是平面的,這纔是真實的。關於該主題的一個很好的參考文獻是Hartley和Zisserman的書Multiple View Geometry in Computer Vision

如果世界場景不是平面的,你絕對不應該使用findHomography函數。您可以使用findFundamentalMat函數,它將爲您提供基礎矩陣F的估計。此矩陣描述兩個視圖之間的極線幾何。您可以使用F來糾正圖像,以便應用立體算法來確定密集的對應關係圖。

我假設你使用表達式「透視變換」來表示「投影變換」。就我所知,透視變換是一種映射,而不是圖像映射。

7

基本矩陣具有關係 x'Fu = 0 其中x在一個圖像和u中的其他如果x和u相同的3D點的投影。 另外 升=傅 定義的線(LX」 = 0)其中u的correponding點必須在,所以它可以被用於限制該對應的searchspace。

一個Homography將一個平面投影上的點映射到該平面的另一個投影。 X =胡

8

只有兩種情況下,兩個視圖之間的變換是投影變換(即,單應性):或者場景是平面的或由相機繞其中心旋轉產生的兩個視圖。