Я хотел бы сделать что-то, что способно распознавать различные объекты на экране. Допустим, я сделал снимок экрана в окне с текстовыми полями, надписями и кнопками. Я хотел бы передать изображение, и он должен уметь отличать один от другого. Другими словами, он должен помещать имя «текстовое поле» поверх позиции, где расположены текстовые поля, «кнопка» поверх кнопок и «метка» поверх надписей.Как распознавать/идентифицировать различные типы объектов (текстовые поля, метки, кнопки и т. Д.) На экране/со скриншотов?
Вот пример изображения из Интернета, чтобы визуализировать «окно регистрации»: http://kb.parallels.com/Attachments/12828/Images/registration1.jpg
Я хотел бы сделать это в Java, но я не уверен, если это вообще возможно. У кого-нибудь есть идеи, с которых я должен начать искать? Обнаружение кромок? Обнаружение функции? OCR/ICR?
Это уже существует? Кто-нибудь когда-либо сталкивался с чем-то подобным раньше?
Может ли кто-нибудь указать мне в правильном направлении? Я был бы очень признателен.
Спасибо! :)
То, что вы ищете, не просто. Предполагаете ли вы, что все объекты всегда можно разделить друг с другом? Могут быть случаи, когда пользовательский блок редактирования может выглядеть как текстовое поле и т. Д. :::: В любом случае, если вы решите следовать этому пути, выполните поиск слова «сегментация», связанного с обработкой изображений. Вы должны найти много информации, но не уверены, что найдете алгоритм с полки. – ilomambo
Спасибо за эту информацию, ilomambo, я знаю, что это будет нелегко сделать, но я готов сделать свое исследование и придумать что-то. Пока я нацелен на стандартные элементы управления/объекты Windows. Я собираюсь сделать что-то, что может «учиться» (используя нейронные сети) и улучшаться с течением времени. Я просто не знаю, с чего начать. Я обязательно посмотрю на сегментацию, спасибо! –
Кроме того, подход грубой силы - это корреляция между базовым образцом и целевым изображением. :::: Целевой объект может быть: сдвиг, масштабирование, поворот или любая их комбинация. :::: Таким образом, если вы знаете, что сложность корреляции изображений O (n^4) JUST FOR ONE PASS, вы завершите себя, сколько вычислений потребуется для масштабирования, сдвига, поворота ко всем возможным сценариям. – ilomambo