pyautogui.locateAll() возвращает сотни одинаковых позиций, когда на экране только 1 изображение

#python #image-recognition #pyautogui

Вопрос:

Поэтому я хотел сделать сценарий, который мог бы сообщить мне положение всех маркеров на экране.

 locate_markers = pyautogui.screenshot('C:/Users/User/Desktop/python/bot/locate_markers.png')
for pos in pyautogui.locateAll("C:/Users/User/Desktop/python/bot/MarkerTransparent2.PNG", "C:/Users/User/Desktop/python/bot/locate_markers.PNG", confidence=0.6):
    print(pos)
 

маркер и скриншот

Но когда я запускаю его, даже когда на экране только один маркер, он выводит что-то вроде этого:

 Box(left=534, top=428, width=59, height=68)
Box(left=535, top=428, width=59, height=68)
Box(left=536, top=428, width=59, height=68)
Box(left=537, top=428, width=59, height=68)
Box(left=538, top=428, width=59, height=68)
Box(left=539, top=428, width=59, height=68)
Box(left=540, top=428, width=59, height=68)
Box(left=541, top=428, width=59, height=68)
Box(left=535, top=429, width=59, height=68)
Box(left=536, top=429, width=59, height=68)
Box(left=537, top=429, width=59, height=68)
Box(left=538, top=429, width=59, height=68)
Box(left=539, top=429, width=59, height=68)
 

но не останавливается, пока я не закончу программу. Может кто-нибудь сказать мне, почему он ведет себя так странно и как я могу это исправить?

Я нашел похожее сообщение, в котором говорилось, что я должен изменить значение уверенности, но это не сработало, оно либо нашло миллион, либо вообще ничего.

кстати, это мой первый пост(я просто следовал руководству, которое появилось), поэтому, если у вас есть улучшения в том, как задавать вопросы, дайте мне знать.

Комментарии:

1. Вы должны опубликовать изображения скриншота и шаблона, который вы ищете.

2. Какова длина locateAll()?