Распознавание изображения

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Добрый день, подскажите как можно реализовать выполнение определенного действия при совпадении части изображения?
Необходимо проверить часть изображения и если оно совпало то сделать клик в нужной части экрана, если не совпало, подождать несколько секунд и снова проверить совпадение.

Пробовал выполнить это через "клик по картинке" но проверка на совпадение не работает, переход происходит всегда положительным.
 

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 794
Благодарностей
6 024
Баллы
113

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
а для чего тогда нужен "клик по картинке"?

я в С полный ноль (

может кто поможет накидать код для проверки?
сайт полностью на флеше. нужно взять небольшую область (15х15 или 20х20 пиксел) с экрана по координатам, сравнить ее на совпадение с образцом и совершить переход далее по проекту или проверить снова совпадением через несколько секунд
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 441
Благодарностей
10 000
Баллы
113
Добрый день, подскажите как можно реализовать выполнение определенного действия при совпадении части изображения?
Необходимо проверить часть изображения и если оно совпало то сделать клик в нужной части экрана, если не совпало, подождать несколько секунд и снова проверить совпадение.

Пробовал выполнить это через "клик по картинке" но проверка на совпадение не работает, переход происходит всегда положительным.
поиск по картинке - не очень точный инструмент.. следует тщательно подбирать область, где производить клик (поиск), могут быть ложные срабатывания, например клики не туда..
если клик произошел не туда, то соотв. и выйдет по положительной зеленой ветке..
 

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 794
Благодарностей
6 024
Баллы
113
Что-то вы мудрите... Распознавание изображений тогда тут и ненужно... Я так понимаю. на сайте, который на флеше, в определенный момент появляется картинка, по которой нужно кликнуть., так?
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Что-то вы мудрите... Распознавание изображений тогда тут и ненужно... Я так понимаю. на сайте, который на флеше, в определенный момент появляется картинка, по которой нужно кликнуть., так?
Так я и не говорил, что ее нужно распознать, я говорил что нужно сравнить с "эталоном"

Вы правы, нужно в определенный момент определить, что произошло "событие" (меняется цвет и фон определенного участка) и кликнуть по кнопке. Если событие не произошло, ждать пока оно будет.

вот пример изображения
2015-12-03 19-32-17 ProjectMaker for ZennoPoster v5.9.5.1 by ZennoLab.com.png


можно даже сравнивать просто по цвету

Что значит клик не туда? нужно если совпало - кликнуло, не совпало - не кликнуло, перешло на назад или ждало появления кнопки
 
Последнее редактирование:

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 794
Благодарностей
6 024
Баллы
113
Так я и не говорил, что ее нужно распознать, я говорил что нужно сравнить с "эталоном".
А название самой темы?)
Сравнивать по цвету стандартными средствами не получится... Может какое-то другое событие? Элемент какой-то появляется на странице при этом, кнопка например.
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Ок, был не прав ))))

Сайт полностью флешевый (игра) кроме графики в нем ничего не происходит. Делаю просто кликер, что бы зенка сама определяла события и кликала в нужные места.
вот пример экрана2015-12-03 19-44-20 ProjectMaker for ZennoPoster v5.9.5.1 by ZennoLab.com.png
 
  • Спасибо
Реакции: LightWood

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 794
Благодарностей
6 024
Баллы
113
Вот это окошечко результаты боя... Конструктор действий её цепляет? (Правый клик>Конструктор действий)
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Вот это окошечко результаты боя... Конструктор действий её цепляет? (Правый клик>Конструктор действий)
не цепляет. зенка все воспринимает только как одну большую картинку.

2015-12-03 20-18-55 ProjectMaker for ZennoPoster v5.9.5.1 by ZennoLab.com.png

ну или я не понимаю, что нужно сделать...
 

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 794
Благодарностей
6 024
Баллы
113
Поидее нужно проверять выскочило ли окошко Результаты боя, и если выскочило, то кликать по картинке OK. Надо подумать, как это реализовать.
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
с этим с результатими боя вопрос решился. сделал большую область для определения картинки и зенка угадывает правильно куда кликнуть
вот в этом случае нужно кликнуть по левой клавише

если левой кнопки нет, то никуда не кликать и перейти дальше.
но при отсутствии левой клавиши, зенка упорно кликает по правой.... даже выставление 99% совпадения с образцом не помогает...

просто грусть и печаль (
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 068
Благодарностей
5 725
Баллы
113
а как экшен настроен? покажите скрин
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
а как экшен настроен? покажите скрин
2015-12-04 13-22-41 ProjectMaker for ZennoPoster v5.9.5.1 by ZennoLab.com.png

Настраивал по разному, брал и меленькие области с нескольколькими буквами, область смещал что бы и по двум кнопкам определялось, играл с % совпадения и т.д.
Полагаю, что зенка очень сильно "усредняет" изображение и ищет совпадения. В качестве решения пришел к тому, что саму клавишу необходимо "подсветить" курсором, но как его переместить по нужным координатам без клика не нашел (
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 068
Благодарностей
5 725
Баллы
113
как верно было сказано в теме - поиск по картинке весьма неточный инструмент(
пришлите пример шаблона в воспроизводимом формате, чтобы до этого блока дойти можно было. посмотрим.
support@zennolab.com
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Поздравляю всех с прошедшими праздниками!

Продолжаю биться со своей темой. Сейчас пришла в голову идея как избавиться от поиска по изображению.
В разные моменты изменяется тайтл окна. Подскажите как можно его вытаскивать в определенный момент и сравнить с текстом (ожидание, бой, награда и т.д.) ?
Буду оч. признательным.
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 139
Баллы
113
Подскажите как можно его вытаскивать в определенный момент и сравнить с текстом (ожидание, бой, награда и т.д.) ?
Буду оч. признательным.
Получаете тайтл C# кодом
Код:
return instance.ActiveTab.Title;
Затем сравниваете If'ом или Switch'ем.
 
  • Спасибо
Реакции: Onotole

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
C#
Код:
return instance.ActiveTab.Title;
А на вторую часть вопроса можно получить ответ ? )))
Просто я очень далек от С# и не знаю как обработать переменную с текстом, что бы можно было сравнить с контрольным текстом ?
Желательно что бы происходило не 100% сравнение, а искало совпадении по 1-2 словам
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 139
Баллы
113
Сравнивайте стандартными экшенами If: '{-Variable.Title-}'=='Текст'
или Switch, если несколько вариантов.

PS. Должно быть 100% совпадение.
 
  • Спасибо
Реакции: Onotole

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Dimionix, спасибо. буду пробовать.
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Не получилось.
Может быть название окна, как то еще формируется?
Просто когда окно браузера свернуто, то в названии пишется происходящее в игре (см. скрин ниже)
Но в зенно тайтл не изменяется и всегда один и тот же, независимо от происходящих событий в игре. (игра полностью на флэше)


2016-01-19 01-02-26 Скриншот экрана.png
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 139
Баллы
113
Значит нужно искать еще какие-то уникальные параметры.
Вообще, может для этого дела проще использовать автокликер?
 

Onotole

Client
Регистрация
19.09.2013
Сообщения
47
Благодарностей
3
Баллы
8
Значит нужно искать еще какие-то уникальные параметры.
Вообще, может для этого дела проще использовать автокликер?
конечно кликер был идеальным вариантом, если "ожидание игроков" "продолжительность боя" и т.д. всегда имели одну и ту же продолжительность... (
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
в кликерах тоже есть поиск по картинке, примитивная логика, паузы, циклы и тд
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 139
Баллы
113
Не знаю, может бред, конечно.
Если в определенный момент делать скрин какой-то области инстанса и сравнивать с эталонным изображением (сравнивать хеш сумму полученного изображения и эталонного).
Как вариант:-)
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
Не знаю, может бред, конечно.
Если в определенный момент делать скрин какой-то области инстанса и сравнивать с эталонным изображением (сравнивать хеш сумму полученного изображения и эталонного).
Как вариант:-)
блик какой-нибудь в стиле флеша проскочит и приехали)
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)