如何去除opencv中的二值图像噪声?

Posted

技术标签:

【中文标题】如何去除opencv中的二值图像噪声?【英文标题】:how remove binary image noise in opencv? 【发布时间】:2012-02-05 17:38:43 【问题描述】:

在将图像转换为二进制图像(黑白)后,如果有任何噪音怎么能 我删除了不需要的噪音

您可以看到下图在黑色区域内有一些白噪声如何去除噪声 使用 opencv

http://img857.imageshack.us/img857/999/blacknoise.jpg

【问题讨论】:

【参考方案1】:

您可以通过Erode 和Dilate 实现它。

cvErode( in, eroded, NULL, 4) 之后的图片:

cvDilate( eroded, dilated, NULL, 4) 之后:

【讨论】:

谢谢我之前找到了这篇文章,但我不明白这里发生了什么 @user1190910 这篇文章不是很好,所以我已经编辑了我的问题。只需这两个调用,您应该会得到很好的结果。【参考方案2】:

您也可以使用floodFill,将角像素作为种子(或其他您知道不是对象的像素)。

您可以查看here 使用侵蚀、扩张和洪水填充的示例。

【讨论】:

以上是关于如何去除opencv中的二值图像噪声?的主要内容,如果未能解决你的问题,请参考以下文章

OpenCV - 去除图像中的噪声

opencv图像处理基础之膨胀和腐蚀

图像处理--OpenCV实现图像加噪与滤波

去除图像中虚假的小噪声岛 - Python OpenCV

OpenCv 025---图像去噪

Opencv——图像添加椒盐噪声高斯滤波去除噪声原理及手写Python代码实现