Получение целого числа из массива как отдельной переменной в python - PullRequest
0 голосов
/ 24 апреля 2018

Я пытаюсь найти координаты x и y изображений, используя opencv, который, кажется, работает нормально.Но я хочу вернуть только один x и y, а не весь массив, который создает функция opencv.Вот как я пытаюсь это сделать:

def getImageXY():
    im = pyautogui.screenshot()
    im.save(filePathSrc)

    img_rgb = cv2.imread(filePathSrc)
    template = cv2.imread(filePathToFind)

    res = cv2.matchTemplate(img_rgb, template, cv2.TM_CCOEFF_NORMED)
    threshold = .8

    loc = np.where(res >= threshold)

    x = loc[1]
    y = loc[0]

    return x, y

И именно здесь я пытаюсь присвоить значения

def main():
    x, y = ImageFinder.getImageXY()

    print x, y

Мой ожидаемый результат - "322, 766"(просто два отдельных значения x и y)

Но это мой фактический результат: [313 502 314 503 296 485 297 470 486 298 471 487 267 299 472 488 300 473 489 474 490 475]

Т.е. весь массив.

Что я делаю не так?Выполнение точно такого же действия в Java будет работать так, как я ожидаю, но не в Python ...

Есть предположения?

Спасибо

1 Ответ

0 голосов
/ 24 апреля 2018

Ваш loc является двухмерным, что вызывает эффект, который вы видите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...