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

Onotole

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

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

VladZen

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

Onotole

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

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

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

Sergodjan

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

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

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 453
Благодарностей
5 912
Баллы
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 453
Благодарностей
5 912
Баллы
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 453
Благодарностей
5 912
Баллы
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 453
Благодарностей
5 912
Баллы
113
Поидее нужно проверять выскочило ли окошко Результаты боя, и если выскочило, то кликать по картинке OK. Надо подумать, как это реализовать.
 

Onotole

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

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

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

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
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 067
Благодарностей
5 714
Баллы
113
как верно было сказано в теме - поиск по картинке весьма неточный инструмент(
пришлите пример шаблона в воспроизводимом формате, чтобы до этого блока дойти можно было. посмотрим.
[email protected]
 

Onotole

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

Onotole

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

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

Dimionix

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

Onotole

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

doc

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

Dimionix

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

doc

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

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