warrior
graphcut,讓人歡喜讓人憂
2007-09-06 21:50
終於和陳賢弟,進入graphcut得學習了,只是這一塊一直為我所難以啃掉得硬骨頭,在我畢業之前能不能咬下來,希望可以,只是近日再度回首,發現其涉及得理論,有一點前沿,雖然三四年前提出得東西,但由於作者交代得簡單,含糊,使得這一技術得應用受到了嚴重得限制,幾乎很多人都知道 graphcut可是又有多少人可以實現這個graphcut呢,寥寥無幾吧,一年前我不懂,一年後得今天,還在為這個而愁眉不展,不忘早點解決這個問題,當然,還得於陳賢弟好好交流合作了。
graphcut是一座大山,可是翻過了這座大山,後面還有一座更大得,不過更激發我興趣得大山要去翻越。真實永無止境啊!
上次××問我graphcut怎麼實現 我不知道,估計他也不一定懂,過段時間我實現了,就可以比上次有更大得進步了。自信也會提高很多得
graph cut
graph cut是一種energy minimization的方法,用來解first-order markov random field比用belief propagation感覺更好,比用dynamic programming(只用1d求解), gradient decedent, simulated annealing, etc 要好得更多;特別是使用a-b-swap, 和 a-expansion的時候。剛開始看graph cut的時候不著門道,走了很多彎路,現在總結起來可以這樣學習:
1。學習algorithm課本裡的關於graph那一節,或者google maxflow/mincut相關的內容,有介紹mincut的兩種解法;
2。然後就開始看用graphcut解決computer vision裡的問題,首先要看的是《interactive graph cuts for optimal boundary & region segmentation of objects in n-d images》iccv 01。這篇*****講怎麼用graphcut來做image segmentation;
3。看 (boykov, veksler and zabih, pami '01),這篇*****系統介紹了如何構造graph和energy term來解stereo disparity, motion等問題,也比較直觀的介紹了a-expansion。後面的關於graphcut的tpami的文章都沒有介紹如何構造graph來解問題,這篇比較關鍵;
看了以上幾個文章後,基本就可以看懂關於graphcut的**了,就可以深入下去了。
關於graph cuts的簡介及相關資源
【簡介】
graph cuts 不等於 graph cut(如 min cut、normalized cut、ratiocut), 是最近在計算機視覺中研究和應用比較多的energy minimization(能量函式最小化)優化演算法,典型的用於stereo matching, image restortion, texture synthesis等應用。
【原理】
( boykov, veksler and zabih, pami '01),這篇*****是graph cuts的開山之作,系統介紹了如何構造graph和energy term來解stereo disparity, motion等問題,也比較直觀的介紹了a-expansion。
reconstruction from two or more views>
(kolmogorov's phd thesis 04), 這篇**是
kolmogorov的博士**,實現了graph
cut用於立體視覺的匹配,它改善了傳統graph cut計算耗時的缺點,他還因此稱為微軟一員,專門從事graph cut在影象處理上的應用。
(kolmogorov pami '04).
本文首先介紹了需要通過graph cut最小化的能量函式的特性。雖然是二進位制變數但是很容易推廣到其他方面。詳細描述了通過graphcut最小化的能量函式。並提供了最小化能量函式的通用構建。最後給出了最小化二進位制能量函式的必要條件。
<
interactive graph cuts for optimal boundary & region segmentation of objects in n-d images
>
( boykov
iccv01)
這篇*****講怎麼用graphcut來做image segmentation。
【應用】
graph cuts最主要的應用是影象分割。
在boykov 和 kolmogorov 倆人的主頁上就有大量的code。包括maxflow/min-cut、stereo algorithms等演算法:
以及olga. veksler的
trackback:
[**筆記] cuda cuts: fast graph cuts on the gpu
Graph cut入門學習
graph cut是一種energy minimization的方法,用來解first order markov random field比用belief propagation感覺更好,比用dynamic programming 只用1d求解 gradient decedent,simulated...
gazebo入門 V REP學習入門
v rep是一款十分實用的機械人 工具,在驗證機械人演算法中經常使用,與gazebo相比,v rep的建模過程更簡單,對使用者也更友好,但是與ros的相容沒有gazebo好,v rep的最好的學習資料就是他的官方 v rep user manual www.coppeliarobotics.com ...
OpenGL入門學習
include 太陽 地球和月亮 假設每個月都是30天 一年12個月,共是360天 static int day 200 day的變化 從0到359 void mydisplay void void myidle void int main int argc,char argv 3 關於垂直同步co...