Какой подход выбрать для поиска и распознавания элементов на скриншоте?
Задача состоит в том, чтобы быстро на картинке найти элементы. Картинка - это скриншот, но на нем может быть что угодно - формы, другие картинки, иконки, фотографии. Нужно найти элементы и, если есть текст, распознать. Моменты:
- точная классификация желательная. То есть хотелось бы понять, хотя бы с какой-то вероятностью, это поле или кнопка. Определить точно границы элемента.
- если элемент содержит текст, надо определить границы элемента и сам текст
- если элемент - иконка или фотография, или какой-то графический элемент, то желательно распознать его или найти похожий (по образцу, образец существует).
Первая моя мысль была - использовать object detection, натренинировать сеть на распознавание элементов интерфейса. Но я не знаю, подходит ли это для решения данных задач, и не будет ли это, что называется, overkill (чересчур)?
Какой бы алгоритм/подход вы применили здесь?
Да, я тоже теперь так думаю. Мне вначале показалось, что элементы интерфейса - слишком простые объекты, но это скорее не так. Они простые в имплементации, но их очень много и они разные.
Кстати, мне наконец удалось сделать object detection на основе TensorFlow, и, хотя результаты пока не очень (видит далеко не все элементы), все равно результат впечатляет :) А результаты не очень, я знаю, почему - были выбраны неправильные скриншоты (в плохом разрешении); их было мало; размеры картинок не должны превышать 1024х600.