Comment isoler une seule couleur dans une image
-
13-09-2019 - |
Question
J'utilise les liaisons OpenCV python et au moment où j'essayer d'isoler un colorrange. Cela signifie que je veux filtrer tout ce qui est pas rougeâtre.
J'ai essayé de ne prendre que le canal de couleur rouge, mais cela inclut les espaces blancs dans l'image aussi.
Qu'est-ce qu'une bonne façon de le faire?
La solution
Utilisez un espace de couleur différente: http://en.wikipedia.org/wiki/HSL_color_space
Autres conseils
Utilisez le HSV colorspace. Sélectionnez les pixels qui ont une valeur H dans la plage que vous considérez contenir « rouge » et une valeur de S assez grand que vous ne considérez pas qu'il soit neutre, rouge foncé, brun ou rose. Vous pourriez aussi avoir besoin de jeter pixels à faible V de. La dimension H est un cercle, et le rouge est là où le cercle est divisé, de sorte que votre gamme H sera en deux parties, l'une près de 255, l'autre près de 0.
Souhaitez-vous en utilisant une formule comme r »= r (g + b)?