GraphCut
Graphcuts是基于Markov随机场理论和最大流最小割定理(maxflow/min cuttheory)的图像分割算法,这个maxflow是图论经典的算法,网上很多人有讲解的,咳咳,就不抄了。。。Graphcuts代码啥的也蛮多,放一个我在ubuntu14.04LTS64位系统下调试通过的吧:http://download.csdn.net/detail/terry_o0o/8493811这个其实是运用graph cuts应用于立体视觉的代码,实现了三种方法。。。其中maxflow的实现代码也包含在里面了,可以对照原理和代码看。Graphcuts将图像映射成网络图,并在此网络图上构建一个能量函数,然后用最小割算法求解图的最小割集,也就得到了能量函数的最小解。具体说就是把图像中的像素看作是网络图中的顶点,把像素间的相似程度看作是顶点间边的权值大小。大体步骤为: