是否有python / openCV的floodFill函数,它接受种子列表并开始更改其邻居的颜色?我知道simplecv就像SimpleCV floodFill那样的函数。 OpenCV说它有两个floodFill函数,当它使用一个掩码而另一个没有,documentation时,我无法使用opencv floodfill函数而没有掩码和种子列表。有什么帮助吗?
这是我到目前为止要做的事情:
A=array([[0,1,1,0],[0,0,0,0],[1,1,1,1],[1,1,1,1]],np.uint8)
mask = np.ones((A.shape[0]+2,A.shape[0]+2),np.uint8)
mask[1:-1,1:-1] = np.zeros((A.shape))
cv.floodFill(A, mask, (3,0), 0,0,0, flags=4|cv.FLOODFILL_MASK_ONLY)
print mask
返回掩码:
[[1 1 1 1 1 1]
[1 1 0 0 1 1]
[1 1 1 1 1 1]
[1 0 0 0 0 1]
[1 0 0 0 0 1]
[1 1 1 1 1 1]]
预期面具:
[[1 1 1 1 1 1]
[1 0 0 0 0 1]
[1 0 0 0 0 1]
[1 1 1 1 1 1]
[1 1 1 1 1 1]
[1 1 1 1 1 1]]
原始图片:
[[0 1 1 0]
[0 0 0 0]
[1 1 1 1]
[1 1 1 1]]