Поиск по картинке (ZD)

Оглавление


Описание

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

Операция использует много ресурсов компьютера


Как добавить в проект?

Для добавления поиска по картинке нужно в Окне эмулятора навести курсор мыши на элемент, вызвать контекстное меню правой кнопкой мыши и выбрать пункт “Поиск по картинке”


Для чего это используется?


Описание элементов окна

Регулирумая область поиска

Выделять необходимо уникальную часть элемента. Если выделяете кнопку, то не нужно выделять её всю, так как она содержит много монотонного цвета.

Место совершения клика (прицел)

Место совершения клика. В версии 2.3.2 можно задать в настройках случайное отклонение положения прицела от указанного места.
Может находится вне области поиска.

Скопировать хэш

Кнопка копирует хэш изображения в буфер обмена.
Данный хэш можно использовать в C# методах для поиска по изображению.

Область поиска

Тут задаётся область, внутри которой будет произведён поиск изображения.

  • Весь экран - поиск осуществляется по всему экрану.

  • Выделенная область - при активации данного режима в Окне эмулятора можно будет выбрать область, которой будет ограничен поиск изображения. Можно использовать, когда точно известно, что элемент появится в определённой части экрана.
    Поиск в заданной области происходит быстрее и снижает нагрузку на CPU.

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

После выбора режима “Выделенная область” в Окне эмулятора появится рамка, с помощью которой можно настроить область, внутри которой будет произведён поиск.

Поиск

Точность совпадения - с помощью данной настройки можно регулировать точность поиска.
Кнопка “Поиск” - тестирование поиска
Да - нажмите эту кнопку, если элемент найден.
Нет - нажмите эту кнопку, если поиск выполнен неверно, обновите параметры поиска и попробуйте снова.

Цветовой режим

Цветовой режим, в котором будет происходить поиск картинки.

  • RGB - поиск по цветному изображению.

  • Gray - оттенки серого

  • Black - черно-белый режим. Для данного режима рекомендуется выставлять Точность совпадения не выше 90%

    • Порог - картинка переводится в формат GrayScale (в таком режиме каждой точке соответствует значение от 0 - черный до 255 - белый), пиксели с яркостью выше порога считаются белыми, ниже порога - чёрными.
      Допустимые значения от 0 до 255. Этот параметр доступен только в режиме Black.

Режим RGB

Режим Gray

Режим Black, порог 140

Поиск в режимах Gray и Black происходит быстрее и меньше нагружает CPU.

В версии 2.3.2 добавлена возможность выбрать в настройках записи цветовой режим по умолчанию

Тип клика

  1. Touch - быстрое нажатие на элемент

  2. Long touch - длительное нажатие на элемент

  3. None - не совершать никакого действия, а только проверить наличие элемента в окне эмулятора.
    Если фрагмент будет найден, то экшен выйдет по зелёной ветке, если ничего не найдётся - по красной.

Добавить в проект

После того как всё было настроено можно нажимать данную кнопку и в проект будет добавлен экшен.


Тестирование поиска

После того, как выделили необходимую область нажмите кнопку “Поиск”.

Если искомый фрагмент был найден то возле кнопки “Поиск” появится символ галочки свидетельствующий об успехе и элемент будет подсвечен в окне эмулятора

Если же поиск завершился неуспехом, то возле кнопки “Поиск” появится красный крестик

Скрытие части изображения

В версии 2.2.5 была добавлена возможность закрыть часть изображения, это позволит убедиться, что поиск не будет находить ничего лишнего. Для этого нужно кликнуть по кнопке с изображением бабочки, в нижней части Окна эмулятора, после чего кликнуть в той области, которую нужно скрыть и снова нажать “Поиск”. Если ничего не удалось найти, в нижней правой части экрана появится всплывающее окно с текстом “Изображение не найдено”.
Чтобы выйти из этого режима нужно снова кликнуть по кнопке с изображением бабочки.


Вкладка “Дополнительно”

Эта вкладка доступна после того, как экшен будет добавлен в проект.

  • Ждать элемент не более - время в секундах, в течение которого экшен будет ожидать появление элемента. В версии 2.3.2 добавлена возможность в настройках записи задать время поиска по умолчанию для создаваемых экшенов.

  • Область поиска - здесь можно вручную (и с помощью переменных) задать область в пределах которой будет произведён поиск.

  • Сохранить найденные координаты - данная секция позволяет сохранить в переменные координаты верхнего левого угла найденного элемента.


Пример использования

Представим, что нам нужно создать новую заметку в приложении “Заметки”.

  • Выделяем уникальную область на кнопке создания заметки:

  • С помощью кнопки “Поиск” тестируем, что находится то, что нужно. Нажимаем “Да”.

    • Так же можно закрыть часть изображения с помощью соответствующего инструмента, чтоб проверить будут ли ложные срабатывания.

  • Затем добавляем экшен в проект

Примечание касательно “Режима рендеринга”

Поиск по картинке может сломаться, если экшен был записан, например, в режиме OpenGL, а затем режим ренедеринга был сменён на DirectX.


Полезные ссылки