local expansion解读
1.graph cut(分成前景和背景)
2.Alpha-expansion(分成多个平滑平面)
3.local-expansion
grab cut
主要目的:通过在前景和背景各画几画作为输入,将建立各个像素点与前景背景相似度的赋权图,通过求解最小切割区分为前景和后景。
图的定义
顶点集V,边集E,图G可以定义为有序对G=(V,E)
graph cut分为两种顶点和边:
1,普通顶点对应图像中的每个像素。每两个领域顶点的链接就是一条边。(n-link)
2,两个终端顶点(S和T),每个普通顶点和这两个终端顶点之间有连接组成第二种边(t-links)
能量函数
寻找到一个割,使得前景背景分开,它的边的所有权值之和最小,那么这个就称为最小割,也就是图割的结果。所以图像分割可以看成像素标记问题,假设前景为0,背景为1.
能量函数定义为:E(L)=αR(L)+B(L)E(L)=αR(L)+B(L)
R(L)表示区域项,R(L)=∑p∈PRp(Ip),Rp(Ip)R(L)=∑p∈PRp(Ip),Rp(Ip)表示像素p分配标签IpIp的惩罚。就是t-link的权重
B(L)表示边界项,B(L)=∑p,q∈NB<p,q>δ(lp,lq)B(L)=∑p,q∈NB<p,q>δ(lp,lq)就是n-link的权重。
最小割最大流
目前的主要算法:
1) Goldberg-Tarjan
2) Ford-Fulkerson
3) 上诉两种方法的改进算法
Alpha-expansion
graph cut 将图片分为前景背景两个标签,而Alpha-expansion将图片分为多个标签。
该算法基于分块光滑的前提:1,这些量在块的内部变化平滑。2在块与快之间(物体边界)变化很大。
对于每一个像素点p∈Pp∈P,用一个标签(label)fp∈Lfp∈L,将每个像素pp映射到标签集
的某个标签上。
目的:寻找标签函数f使得能量函数最小。
能量函数表达和graphcut 相似,其中
E(f)=Esmooth(f)E(f)=Esmooth(f)(与graphcut的边界项对应)+ Edata(f)Edata(f)(与graphcut的区域项对应)
这里EsmoothEsmooth表示f分块的不光滑程度,EdataEdata表示f与观测到的数据的不一致性
Esmooth=∑{
p,q}∈NVp,q(fp,fq),Edata(f)=∑p∈P</