在Python,OpenCV中使用GrabCut进行交互式前景提取

时间:2014-04-28 09:54:45

标签: python image opencv

我想在一组70张图像中分离背景和前景。但是当我尝试GrabCut算法时,我发现随着背景,前景也被删除了。问题是,我无法手动执行此操作。

这是我的原始图片:

这是GrabCut

的结果

enter image description here

1 个答案:

答案 0 :(得分:1)

由于您无法手动绘制矩形,最好的方法是尝试在原始图像内部(仅作为内部边界)提供10-20像素宽度的边界框并尝试使用它。 但是如果您感兴趣的前景对象位于边界处,则在这种情况下它会被切断。

通过检查输出图像的最大斑点和黑色像素数可以在一定程度上避免这种情况,并且您可以恢复这些情况的原始像素值,直到距离边界10-20像素宽度。大多数情况下,您必须对结果进行后检查并应用一些启发式方法至少还原原始图像的部分。