Перейти к содержимому
Compvision.ru
severum

Подскажите примеры поиска по шаблону

Recommended Posts

Подскажите для быстрого старта примеры и что почитать может.

1. На скриншоте с экрана по патернам хочу опознать цифры(расположены вряд) и картинки. Знаю примерное расположение.

Вроде должно быть просто и быстро - пиксели один в один (по цвету). Не видео. Может часть перекрыта.

(cvMatchTemplate() ?)

2. Получить разницу двух картинок. И опять же отличающиеся участки использовать для поиска на них цифр и картинок.

Предполагаю Python + PIL + OpenCV.

Может для этого OpenCV и не обязателен и есть, что то более подходящее.

Нужно для автоматизации - вариация sikuli, но в своем исполнении.

Желательно, что бы работало побыстрее (openCL ?).

Заранее спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1. спасибо

2. Два скриншота сделаны с разницей в 5 секунд. На экране что-то изменилось. Определить места где. Чтобы ускорить поиск по тем же шаблонам.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ну если у вас что то простое(типа интернет страницы), то можно просто сделать вычитание пикселей даже.

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

http://experienceopencv.blogspot.ru/2011/01/background-subtraction-and-models.html

google->opencv background subtraction

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Двигаюсь медленно как появляется время.

1. А как после matchTemplate правильно найти больше одного совпадения?

Локальные экстремумы которые больше/меньше определенного порога.

Как быстрее?

Есть какая-то функция?

Последовательно заливать найденное и искать дальше?

Залить по порогу? Найти не залитые области и искать в каждой из них?

2. В python cv2 ROI вроде считается устаревшим?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Еще вопрос.

Как определить на сколько найденное соответствует шаблону.

т.е. нахожу минимум (matchTemplate, CV_TM_SQDIFF, minMaxLoc ) = лучший результат = некое число. В какой диапазон оно должно попасть чтобы быть уверенным, что соответствие 95%.

И если процент меньше считать, что не нашел.

Не зависимо от размеров изображений.

Спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А что такое

соответствие 95%
?

Как Вы его определите? Процент чего от чего?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ну как бы коэффициент корреляции 1 это полное совпадение т.е. 100%.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо за ответы.

Как Вы его определите? Процент чего от чего?

Можно думаю заранее посчитать какие цифры получаются при полном совпадении картинок, при полном не совпадении и т.д...

ну как бы коэффициент корреляции 1 это полное совпадение т.е. 100%.

При корреляции да. Но там формулы разные и цифры совсем разные получаются. Надо видимо выбрать, что я хочу.

Пока цель получить функцию наподобие того, что есть в Sikuli.

Может знаете... как там это реализовано и почему так медленно по сравнению с opencv работает?

Сейчас время появится - поэкспериментирую.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Может знаете... как там это реализовано и почему так медленно по сравнению с opencv работает?

ну во-первых там походу скриптовый язык, значит идет его итерпретация.

потом cvmatchtemplate делается через фурье преобразование( быстрее ).

кстати что умеет этот язык?

может запоминать, то что делает юзер, а потом воспроизводить?

ну например пройтись по определенным ссылкам и сохранить фотографии+ прочитать информацию в определенных полях и записать в txt?

может в несколько потоков желательно чтоб еще и прокси автоматом?

а то на том же питоне+селениум это относительно муторно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×