搜索图像颜色并返回X, Y
我一直在寻找一种方法,可以在一张图片(屏幕截图)中找到特定的颜色,并返回这个颜色的位置(x,y)。我尝试过几次,但还没能找到合适的方法。最终的结果应该是找到的第一个像素的位置。
我想也许可以用PIL来帮忙。所以我尝试了一些代码,但现在的问题是,它返回了所有找到的那个颜色的位置:
修复:
def FindColor(r,g,b):
image = ImageGrab.grab()
for x in range(1, 400):
for y in range(1,400):
px = image.getpixel((x, y))
if px[0] == r and px[1] == g and px[2] == b:
return(x,y)
而且,我需要把循环的范围替换成图片的宽度和高度。
1 个回答
3
在找到第一个符合条件的结果后,就直接返回这个结果,而不是继续循环下去。