种子填充算法 python
时间: 2023-12-02 20:43:20 浏览: 235
种子填充算法
种子填充算法是一种图像处理算法,用于将一个封闭区域内的所有像素点都填充为同一种颜色。下面是一个Python实现的种子填充算法的示例代码:
```python
import matplotlib.pyplot as plt
# 定义矩阵a,0表示空白点,1表示填充点,2表示边界点
a = [[2]*82 for i in range(80)]
for i in range(1, 81):
for j in range(1, 81):
a[i][j] = 0
# 种子填充算法
def seedFill(x, y):
if(a[x][y] == 0):
a[x][y] = 1
seedFill(x+1, y)
seedFill(x, y+1)
seedFill(x-1, y)
seedFill(x, y-1)
# 在矩阵a中,根据值的不同来填充
for i in range(1, 81):
seedFill(i, 1)
seedFill(i, 80)
seedFill(1, i)
seedFill(80, i)
for i in range(1, 81):
for j in range(1, 81):
if(a[i][j] == 1):
plt.plot(i, j, 'r.', markersize = 1)
elif(a[i][j] == 2):
plt.plot(i, j, 'b.', markersize = 1)
plt.show()
```
这段代码首先定义了一个矩阵a,用于表示图像中的像素点。然后定义了一个seedFill函数,用于进行种子填充。最后根据矩阵中的值的不同,使用matplotlib库绘制出不同颜色的点,完成填充。
阅读全文