色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

立體匹配:經典算法Fast Bilateral Solver

3D視覺工坊 ? 來源:計算攝影學 ? 2023-01-03 10:59 ? 次閱讀

一. 前言

你好,歡迎你打開這篇文章,這是我的系列立體匹配算法介紹文章中承上啟下的一篇,請看看我們現在走到了哪一步:

8225f894-8a88-11ed-bfe3-dac502259ad0.png

當前進度 今天,我將通過這一篇文章,填滿上圖箭頭指向的格子! 下面我展示了一對雙目相機拍攝的原始圖像,已經過了立體校正:

823d4788-8a88-11ed-bfe3-dac502259ad0.jpg

一對做過立體校正后的雙目圖像 而下面左圖是OpenCV的SGBM算法得到的視差圖,右邊則是通過我今天要介紹的算法處理后的視差圖。看了它們后,我想你應該對什么叫做”化腐朽為神奇“有了深刻印象了吧。

8259c3b8-8a88-11ed-bfe3-dac502259ad0.jpg

左:SGBM算法結果 右:今日介紹的算法結果 那么如此神奇的效果,是如何做到的呢? 在復雜的問題進行空間轉換,變換為小規模的易解問題的思想:

82642358-8a88-11ed-bfe3-dac502259ad0.jpg

化簡問題的思路 今天我介紹的這篇文章,也是基于這種思想的——事實上這就是同一個作者Jon Barron,基于相同思想的進一步研究,

826f6ff6-8a88-11ed-bfe3-dac502259ad0.jpg

Jon Barron文章介紹 這個算法我在后文中會簡稱為FBS,它是我在立體匹配的研究和工程應用中最喜歡的算法之一。這個算法相比我之前介紹的Fast Bilateral-Space Stereo有什么不同呢? 上一篇文章所講的Fast Bilateral-Space Stereo,解決的是立體匹配問題——它將立體匹配當成下面的全局匹配代價最小化問題進行解決。

82809d80-8a88-11ed-bfe3-dac502259ad0.jpg

Fast Bilateral-Space Stereo算法思想總結 這個算法的優點我們已經講過了,在此不再贅述。然而它也有明顯的缺點。 首先是其匹配代價函數過于簡單,上面公式中第二項是就是匹配代價項,也即是數據項。為了盡可能簡單快速求解,作者采用了下面這樣非常簡單的形式:

82970624-8a88-11ed-bfe3-dac502259ad0.png

簡化的立體匹配代價函數 圖示如下:

82ac27b6-8a88-11ed-bfe3-dac502259ad0.jpg

圖示這種簡化問題的思路 然而,正是因為其形式非常簡單,因此效果也不夠好,很容易出現大大小小的錯誤。 Fast Bilateral-Space Stereo算法的另外一個問題是,作者把上述代價映射到了雙邊空間,用一種叫做L-BFGS的方法進行求解,這是Broyden,Fletcher,Goldfarb,Shanno這幾位數學家發明的優化算法,他們名字的首字母組合就是BFGS。這是一種迭代式的求解方法,它的求解速度是比較慢的。

同時,Fast Bilateral-Space Stereo的求解方法也無法應用到深度學習過程中,因為其代價函數也無法求導進行反向傳播。這一點我之后再談。 今天要講的FBS,則采用了特別不一樣的思想,如下圖所示。Fast Bilateral-Space Stereo的一大缺點就是采用了較低質量的匹配函數,所以Fast Bilateral Solver(即所謂FBS)干脆不自己做匹配,而是允許其他算法算出一個初始的還不夠好的視差圖,然后再通過最優化一個全局代價函數來優化這個初始的視差圖,最終得到一個更好的結果:

82cade40-8a88-11ed-bfe3-dac502259ad0.jpg

FBS思想 在作者論文中開篇就用下面這幅圖來說明了這個思想:

82dc98ec-8a88-11ed-bfe3-dac502259ad0.jpg

利用FBS優化視差圖 我一開始給大家呈現的關于貓貓的視差圖(下面右圖),就是用FBS處理了SGBM算法的結果(左圖)后得到的,這也是我最喜歡的FBS的用法:

8259c3b8-8a88-11ed-bfe3-dac502259ad0.jpg

左:SGBM算法結果 右:FBS優化左圖的結果 FBS的優秀之處在于它不僅僅可以用于優化初始的視差圖,還能做得更多,比如視差圖或深度圖圖的超分辨率重建。這里有一個低質量的輸入視差圖y,以及一個參考圖像R,通過FBS可以得到高質量的輸出圖像x,其中x相對于參考圖像R滿足雙邊平滑的特性,且其邊緣貼合參考圖像的邊緣,同時x還與輸入圖像y盡可能相似。

82f68054-8a88-11ed-bfe3-dac502259ad0.jpg

在圖像超分鐘應用FBS 另外一個有趣的應用是用戶引導的灰度圖像上色。這里也有低質量的輸入圖像y,即用戶指定的最終色彩圖像的骨架,原始的灰度圖像則作為參考圖像。再指定一個置信度圖c,我們一樣通過FBS求解輸出彩色圖像x,并且要求x自身相對參考圖像來說是雙邊平滑的,同時還在高置信度的區域和用戶輸入y盡可能一致。

83036dbe-8a88-11ed-bfe3-dac502259ad0.jpg

在圖像上色中應用FBS 看出來了吧?FBS算法可以用于優化任意的輸入圖像,只要給出了一個參考圖像和一個目標圖像,它就會努力的讓輸出圖像既能夠按照參考圖像來雙邊平滑,又能夠非常接近目標圖像,所以這是一種非常通用的算法。那么在下一節中,我們從原理上理解一下FBS算法。

二. FBS算法的應用目標和原理

2.1 FBS算法要解決的問題

用數學公式更加嚴謹的說明一下FBS吧。我們的目標是求解一個未知的圖像x,它本身相對于參考圖像R是雙邊平滑的(下式第1項),但在高置信度的區域又是和輸入的目標圖像t又是非常接近的。

830e121e-8a88-11ed-bfe3-dac502259ad0.jpg

FBS試圖優化的全局代價函數 剛才給過的這張圖,清晰的展示了上面公式的4張圖。左上圖為目標圖像t,是由一個立體匹配算法得到的初始視差圖。而右上圖是輸出圖x,是經過FBS優化得到的結果。左下圖是置信度圖c,右下圖則是輸入的參考圖像R,上面公式中的W就是由輸入參考圖像R計算而來的。

8322f422-8a88-11ed-bfe3-dac502259ad0.jpg

FBS應用到視差后處理優化的示例

2.2 將問題轉換到雙邊空間

求解上述的最小化的問題非常復雜,于是我們沿用上一次講到的思想,將問題轉換到雙邊空間中去求解。不過,FBS和Fast Bilateral Stereo算法在雙邊空間中的表達式有關鍵的區別:

83391928-8a88-11ed-bfe3-dac502259ad0.jpg

在雙邊空間中比較FBS及Fast Bilateral-Space算法 可以看到,FBS在雙邊空間中的求解非常簡單,直接求解一個線性等式Ay=b即可,這是因為FBS不再需要承擔做立體匹配的職責,它只需要保證優化后的視差圖滿足雙邊平滑以及與初始視差圖盡可能相似即可。 當在雙邊空間中求得了y,接下來就再用下面的公式把結果轉換為像素空間,就可以得到像素空間中的優化后的視差圖了:

8348f6e0-8a88-11ed-bfe3-dac502259ad0.png

看起來是不是很簡單?所以上面公式中最關鍵的就是要找出公式(6)中A和b及c的表達式,作者論文中已經給出:

835f048a-8a88-11ed-bfe3-dac502259ad0.png

下面我們再解釋一下上面幾個公式中的各個變量:

836cdcd6-8a88-11ed-bfe3-dac502259ad0.jpg

公式變量解釋 當構造了上面提到的Ay = b這樣的等式之后,作者采用了一種叫做preconditioned conjugate gradient (PCG)的算法(帶先驗條件的共軛梯度算法)來優化它,并且在這個過程中還采用了級聯金字塔的思想。這個過程略去不表,咱們只需要知道,采用了這種方式之后,整個問題的構建和優化速度都比之前介紹的Fast Bilateral Stereo大大加快了:

83818604-8a88-11ed-bfe3-dac502259ad0.jpg

FBS的優化速度大大提升 在應用到對初始視差圖進行優化的過程中,作者考慮到FBS的輸出結果對于給定的置信度圖和初始視差圖比較敏感,還采用了一種迭代式的求解形式, 這個過程中的公式推導比較復雜,限于篇幅所限,這里我就略過了推導的過程。但作者給出了粗糙版的Python實現,在OpenCV里面也有相應的實現。我會在我的知識星球中,針對這兩份代碼做進一步的解釋說明。

三. FBS的應用效果

讓我先展示一些作者論文中的FBS的效果吧。首先我們看看一個當時最優秀的立體匹配算法MC-CNN的結果,這是第一代基于深度學習的立體匹配算法。下面是Middle Burry立體匹配數據集中的一幅圖,從下圖中看來,它在很多邊緣細節上還是出現了錯誤和瑕疵:

839f1264-8a88-11ed-bfe3-dac502259ad0.jpg

MC-CNN算法結果 現在來看看經過FBS處理優化后的結果,我們看到從視覺上視差圖結果明顯好了一個檔次,MAE和RMSE也有所降低,雖然bad 1%這個指標略有上漲。

83afa50c-8a88-11ed-bfe3-dac502259ad0.jpg

用FBS優化MC-CNN算法結果大大減少了錯誤 下面是另外一張,很明顯MC-CNN出現了很多瑕疵,尤其是近距離處出現很多匹配錯誤

83cbc156-8a88-11ed-bfe3-dac502259ad0.jpg

下面是經過FBS優化后的結果,很明顯視覺效果好了不少,MAE和RMSE也少了很多!

83dca296-8a88-11ed-bfe3-dac502259ad0.jpg

用FBS優化MC-CNN算法結果大大減少了錯誤

四. 可導性與深度學習

作者還花了不少篇幅來講解將FBS作為一個“層”應用到深度學習的過程中,這里我也提一提吧。以語義分割為例,我們設想中將FBS作為網絡的一個層加入到網絡的輸出部分,如下圖所示,其目的是優化網絡輸出的分割掩模:

83f01204-8a88-11ed-bfe3-dac502259ad0.jpg

現在我們來看看現在比較常見的卷積神經網絡優化損失函數的過程,下面是這個過程的圖示:

84015a82-8a88-11ed-bfe3-dac502259ad0.jpg

深度學習用于優化復雜的目標函數 直接優化上述函數是很困難的,所以實際中一般會采用小批量隨機梯度下降法來求解

8417acce-8a88-11ed-bfe3-dac502259ad0.jpg

梯度下降法要求損失函數可導 所以這里很關鍵的就是損失函數要能夠對各個待優化參數求偏導數,要在反向傳播的過程中可導。如果我們把FBS作為網絡的一個層,應用到網絡構建的過程中,也會要求它可導。

842f9f50-8a88-11ed-bfe3-dac502259ad0.jpg

在反向傳播中要求FBS可導 在FBS之前有很多全局能量優化的算法,都很難做到這一點。幸運的是,作者證明了FBS是可以用于反向傳播的,我們把FBS看做下面這樣的函數

843f75b0-8a88-11ed-bfe3-dac502259ad0.png

那么反向傳播需要求解它對于輸入的兩幅圖像的偏導數:

844b809e-8a88-11ed-bfe3-dac502259ad0.png

作者在論文中給出了兩個偏導數的公式:

845f7c48-8a88-11ed-bfe3-dac502259ad0.png

作者給了一個例子,來說明引入了FBS到網絡中的好處,首先是用Deeplab進行分割后的粗糙結果:

84759f32-8a88-11ed-bfe3-dac502259ad0.jpg

Deeplab語義分割結果 現在引入一個復雜的后處理算法DenseCRF, 可以得到下面的結果

84978f20-8a88-11ed-bfe3-dac502259ad0.jpg

DenseCRF優化Deep Lab算法結果的展示 如果我們將DenseCRF替換為FBS加入到網絡中,可以看到效果相似,但速度是11倍快!

84a5d71a-8a88-11ed-bfe3-dac502259ad0.jpg

FBS優化Deep Lab算法結果的展示

五. 總結

今天我為你介紹了Jon Barron的經典算法Fast Bilateral Solver,可以說這是我最喜歡的算法之一。其中包含了很多深邃的思想。 首先是對很多問題中輸出圖像特性的敏銳觀察,并把這種觀察表達為了優美的數學公式。這種思想,和我之前在文章50. 從暗通道先驗去霧到海底圖像修復-三維重建輔助計算攝影中介紹的何凱明的“利用暗通道先驗去霧”有異曲同工之妙。

84c189e2-8a88-11ed-bfe3-dac502259ad0.jpg

輸出圖像的兩大特性 然后是作者將上述復雜的公式,轉換到了雙邊空間中,降低問題規模,用于快速求解,而在今天所說的FBS算法中,作者又將這種思想進行了更深層次的應用。

82642358-8a88-11ed-bfe3-dac502259ad0.jpg

問題轉換求解空間 在求解問題的過程中,作者又高效的利用了級聯金字塔形式,并采用了一種特殊的共軛梯度法來求解,使得求解過程大大加速,并得到了更好的效果。講到這里不得不說作者的數學功底超級扎實,如果你看原文及作者的論文附件,一定會對文章中問題建立和問題優化的細致分析過程擊節而嘆!當然,讀懂這些分析過程還是很燒腦的,所以我準備在我的知識星球中仔細的對應著作者的代碼進行分析和注解,感興趣的朋友可以加我“計算攝影學”公眾號,進而了解星球的加入方法。 還有一點值得提的是, FBS在傳統算法和深度學習算法中都可應用,可以說是連接過去和現在的橋梁,所以后面很多人寫文章來描述如何將Fast Bilateral Solver的思想應用到深度學習算法中,感興趣的話你可以搜索一下。

842f9f50-8a88-11ed-bfe3-dac502259ad0.jpg

反向傳播示例 不過,FBS也并非沒有缺陷。它最大的問題也就在于雙邊平滑權重是與輸入參考圖像高度相關上——這使得其最終效果很容易受到輸入參考圖像的影響,很容易在結果中引入輸入參考圖像本身的紋理。下圖中左下角是SGBM的結果,右下角是FBS處理后的結果。我們可以看到頭發部分的視差圖很明顯引入了原圖中美女頭發部分的紋理特征,這并非我們想要的結果。處理這樣的問題,需要我們在應用FBS的過程中,仔細的調整各個參數和輸入的置信度圖,并且選擇性的應用FBS在部分區域上,而不是一股腦用于全圖的所有像素上。

84ecf3f2-8a88-11ed-bfe3-dac502259ad0.jpg

FBS容易引入參考圖像的紋理信息 總的來說,FBS是一種非常經典和優秀的通用圖像處理算法,當它應用到立體匹配的視差后處理時,能夠起到“化腐朽為神奇”的功效,非常值得學習!現在看看我們的進度吧,我們終于完成了經典視差優化算法的學習,即將邁入立體匹配的現代算法——基于深度學習的立體匹配算法部分,驚不驚喜,期不期待 就讓我們拭目以待吧!

85046ece-8a88-11ed-bfe3-dac502259ad0.jpg

我們當前的進度

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 算法
    +關注

    關注

    23

    文章

    4608

    瀏覽量

    92845
  • 函數
    +關注

    關注

    3

    文章

    4329

    瀏覽量

    62578

原文標題:立體匹配:經典算法Fast Bilateral Solver

文章出處:【微信號:3D視覺工坊,微信公眾號:3D視覺工坊】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Celsius EC Solver:對電子系統散熱性能進行準確快速分析

    Cadence Celsius EC Solver 是一款電子產品散熱仿真軟件,用于對電子系統散熱性能進行準確快速的分析。借助 Celsius EC Solver,設計人員能夠在設計周期的早期階段
    的頭像 發表于 12-16 18:11 ?177次閱讀
    Celsius EC <b class='flag-5'>Solver</b>:對電子系統散熱性能進行準確快速分析

    手寫圖像模板匹配算法在OpenCV中的實現

    OpenCV中的模板匹配是支持基于NCC相似度查找的,但是不是很好用,一個主要的原因是查找最大閾值,只能匹配一個,自己比對閾值,又導致無法正確設定閾值范圍,所以問題很多。于是我重新寫了純Python版本的NCC圖像模板匹配的代碼
    的頭像 發表于 11-11 10:12 ?235次閱讀
    手寫圖像模板<b class='flag-5'>匹配</b><b class='flag-5'>算法</b>在OpenCV中的實現

    天線阻抗測量和匹配

    電子發燒友網站提供《天線阻抗測量和匹配.pdf》資料免費下載
    發表于 09-26 11:08 ?0次下載
    天線阻抗測量和<b class='flag-5'>匹配</b>

    system_adc_read_fast為什么只能采集255個樣本?

    system_adc_read_fast僅采集 255 個樣本 當樣本數量增加時,函數凍結,看門狗復位芯片。 NONOS 2.0
    發表于 07-18 08:31

    電路的阻抗如何匹配

    電路的阻抗匹配是指調整電路組件(包括源和負載)之間的阻抗,使電源能盡可能多地傳遞能量,而不是產生反射。當源、傳輸線以及負載的阻抗都相等時,可以達到最佳的阻抗匹配,從而最大限度地減少信號的反射和損耗
    的頭像 發表于 06-28 08:29 ?2181次閱讀
    電路的阻抗如何<b class='flag-5'>匹配</b>

    機器學習的經典算法與應用

    關于數據機器學習就是喂入算法和數據,讓算法從數據中尋找一種相應的關系。Iris鳶尾花數據集是一個經典數據集,在統計學習和機器學習領域都經常被用作示例。數據集內包含3類共150條記錄,每類各50個數
    的頭像 發表于 06-27 08:27 ?1643次閱讀
    機器學習的<b class='flag-5'>經典</b><b class='flag-5'>算法</b>與應用

    求助,為什么ble_mesh_fast_prov_server和ble_mesh_fast_prov_client運行之后沒能連接上呢?

    ble_mesh_fast_prov_server和ble_mesh_fast_prov_client沒有能夠自動連接,二者的Log如下: ble_mesh_fast_prov_client的Log
    發表于 06-26 07:32

    ble_mesh_fast_prov_client在配網時不能支持PB-GATT嗎?

    在ble_mesh_fast_prov_server的make menuconfig中選擇了Provisioning support using GATT (PB-GATT) 但是在
    發表于 06-26 06:08

    GPIO_MODE_OUT_OD_LOW_FAST和GPIO_MODE_OUT_OD_HIZ_FAST這兩個是什么區別呢?

    GPIO_MODE_OUT_OD_LOW_FAST GPIO_MODE_OUT_OD_HIZ_FAST這兩個是什么區別呢?都是漏極開路。
    發表于 05-16 07:10

    立體聲放大器電路圖分享

    立體聲放大器是一種音頻放大設備,用于放大立體聲音頻信號并驅動立體聲揚聲器系統,以產生左右聲道的音頻輸出。立體聲放大器通常具有兩個獨立的放大通道,分別對應左右聲道,以確保音頻信號的相位和
    的頭像 發表于 02-06 14:32 ?5947次閱讀
    <b class='flag-5'>立體</b>聲放大器電路圖分享

    立體聲解調器電路圖分享

    立體聲解調器是一種電子設備,用于將立體聲音頻信號進行解碼,以便在音響系統中播放出立體聲效果。它由接收機、調頻檢波器、立體聲解調器(MPX)等部分組成。
    的頭像 發表于 01-16 17:28 ?8693次閱讀
    <b class='flag-5'>立體</b>聲解調器電路圖分享

    什么是匹配濾波器?如何理解匹配濾波器?

    [導讀]為增進大家對匹配濾波器的認識,本文將對匹配濾波器、匹配濾波器的詳細理解予以介紹。 匹配濾?波器作為濾波器的一種,在信號處理系統中發揮著重要作用。為增進大家對
    的頭像 發表于 01-12 08:39 ?1664次閱讀

    為什么要阻抗匹配?怎么進行阻抗匹配

    )。 其中電抗又包括容抗和感抗,由電容引起的電流阻礙稱為容抗,由電感引起的電流阻礙稱為感抗。 阻抗匹配的理想模型 射頻工程師大都遇到過匹配阻抗的問題,通俗的講,阻抗匹配的目的是確保能實現信號或能量從“信號源”到“負載”的有效傳送
    發表于 01-02 16:59 ?2676次閱讀
    為什么要阻抗<b class='flag-5'>匹配</b>?怎么進行阻抗<b class='flag-5'>匹配</b>?

    STM32控制中常見的PID算法總結

    在很多控制算法當中,PID控制算法又是最簡單,最能體現反饋思想的控制算法,可謂經典中的經典經典
    發表于 12-27 14:07 ?1690次閱讀
    STM32控制中常見的PID<b class='flag-5'>算法</b>總結

    系統分析大講堂:Clarity 3D Solver 課程新內容

    本文翻譯轉載于:Cadence blog 作者:DanGerard Cadence Clarity 3D Solver(Clarity 三維求解器)培訓課程包含目前所有使用Cadence
    的頭像 發表于 12-26 12:20 ?1386次閱讀
    系統分析大講堂:Clarity 3D <b class='flag-5'>Solver</b> 課程新內容
    主站蜘蛛池模板: 网红主播 国产精品 开放90后| 天堂视频在线观看免费完整版| 国产综合在线观看| 国产传媒18精品免费观看| YELLOW视频在线观看大全| 91欧美秘密入口| 在镜头里被CAO翻了H| 亚洲一区二区免费看| 亚洲色大成网站www久久九九| 亚洲AV无码一区二区三区乱子伦| 无修肉动漫在线观看影片| 偷偷要色偷偷| 午夜福利免费院| 亚洲AV无码一区二区色情蜜芽 | 国产免费人视频在线观看免费 | 亚洲一级电影| 亚洲欧美精品无码大片在线观看 | 日本高清不卡码无码v亚洲| 清晨紧湿爱运动h高h| 日韩欧美高清一区| 色偷偷亚洲男人天堂| 网友自拍成人在线视频| 亚洲国产AV无码综合在线| 亚洲免费国产| 中文字幕不卡免费高清视频| 99视频精品国产在线视频| 把腿张开老子CAO烂你动态图| 别插我B嗯啊视频免费| 国产成人精品电影| 国产亚洲欧洲日韩在线观看| 精品无码无人网站免费视频 | 国产精品久久久精品日日| 国产日韩精品一区二区三区在线| 国产在线高清视频无码不卡| 九九热在线视频观看这里只有精品| 久久夜色噜噜噜亚洲AV0000| 欧美日韩国产在线一区二区| 少妇无码太爽了视频在线播放| 亚洲不卡视频在线| 在线观看免费精品国产| WWW亚洲精品久久久乳|