Как выделить один цвет на изображении
-
13-09-2019 - |
Вопрос
Я использую привязки Python OpenCV и на данный момент пытаюсь изолировать цветовой диапазон.Это означает, что я хочу отфильтровать все, что не красноватое.
Я попытался использовать только канал красного цвета, но он включает и белые пространства на изображении.
Каков хороший способ сделать это?
Решение
Используйте другое цветовое пространство: http://en.wikipedia.org/wiki/HSL_color_space
Другие советы
Используйте цветовое пространство HSV.Выберите пиксели, которые имеют значение H в диапазоне, который, по вашему мнению, содержит «красный», и значение S, достаточно большое, чтобы вы не считали его нейтральным, темно-бордовым, коричневым или розовым.Вам также может потребоваться исключить пиксели с низким значением V.Размер H представляет собой круг, а красный цвет находится прямо там, где круг разделен, поэтому ваш диапазон H будет состоять из двух частей: одна около 255, другая около 0.
Как насчет использования такой формулы, как r' = r-(g+b)?