改进OpenCV中的Grabcut

时间:2014-01-13 14:50:14

标签: c++ visual-studio opencv image-segmentation

我刚刚实现了GrapCV算法(OpenCV,C ++,Visual Studio 12):

  

grabCut(* image,mask,rect,bgdModel,fgdModel,1,GC_INIT_WITH_MASK   );

我用它来分割成下面的图片:

enter image description here

我的结果是:

enter image description here

我的问题是:我现在能够如何改进算法,以便只能看到两个玩家?我的第一个想法是关于颜色深度的变化,但我不知道如何将其发送到“grabCut”。或者还有其他方法吗?

1 个答案:

答案 0 :(得分:-1)

在文件夹 opencv2.4.6 / samples / cpp 中,有很多文件演示了一些经典算法的使用。有一个名为 grabcut.cpp 的文件,它告诉您如何将此算法详细应用于您的应用程序。所以你需要做的就是将这个文件嵌入你的程序中。

如果您有任何其他问题,只需使用grabcut.cpp进行调试,您就会看到它的详细信息。如果你想自己实现它。您需要使用新参数GC_EVALGC_INIT_WITH_MASK更改功能。

grabCut(image,    // input image
    mask,   // segmentation mask
    rect,// rectangle containing foreground
    bgModel,fgModel, // models
    2,        // number of iterations
    GC_INIT_WITH_RECT); // use rectangle