在图形切割分割中鼓励边缘处的对象边界

时间:2016-05-17 13:16:44

标签: matlab graph image-segmentation

到目前为止,我一直在使用Otsu的方法或K-means来分割一些灰度图像。然而,我注意到细分不能完美"仅基于强度。至少有一个人必须考虑图像中的局部渐变。

然后我做了一些研究并发现了图切割分割算法。我认为这个算法是有益的,因为

  1. 考虑相邻像素之间的关系
  2. 如果我事先知道属于某个类的像素,我可以加入先验知识。
  3. 我现在一直在使用Shai's MATLAB Graph Cut wrapper进行一些测试,并注意到Graph Cut看起来并不像我想象的那样有用。基于渐变,我可以减少类边界的惩罚,但我不能鼓励算法在边缘绘制边界 - 如果初始化中没有边界通过K-Means / Otsus(创建Dc)即使可能存在强大的局部边缘,算法也不会绘制一个算法。我认为这是因为成本必须是积极的。 因此,这里的Graph-Cut似乎只能帮助平滑边界,但它不会帮助我介绍"新的"。

    长话短说:我上面的故事听起来有道理吗,即我的结论有意义吗?或者,有没有办法使用边创建边界?

    谢谢!

    PS。对不起,我无法在这里展示一个真实的形象:(

1 个答案:

答案 0 :(得分:0)

简而言之:使用“常规”图形切割配方,成对术语用于鼓励平滑。它可以根据局部渐变进行调整,使图像边界更弱,但正如您所正确指出的那样,它总是非负的,因此,它永远不会鼓励更改标签(除非每个像素项中存在强有力的证据)。 / p>

对非负对称项的要求称为“子模块性”,并且仅对于子模块能量存在多项式时间解(对于2个标签情况是精确的,对于多个标签是良好的近似)。登记/> 您可以在Kolmogorov and Zabih, What Energy Functions can be Minimized via Graph Cuts?, PAMI 2004上阅读有关“子模块性”的更多信息。

但是,您可以跨图像边界为成对术语定义非子模块权重。您将无法再使用“常规”GCMex实现,但是,有一些很好的近似算法即使在非子模块能量的不稳定领域也会产生不合理的结果。
对于双标签案例,探索的第一个近似值是QPBO,在Kolmogorov and Rother, Minimizing non-submodular functions with graph cuts - a review, PAMI 2007处描述。
下一步是multi-scale approximation描述的多标签Bagon and Galun, A Multiscale Framework for Challenging Discrete Optimization, NIPS 2012

最后但并非最不重要的一点是,如果您只有成对的互动(正为负)且没有明确的每像素字词,您可能需要考虑使用Correlation Clustering功能进行细分。