切割图像后如何消除边缘边界的误差?

时间:2015-03-15 14:46:22

标签: matlab image-processing image-segmentation edge-detection smooth

我正在制作一个具有6步算法的图像处理项目,并且我已经陷入其中一个。

首先,我使用的平台是MATLAB,所以如果你能提供一些样品,它会很棒。但如果您不想编写代码示例,请给我一些提示,技巧等。

让我解释一下我的问题。我已经分割了一个.jpg图像,并删除了一些区域。然后我使用掩码将结果保存为.png。结果是这样的(黑色部分实际上是透明的,我把它变成黑色以便更好地看到问题);

enter image description here

正如您在图片中看到的,有一些不相关的区域。我需要摆脱这些无关紧要的领域。因为我希望前景尽可能顺畅。乍一看,我将高斯模糊应用于蒙版并再次将图像保存为.png。但结果并不像你想象的那样令人满意。我认为这种情况需要比我尝试过的更可靠的解决方案。

Edit1:我使用了光谱遮罩。但它没有任何帮助。我能收到的最好结果就是那样;

enter image description here

正如你所看到的那样,脸上有一些问题,图片底部有很多问题。我想我上面的第一张图片需要一种边缘修边器或边缘平滑器,它应该比消光更快。

任何MATLAB代码示例,技术和方法都会很棒。如果您需要进一步解释,请随时提出。

1 个答案:

答案 0 :(得分:5)

你不想只是"高斯模糊"结果,你想要软分割a.k.a matting。作为图像消光的第一站,我会推荐Levine Rav-Acha和Lischinski Spectral Matting。你会在那里找到一些Matlab代码(我过去使用它 - 非常令人印象深刻的结果)。