【发布时间】:2016-05-12 05:06:42
【问题描述】:
我正在尝试用黑色填充这些白色部分(在此图像上只有一个部分,但可以有多个)。我唯一的想法是遍历图像边界上的像素,每当我看到一个白色像素时,运行该算法递归地填充周围白色像素的所有白色像素。
虽然这显然会产生我想要的结果,但我希望有一种更简单的方法可以使用 numpy/scipy/scikit-image 实现这一点。
在搜索 SO 时,我发现的唯一相关问题是 this。这个问题听起来与我想要的相似,但实际上解决了另一个问题。有没有希望为我找到一个简单的解决方案?
【问题讨论】:
-
contours的概念可以很容易地解决你的问题,你可以使用 opencv 吗?因为我不确定 scipy 或 numpy 是否有用于在给定图像中查找轮廓的 API。 -
@ZdaR 我可以随意使用我想要的任何东西。问题是我对 OpenCV 不是很熟悉。但如果你能提供一个很好的解释,我将非常感激。
-
您的输入图像周围也有白色边框?因为在这种情况下,首先您还需要裁剪图像并移除该边框?
-
@ZdaR 是的,有时我拥有它(并非总是如此,也不是来自所有方面)。如果我要使用我的递归方法,它不会有任何区别,但我想在你的情况下它确实如此。
-
你有关于每边边框宽度的信息吗?
标签: python numpy scipy scikit-image