Как сгруппировать области изображения одного цвета и получить его координаты, игнорируя цвет фона, используя python

Входное изображение

Мне нужно сгруппировать регион зеленым цветом и получить его координаты, как это изображение на выходе. Как это сделать в Python?

Пожалуйста, смотрите прикрепленные изображения для лучшей наглядности

1 ответ

Вначале, split зеленый канал изображения, положить threshold на этом и есть двоичное изображение. Это двоичное изображение содержит объекты зеленой области. Начните dilating изображение с подходящим ядром, при котором смежные объекты будут прилипать друг к другу и превращаться в один большой объект. Тогда используйте findcontour чтобы взять размеры всех объектов, затем удерживать самый большой объект и удалить другие, это изображение будет вашей маской. Теперь вы можете reconstruct исходное изображение (только зеленый канал) с этой маской и подгоните прямоугольник к оставшимся объектам.

Вы можете легко найти код каждой части.

Другие вопросы по тегам