我在Jupyter笔记本上工作。首先下载您的图像:!wget https://i.stack.imgur.com/SJxo3.png
然后从您的pic创建一个RGBA数组:
^{pr2}$
我们希望在您的图片上有一组不同的颜色,因此我们创建了一组:colors=set()
for each in arr:
for EACH in each:
colors.add(tuple(EACH.tolist()))
我们要循环这些颜色并选择每种颜色出现的区域。我们从以下几点开始:for index, each in enumerate(colors):
现在每个颜色都是一个元组,在这个for循环中,当前是一个元组,我们需要一个列表,因此:color=[]
for EACH in each:
color.append(EACH)
我们现在创建一个包含布尔值的数组,如果相应的RGBA组件与我们当前检查的颜色相同,则为True:boolarr=[]
for eachinarr2 in [arr == color]:
boolarr.append(eachinarr2)
然后我们选择与我们当前检查的颜色相同的像素,即RGBA的四个分量都匹配(因此我们有相同的颜色)。我们将这些像素cordinate存储在indexx和INDEXX中。在featurepixels=[]
for indexx, eachh in enumerate(boolarr[0]):
for INDEXX, EACHH in enumerate(eachh):
if EACHH.all() =