1. 程式人生 > >【多檢視幾何】對極幾何與基本矩陣

【多檢視幾何】對極幾何與基本矩陣

本文未指明圖片來源為 Multiple View Geometry in Computer Vision

Multiple View Geometry in Computer Vision 所做筆記。

第 9 章 《對極幾何與基本矩陣》,Epipolar Geometry and the Fundamental Matrix

對極幾何研究的物件是雙檢視幾何,即兩張相鄰影像的位姿關係。

1. 對極幾何基本概念

  1. 核點(epipole):基線(baseline)與成像平面的交點。同時極點也可以理解為相鄰影像成像中心在本影像上的像,因為基線是兩個相鄰影像成像中心的連線。
  2. 核平面(epipolar plane):含有基線的平面,是一簇平面。可以看做是由基線與空間中任意一點構成的平面。
  3. 核線(epipolar line):核平面與成像平面的交線。可以看做是成像平面上的任意一點(非核點)與核點所定義的直線。

2. 基本矩陣 F

基本矩陣可以看做是將點投影(轉換)為直線,將左影像上的一個點投影到右影像上形成一條核線。

2.1 幾何推導基本矩陣

假設有一空間平面 π,將 π 上的點 X 投影到左右影像上,可以得到這個三維點在兩張影像上的像 x,x,將空間平面上所有的點都進行投影,能夠得到左右影像上所有點的對應關係,這種對應關係可以使用單應矩陣(homography matrix, page 87)Hπ 描述:

x=Hπx

通過空間的一個平面建立兩張影像中點的座標對應關係

右影像上的核線 l 可以由兩個點——右影像上的核點 e

與右影像上的任意一點 x ——確定:

l=e×x=[e]×x

x=Hπx 代入:

l=[e]×Hπx=Fx

這樣就得到了基本矩陣的定義:

F=[e]×Hπ

因為 x 在右核線 l 上,所以點積為 0

xTl=xTFx=0

2.2 代數推導基本矩陣

空間中三維點 X 反向投影到左影像上得到點 x,這個過程可以用投影矩陣 PX=x 進行描述。

現在想辦法將 Xx 表示,P 是一個 4x3 的矩陣,不可逆。使用 P 的偽逆:P+=PT(PPT)1,得

X=P+x

對於左影像 X 是對應一條直線上的所有點,可以使用下面的方程表示這一條直線:

X(λ)=P+x+λC

現在將這一條直線投影到右影像上,即可得到右影像的核線。投影的方式是在 X(λ) 上找到兩個點,將這兩點分別投影到右影像上,投影后的兩個點確定右影像上的核線。

λ 為0,得到直線上的第一個點 P+x ,取 λ 得到直線上的第二個點 C (即左影像的成像中心)。將這個兩個點分別投影到右影像上,得到 PP+xPCPC=e,左影像成像中心在右影像上的成像是核點。這兩個點叉乘即可得到右影像上的核線:

l=(PC)×(PP+x)=[e]×PP+x=Fx

所以 F=[e]×PP+

2.3 基礎矩陣的性質

  1. 轉置對稱性:如果 F 是一對影像 (P,

    相關推薦

    檢視幾何幾何基本矩陣

    本文未指明圖片來源為 Multiple View Geometry in Computer Vision 。 讀 Multiple View Geometry in Computer Vision 所做筆記。 第 9 章 《對極幾何與基本矩陣》,Epipol

    幾何

    #本文譯自斯坦福大學CS231A計算機視覺課程的課堂筆記,包含自己的理解,如有錯誤,歡迎指出。原文見:http://web.stanford.edu/class/cs231a/course_notes.html   1 介紹   通過前面的課程,我們已經知道如何利用典型的相機標定流程

    幾何幾何的代數表示--基本矩陣F

    對極幾何的基本概念中是對對極幾何的基本形式進行了描述,但並沒有從數學角度對其進行描述,而基本矩陣正是對對極幾何的代數描述 1.總述 對極幾何描述的就是點x和它的對極線l’之間的關係:l′=Fx,其中,矩陣F稱為基本矩陣 下面,分別從

    執行緒例項變數(synchronized)執行緒安全

    一、例項變數與執行緒安全: package cn.hncu.lang.thread_; /** * 專案名:例項變數和執行緒安全 * 時間 :2017-9-17 下午2:14:02 */

    幾何

    right 光軸 觀察 ont 投影 ima com 單獨 方向   對極幾何是研究兩幅圖像之間存在的幾何。它和場景結構無關,只依賴於攝像機的內外參數。研究這種幾何可以用在圖像匹配、三維重建方面。(因為參考多處來源,本文各個章節之間沒有統一約定符號) 基線:連接兩個攝像

    幾何-本質矩陣-基本矩陣

    是我 tex nal audio img 運動 剛體 網址 nor 對極幾何-本質矩陣-基本矩陣 轉自知乎文章:https://zhuanlan.zhihu.com/p/33458436 記得之前的相機矩陣,這是針對單個相機的,可我們知道單個相機圖片並不能告訴我們物體的

    幾何相關程式

    #include <iostream> #include <opencv2/features2d/features2d.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/calib3

    幾何 本質矩陣 基礎矩陣

    對極幾何是檢視幾何理論的基礎,對極幾何(Epipolar Geometry)描述了同一場景兩幅影象之間的視覺幾何關係。 設兩相機的中心分別為Ol和Or,兩影象平面分別為I和,P為共同視域中的場景空間點,它在兩幅影象平面上的像點分別為pl和pr。對極幾何關係中主要包含以下幾何元素: 極平

    計算機視覺基礎——幾何(Epipolar Geometry)

    先思考一個問題:用兩個相機在不同的位置拍攝同一物體,如果兩張照片中的景物有重疊的部分,我們有理由相信,這兩張照片之間存在一定的對應關係,本節的任務就是如何描述它們之間的對應關係,描述工具是對極幾何 ,它是研究立體視覺的重要數學方法。   要尋找兩幅影象之間的對應關係,最直接

    幾何之基礎矩陣和本質矩陣

    在射影幾何中,要通過兩個不同的點求連線這兩點的直線,兩點作叉乘即可。當然由於Duality的存在,要通過兩條直線求他們相交於哪一點,同樣兩線作叉乘即可。 相機的成像原理是將一個三維的點按照小孔成像的原理投影到了二維平面上,那麼其逆過程(通過二維平面的點估計三維點的位置)必然會帶來一個不確定量。這個不確定的量

    Python+OpenCV學習(20)---幾何

    利用python學習OpenCV,個人感覺比較方便。函式的形式與C++基本相同,所以切換過來還是比較好的,對於像我這種對python不太熟練的人,使用python的整合開發環境PyCharm進行學習,可以設定斷點除錯,有助於我這類初學者理解掌握。 在我們使用針孔相機時,

    幾何基本概念

    對極幾何(Epipolar Geometry)描述的是兩幅檢視之間的內在射影關係,與外部場景無關,只依賴於攝像機內參數和這兩幅試圖之間的的相對姿態 1. 什麼是對極幾何·粗略概念 提到對極幾何,一定是對二幅影象而言,對極幾何實際上是“兩

    Planar Homography (共麵點成像)& Epipolar Geometry(幾何

    轉載:http://blog.csdn.NET/yvonnezju/article/details/40982192 這一篇,要搞清楚兩個概念,Planar Homography (共麵點成像)& Epipolar Geometry(對極幾何) Now,St

    視覺里程計2(SLAM十四講ch7)-幾何,三角測量

    對極幾何 2D2D 對極幾何(Epipolar Geometry)是Structure from Motion問題中,在兩個相機位置產生的兩幅影象的之間存在的一種特殊幾何關係,是sfm問題中2D-2D求解兩幀間相機姿態的基本模型。 相機位姿估計問題——》 1.根據配對點

    執行緒檢視JVM中的執行緒名(ThreadGroup)

    ThreadGroup類的常用方法activeCount()——返回此執行緒組中活動執行緒的估計數activeGroupCount()——返回此執行緒組中活動執行緒組的估計數enumerate(Thread[] list,boolean recurse)——把此執行緒組中所有

    Tips-Windows 10桌面視窗操作

    ges logs 創建 cnblogs com view 正在 blog img Windows 10【多桌面視窗】  當你點擊任務欄上的“task view”按鍵時,會在屏幕中間顯示你當前正在使用的桌面,你可以點擊“添加桌面&rdquo

    項目積累JSON數據的處理

    陌生 fun item 樣式 orm 其他 ajax 數據顯示 真的 【項目簡述】 接觸.NET項目非常長一段時間了,前臺用的都是MVC框架。不知道大家是否想過一個問題。我們是怎樣將數據顯示到前臺的,換句話說,MVC能夠識別怎麽樣的數據形式?

    線程線程的常用方法

    mar user mas eap doc adb oci left use 頌搶濁吶腥唾韻趁日急感比http://shufang.docin.com/sina_6355808290 傻率行鉀鈉假練笨稭費捎稻http://jz.docin.com/sina_62735472

    摘錄自MDN事件冒泡和捕捉的解釋

    情況 dev 默認 https code demo pen click 情況下 當一個事件觸發了一個有父元素的元素(例如我們的<video>時),現代瀏覽器運行兩個不同的階段 - 捕獲階段和冒泡階段。 在捕獲階段: 瀏覽器檢查元素的最外層祖先(&

    Codeforces 463D Gargari and Permutations:隱式圖dp串LCS

    font 最長路徑 com 一個 -s ++ 路徑 div 都是 題目鏈接:http://codeforces.com/problemset/problem/463/D 題意:   給你k個1到n的排列,問你它們的LCS(最長公共子序列)是多長。 題解: