Maison  >  Article  >  développement back-end  >  Comment définir une valeur seuil pour détecter les objets verts dans les images avec Python OpenCV ?

Comment définir une valeur seuil pour détecter les objets verts dans les images avec Python OpenCV ?

DDD
DDDoriginal
2024-11-03 02:29:02882parcourir

How to Define a Threshold Value for Detecting Green Objects in Images with Python OpenCV?

Comment puis-je définir une valeur seuil pour détecter uniquement les objets de couleur verte dans une image avec Python OpenCV ?

En vision par ordinateur, identifier et isoler des objets en fonction d'une couleur spécifique Les caractéristiques jouent un rôle crucial dans diverses applications. Lorsqu'on travaille avec des environnements naturels, il devient nécessaire de définir des valeurs seuils permettant de détecter avec précision des objets d'une couleur particulière, comme le vert. La bibliothèque OpenCV de Python fournit des outils puissants pour le traitement d'images et la détection des couleurs.

Définition d'un seuil pour la détection verte

Il existe deux méthodes principales pour définir une valeur seuil afin de détecter les objets verts dans une image à l'aide de Python. OpenCV :

Carte de couleurs HSV

La carte de couleurs HSV (Teinte, Saturation, Valeur) offre un moyen plus précis et plus convivial de définir des gammes de couleurs. Pour la détection verte, la plage suivante peut être utilisée :

(40, 40,40) ~ (70, 255,255) in HSV

Plage HSV

Une autre approche consiste à utiliser directement la plage HSV pour créer un masque pour les objets verts. Voici un exemple :

<code class="python">import cv2

# Convert to HSV color space
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

# Mask of green (36,25,25) ~ (86, 255,255)
mask = cv2.inRange(hsv, (36, 25, 25), (86, 255,255))</code>

Application de la valeur seuil

Une fois le masque créé, il peut être appliqué à l'image d'origine pour extraire uniquement les objets verts tout en rendant tous les autres pixels noirs :

<code class="python">imask = mask > 0
green = np.zeros_like(img, np.uint8)
green[imask] = img[imask]</code>

En ajustant les valeurs de seuil dans les plages spécifiées, il est possible d'affiner la précision de détection des objets verts dans diverses conditions d'éclairage et environnements. La variable verte contient désormais une image avec des objets verts isolés prêts pour un traitement ultérieur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn