Pull to refresh

Comments 11

Прошу меня простить, но использование для этих целей Open CV подозрительно напоминает мне процесс забивания гвоздей микроскопом.
Что тогда стоит использовать, например, для преобразования в то же HSV-пространство?
Да какая разница, если это интересно и дает возможность освоить основы компьютерного зрения на довольно простом примере?
Спасибо. На следующей итерации обязательно попробую
Поиск по шаблонам 2х2-5х5 работает отлично для таких задач. Конечно, GetPixel() тут не прокатит, но немного unmanaged кода и можно добиться почти мгновенного поиска.
Подход интересный, спасибо. Смущает, что предварительно необходимо подготовить все варианты отображения объектов (и шары, и лягушка — крутятся вокруг своей оси), а если это дело автоматизировать, то возвращаемся к исходной задаче — предварительному выделению объектов.
Собираюсь попробовать этот метод в будущем, если будут проблемы с производительностью.
Для увеличения точности рекомендуется предварительно размывать (или как-нибудь ещё) изображение, чтобы избавится от мелких деталей, портящих результат.

Фон можно не вычитать, а применять как маску: если пиксель сильно отличается от фона — выводить пиксель, если примерно равен фону — выводить 0.
Идею с маской понял, спасибо. Обязательно попробую.
Дополнительные пути
— Можно анализировать уменьшенное изображение
— Можно разбить изображение на квадраты, вычислить средний цвет пикселей. Cравнивать полученные значения на близость к нужным цветам. Если попадает в нужный диапазон — искомая область. Заполнить массив в соответствии с этими значениями. После чего можно выделить значения, которые будут центрами шаров.
Оба эти способа я как раз хотел попробовать в ближайшее время )
Sign up to leave a comment.

Articles