opencv二值图孔洞填充算法

申明,本文非笔者原创,原文转载自:http://geniusshare.blog.sohu.com/149854097.html

孔洞者,不与大背景联通却具有大背景颜色的像素也,所以思路如下:将大背景全部用前景色(白色)填充(cvFloodFill函数,一(0,0)为种子点即可),即得到孔洞图(此时孔洞用为黑色),然后将此图二值反转,即得到用白色表示的孔洞图,然后将此空洞图与原二值图相加(使用cvAdd函数即可)即可将孔洞填充掉,这个方法目前寂静基本上可以填充孔洞,但是还有一点瑕疵,那就是用完cvFloodFill函数填充大背景后边界却保留下来了,即未填充,当然这个对孔洞填充来说的视觉效果上没有什么影响的,但是严格来讲还是有一点问题的,我查阅了cvFloodFill函数的参数说明,却未看出到底是什么使得边缘不被填充而被保留了下来,如果解决了这个问题,那这个填充算法就完美了。

你可能感兴趣的:(CV相关)