在我的项目中,我使用 openCV2 提取图像的线条,首先创建一个骨架:我将其转换为二进制图像,将其反转(使其与形态学运算一起工作),然后执行一堆形态学运算。然后我在骨架上应用精明边缘检测器并执行霍夫变换。
现在是重要的部分:为了消除差距,我执行了关闭操作。我现在的问题是仍然存在一些差距和碎片,我不能再应用一次关闭操作,因为它是幂等的(只适用一次)。
我想通过缩小所有间隙并可能加粗线条来细化线条。我怎样才能做到这一点?
这里有一些图片来说明我的问题。
原始图像

处理后的图像

看到那些从边缘突出的细小线条了吗?还是直线上的中断?
对于我考虑循环遍历矩阵的行中的间隙,如果像素的左右点为 1(绘制),那么该特定像素也应设置为 1。这会是一个好的解决方案吗?
