
0,0 点如果是前景就得不到想要的结果,所以先扩展后裁切
```cpp
void fillHole(const cv::Mat srcimage, cv::Mat &dstimage)
{
Size m_Size = srcimage.size();
Mat temimage = Mat::zeros(m_Size.height + 2, m_Size.width + 2, srcimage.type());//延展图像
srcimage.copyTo(temimage(Range(1, m_Size.height + 1), Range(1, m_Size.width + 1)));
floodFill(temimage, Point(0, 0), Scalar(255));
Mat cutImg;
temimage(Range(1, m_Size.height + 1), Range(1, m_Size.width + 1)).copyTo(cutImg);
dstimage = srcimage | (~cutImg);
}

本文介绍了一种用于图像处理的填充洞孔算法,通过扩展原始图像边界并利用洪水填充算法来标记背景区域,最终通过逻辑运算得到去除洞孔的图像。此方法适用于二值图像的后处理,能有效提升图像质量。
1648

被折叠的 条评论
为什么被折叠?



