【简介】
Graph Cuts 不等于 graph cut(如 min cut、normalized cut、RatioCut), 是最近在计算机视觉中研究和应用比较多的energy minimization(能量函数最小化)优化算法,典型的用于stereo matching, image restortion, texture synthesis等应用。
这个优化算法用来解 markov Random Field. 有实验<Comparison of Graph Cuts with Belief Propagation for Stereo, using Identical MRF Parameters>显示,Graph Cuts比用Belief Propagation更好,比用dynamic programming(只用1D求解), gradient decedent, simulated annealing, etc 要好得更多;特别是使用a-b-swap, 和 a-expansion的时候。
【原理】
【应用】
Graph cuts最主要的应用是图像分割。
在Boykov 和 Kolmogorov 俩人的主页上就有大量的code。包括maxflow/min-cut、stereo algorithms等算法:
http://vision.csd.uwo.ca/code/
http://www.cs.ucl.ac.uk/staff/V.Kolmogorov/software.html
以及olga. Veksler的
http://www.csd.uwo.ca/faculty/olga/code.html
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。这篇paper讲怎么用graphcut来做image segmentation;
3。看Fast Approximate Energy Minimization via Graph Cuts (Boykov, Veksler and Zabih, PAMI '01),这篇paper系统介绍了如何构造graph和energy term来解stereo disparity, motion等问题,也比较直观的介绍了a-expansion。后面的关于graphcut的TPAMI的文章都没有介绍如何构造graph来解问题, 这篇比较关键;
看了以上几个文章后,基本就可以看懂关于graphcut的论文了,就可以深入下去了。
http://www.cs.cornell.edu/~rdz/graphcuts.html
Recommended Paper
Yuri Boykov, Olga Veksler, Ramin Zabih. Fast Approximate Energy Minimization via Graph Cuts. IEEE Trans. Pattern Anal. Mach. Intell. 23(11): 1222-1239, 2001.
Graph Cuts Home Page
http://www.cs.cornell.edu/~rdz/graphcuts.html
Source code:
http://www.cs.ucl.ac.uk/staff/V.Kolmogorov/software.html