立體匹配十大概念綜述---立體匹配算法介紹

from:https://blog.csdn.net/wintergeng/article/details/51049596

一、概念

??????? 立體匹配算法主要是通過建立一個能量代價函數,通過此能量代價函數最小化來估計像素點視差值。立體匹配算法的實質就是一個最優化求解問題,通過建立合理的能量函數,增加一些約束,采用最優化理論的方法進行方程求解,這也是所有的病態問題求解方法。

二、主要立體匹配算法分類

1)根據采用圖像表示的基元不同,立體匹配算法分為:

?????? A、區域立體匹配算法(可獲取稠密視差圖。缺點:受圖像的仿射畸變和輻射畸變影響較大;像素點約束窗口的大小與形狀選擇比較困難,選擇過大,在深度不連續處,視差圖中會出現過度平滑現象;選擇過小,對像素點的約束比較少,圖像信息沒有得到充分利用,容易產生誤匹配。)

?????? B、基于特征的立體匹配算法(可獲得稀疏的視差圖,經差值估計可獲得稠密視差圖。可提取點、線、面等局部特征,也可提取多邊形和圖像結構等全局特征。缺點:特征提取易受遮擋、光線、重復紋理等影響較大;差值估計計算量大)

?????? C、基于相位立體匹配算法(假定在圖像對應點中,其頻率范圍內,其局部相位是相等的,在頻率范圍內進行視差估計)

2)依據采用最優化理論方法的不同,立體匹配算法可以分為:

?????? A、局部的立體匹配算法

?????? B、全局的立體匹配算法

三、匹配基元(match primitive)

目前匹配算法中所采用的匹配基元可以分成兩大類:

1)在所有圖象像素點上抽取量測描述子

????? A、像素灰度值(最簡單、直接,但必須在同一光照條件下獲得)

????? B、局部區域灰度函數(主要是利用求得在各種大小不同窗口中灰度分布的導數信息,描述像素點周圍的結構矢量。)

????? C、卷積圖象符號(利用各種大小算子與圖象進行卷積,用灰度梯度局部極大值或極小值作為特征信息,描述整個圖像)

2)圖像特征

????? A、過零點

????? B、邊緣(由于邊緣是圖像特征位置的標志,對灰度值的變化不敏感,邊緣是圖像匹配的重要特征和描述子)

????? C、角點(雖然其沒有明確的數學定義,但大家普遍認為角點,即二維圖像亮度變化劇烈的點或邊緣曲線上曲率極值點)

------------------------------------------------------------------基元-----------------------------------------------------------------------------------------

  1. 立體視覺匹配基元:匹配基元是用以進行立體匹配的圖像特征,匹配基元的選擇,要考慮基元的穩定性、敏感性、可行性和能否表示圖像。
    • :利用圖像的局部特征信息作為匹配基元,表示一個像素,如像素灰度值,角點,邊緣,卷積等。

      雙目立體視覺—基本約束準則

    • :局部區域內所有像素的灰度、亮度特征值,對區域內所有像素進行變化,如卷積、梯度變換和Censes變換等。

      雙目立體視覺—基本約束準則

    • :一般是像素灰度信息發生急劇變化的像素點集,最能體現邊緣特征。

      檢測邊緣的算子如Sobel算子、Canny算子、Log算子和Prewitt算子等。

      雙目立體視覺—基本約束準則

------------------------------------------------------------------基元end------------------------------------------------------------------------------------------

四、區域匹配算法

??????? 基本原理是給定在一幅圖像上的某一點,選取該像素點鄰域內的一個子窗口,在另一幅圖像中的一個區域內,根據某種相似性判斷依據,尋找與子窗口圖像最為相似的子圖,而其匹配的子圖中對應的像素點就為該像素的匹配點。

??????? 一般單純的區域匹配都遇到如下限制:

?????? 1)針對弱紋理或存在重復紋理的區域,匹配結果不好

?????? 2)該算法不適應于深度變化劇烈的場景

?????? 3)對光照、對比度和噪聲比較敏感

?????? 4)子窗體的大小很難選擇

五、特征匹配算法

??????? 特征的匹配算法,主要是基于幾何特征信息(邊緣、線、輪廓、興趣點、角點和幾何基元等),針對幾何特征點進行視差估計,所以先要提取圖像的特征點,盡而利用這些特征點的視差值信息來重建三維空間場景。

??????? 匹配所需要的主要步驟:圖像預處理、提取特征、特征點的匹配獲取稀疏視差圖,如果想得到稠密的視差圖,需要采用插值的方法。

六、全局匹配算法

??????? 全局立體匹配算法主要是采用了全局的優化理論方法估計視差,建立全局能量函數,通過最小化全局能量函數得到最優視差值。

??????? 全局匹配算法得到的結果比較準確,但是其運行時間比較長,不適合實時運行。主要的算法有圖割(graph cuts)、信念傳播(belief propagation)、動態規劃等算法。

七、局部匹配算法(個人覺得跟區域匹配類似,角度不同而已)

??????? 主要是采用局部優化方法進行視差值估計,局部立體匹配算法有 SAD,SSD 等算法,與全局立體匹配算法一樣,也是通過能量最小化方法進行視差估計,但是,在能量函數中,只有數據項,而沒有平滑項。

?????? 主要分為三類:自適應窗體立體匹配算法、自適應權值的立體匹配算法和多窗體立體匹配算法。

八、立體匹配約束

1)極線約束
2)唯一性約束

3)視差連續性約束

4)順序一致性約束

5)相似性約束

----------------------------------------------------------------匹配約束--------------------------------------------------------------------------------------

  1. 約束準則具有縮小匹配搜索的范圍,降低誤匹配,同時提高匹配效率的功能。
    • 極線約束:

      如圖所示,三維空間的一個映射點,其匹配點必定在另一圖像的極線上,理想情況下,匹配點對位于同一水平線上即坐標y值相同。故只需在對應的水平線上搜素匹配點,大大提高了匹配效率。

      雙目立體視覺—基本約束準則

    • 唯一性約束:

      三維空間點至多只一個圖像上的映射點(遮擋則沒有映射點),匹配時左右圖像上只有唯一一個匹配點。

      雙目立體視覺—基本約束準則

    • 連續性約束:

      三維空間中物體表面是光滑的,匹配得到的視差圖大部分情況下是連續且光滑變化的。一般使用較小的視差梯度降低匹配的搜索范圍和待匹配點的數量以提高匹配速度。

      雙目立體視覺—基本約束準則

    • 相似性約束:

      三維空間中的物體在不同視角下投影產生的匹配基元(點、塊、線)必須要有相同或相似的屬性。由于光照等因素的影響,相似性約束具有局限性。

      雙目立體視覺—基本約束準則

    • 順序一致性約束:

      三維空間中物體上的點的位置信息在映射到兩幅圖像上的位置順序不會改變。這是不透明物體表面投影的幾何學必然性。

      雙目立體視覺—基本約束準則

    • 平滑性約束:

      假設三維空間中物體表面是平滑的,則視差圖上除物體邊界位置會有大的視差波動以外,其他位置上匹配視差的變化很小。

      雙目立體視覺—基本約束準則

    • 左右一致性約束:

      如圖所示,參考圖上像素點p點在匹配圖上的點是q,則參考圖上像素點q在匹配圖上是p。如果兩次搜索的結果不對應,則改點不可靠。常用于遮擋區域的檢測。

      雙目立體視覺—基本約束準則

    • 視差范圍約束:

      兩臺攝像機之間具有一定的距離,在沿極線搜索時,搜索的范圍應小于一定的閾值。視差范圍約束限制了搜索的范圍。

      雙目立體視覺—基本約束準則

-----------------------------------------------------------------匹配約束end----------------------------------------------------------------------------------

九、相似性判斷標準

1)像素點灰度差的平方和,即 SSD

2)像素點灰度差的絕對值和,即 SAD

3)歸一化交叉相關,簡稱 NCC

4) 零均值交叉相關,即 ZNCC

5)Moravec 非歸一化交叉相關,即 MNCC

6)?Kolmogorov-Smirnov?距離,即 KSD

7)Jeffrey 散度

8)Rank 變換(是以窗口內灰度值小于中心像素灰度值的像素個數來代替中心像素的灰度值)

9)Census 變換(是根據窗口內中心像素灰度與其余像素灰度值的大小關系得一串位碼,位碼長度等于窗口內像素個數減一)

各類代碼實現參考:https://blog.csdn.net/liyingjiang22/article/details/53156331

十、評價參數

??????? 立體匹配算法是一個病態問題,一般通過建立能量函數,利用最小化能量函數,和一些約束條件,采用最優化理論方法進行求解方程。

??????? 公認的定量評價參數有:均方根誤差(Root-mean-squared)和誤匹配率(percentage of bad matching pixels)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458186.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458186.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458186.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

zjnu1730 PIRAMIDA(字符串,模擬)

Description Sample Input 6 JANJETINA 5 1 J 1 A 6 N 6 I 5 E Sample Output 1 0 2 1 1題意:給你一個長度小于等于10^6的字符串,然后每次讓它循環鋪蓋,構成層數為n的塔,讓你求得第i層塔中某個字符的個數。 思路:首先要…

ICP算法理解

from:https://blog.csdn.net/linear_luo/article/details/52576082 1 經典ICP ICP的目的很簡單,就是求解兩堆點云之間的變換關系。怎么做呢?思路很自然,既然不知道R和t(針對剛體運動),那我們就假設為未知量唄&#xf…

2016-8-2更新日志

1.修正版本管理器資源文件名 不能正確拉取 91Resource 文件下的資源的問題2.修正商城購買物品不計算負重的問題3.修正拾取疊加物品 只計算一個物品的重量的問題4.游戲參數-> 游戲選項2->增加物品使用間隔5.修正冷酷不加技能點的BUG6.自定義UI開放測試[目前只能針對熱血傳…

字符流緩沖區的使用之BufferedWriter和BufferedReader

從字符輸入流中讀取文本,緩沖各個字符,從而實現字符、數組和行的高效讀取,代碼中使用了輸入緩沖區的特有的方法:readLine(),獲取一行文本數據 import java.io.BufferedReader; import java.io.FileNotFoundException; import java…

圖像處理的灰度化和二值化

from:http://blog.sina.com.cn/s/blog_13c6397540102wqtt.html 在圖像處理中,用RGB三個分量(R:Red,G:Green,B:Blue),即紅、綠、藍三原色來表示真彩色&#x…

結合 category 工作原理分析 OC2.0 中的 runtime

絕大多數 iOS 開發者在學習 runtime 時都閱讀過 runtime.h 文件中的這段代碼: struct objc_class {Class isa OBJC_ISA_AVAILABILITY;#if !__OBJC2__Class super_class OBJC2_UNAVAILABLE;const char *name …

獲取子元素

1、純css 獲取子元素 #test1>div {background-color:red;}#test1 div {font-size:14px;}#test1>div:first-child {color:#ccc;} <div id"test1"><div>性別</div><div>男</div></div> 因1示例中為#test1下的子元素 #test1…

JPG PNG GIF BMP圖片格式的區別

類型優點缺點應用場景相同圖片大小比較BMP無損壓縮&#xff0c;圖質最好文件太大&#xff0c;不利于網絡傳輸 152KGIF動畫存儲格式最多256色&#xff0c;畫質差 53KPNG可保存透明背景的圖片畫質中等 202KJPG文件小&#xff0c;利于網絡傳輸畫質損失車牌識別84K BMP BMP&…

EasyUI左右布居

<!DOCTYPE html><html xmlns"http://www.w3.org/1999/xhtml"><head runat"server"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8" /> <title>首頁</title> <li…

44.Android之Shape設置虛線、圓角和漸變學習

Shape在Android中設定各種形狀&#xff0c;今天記錄下&#xff0c;由于比較簡單直接貼代碼。 Shape子屬性簡單說明一下:   gradient -- 對應顏色漸變。 startcolor、endcolor就不多說了。 android:angle是指從哪個角度開始變.solid -- 填充。stroke -- 描邊。corners -- 圓角…

幾種邊緣檢測算子的比較Roberts,Sobel,Prewitt,LOG,Canny

from&#xff1a;https://blog.csdn.net/gdut2015go/article/details/46779251 邊緣檢測是圖像處理和計算機視覺中的基本問題&#xff0c;邊緣檢測的目的是標識數字圖像中亮度變化明顯的點。圖像屬性中的顯著變化通常反映了屬性的重要事件和變化。這些包括&#xff1a;深度上的…

django 初試

/*************************************************************************************** django 初試* 說明&#xff1a;* 昨天打搭了dgango的服務器&#xff0c;今天學一下怎么來輸出一個hello world出來。* * …

淺析“高斯白噪聲”,“泊松噪聲”,“椒鹽噪聲”的區別

from&#xff1a;https://www.jianshu.com/p/67f909f3d0ce 在圖像處理的過程中&#xff0c;一般情況下都進行圖像增強&#xff0c;圖像增強主要包括“空域增強”和“頻域增強”&#xff0c; 空域增強包括平滑濾波和銳化濾波。 平滑濾波&#xff0c;就是將圖像模糊處理&#x…

HttpClient通過Post上傳文件(轉)

在之前一段的項目中&#xff0c;使用Java模仿Http Post方式發送參數以及文件&#xff0c;單純的傳遞參數或者文件可以使用URLConnection進行相應的處理。 但是項目中涉及到既要傳遞普通參數&#xff0c;也要傳遞多個文件&#xff08;不是單純的傳遞XML文件&#xff09;。在網上…

數字圖像處理:各種變換濾波和噪聲的類型和用途總結

摘自http://imgtec.eetrend.com/blog/4564 一、基本的灰度變換函數 1.1圖像反轉 適用場景&#xff1a;增強嵌入在一幅圖像的暗區域中的白色或灰色細節&#xff0c;特別是當黑色的面積在尺寸上占主導地位的時候。 1.2對數變換&#xff08;反對數變換與其相反&#xff09; …

Java 開發環境部署

1.下載Java開發環境工具包JDK&#xff0c;下載地址&#xff1a;http://www.oracle.com/technetwork/java/javase/downloads/index.html 下載后&#xff0c;雙擊jdk應用程序&#xff0c;根據提示完成安裝&#xff0c;安裝過程中可以自定義安裝目錄等信息&#xff0c;這里我選擇…

枚舉enum、NS_ENUM 、NS_OPTIONS

2019獨角獸企業重金招聘Python工程師標準>>> enum 了解位移枚舉之前&#xff0c;我們先回顧一下C語言位運算符。 1 << : 左移,比如1<<n,表示1往左移n位&#xff0c;即數值大小2的n次方; 例如 : 0b0001 << 1 變為了 0b0010 2 >> : 右…

mysql 關鍵詞相關度排序方法詳細示例分析

http://www.jb51.net/article/40480.htm轉載于:https://www.cnblogs.com/lixiuran/p/5299305.html

數字圖像處理-頻率域濾波原理

from&#xff1a;https://blog.csdn.net/forrest02/article/details/55510711?locationNum15&fps1 寫在前面的話 作者是一名在讀的碩士研究僧&#xff0c;方向是圖像處理。由于圖像處理是一門相對復雜的學科&#xff0c;作者在課堂上學到的東西只是非常淺顯的內容&#…

tomcat優化-有改protocol 和 緩存 集群方案

tomcat優化 在線上環境中我們是采用了tomcat作為Web服務器&#xff0c;它的處理性能直接關系到用戶體驗&#xff0c;在平時的工作和學習中&#xff0c;歸納出以下七種調優經驗。 1. 服務器資源 服務器所能提供CPU、內存、硬盤的性能對處理能力有決定性影響。 (1) 對于高并發…