所以我得到了一个带有曲线的图像,并且我得到了一个寻找1个像素,然后连接相邻像素的函数(例如形成一条路径),但是以某种方式在向西南或向西行驶时找不到任何像素,即使有一个。
该功能类似于:
pixels=img.getpixels()
window=((1,0),(0,-1),(-1,0),(0,1),(1,1),(1,-1),(-1,-1),(-1,1))
objs=[]
obj=[pixels.pop(),]
while pixels:
p=obj[-1]
neighbours=tuple((x+p[0],y+p[1]) for x,y in window)
for n in neighbours:
if n in pixels:
obj.append(n)
pixels.remove(n)
break
if p==obj[-1]:
objs.append(obj)
obj=[pixels.pop(),]
和失败示例:
每种不同的颜色代表不同的“对象” 不应该只显示一个对象吗?
我对此表示感谢,tyvm:D