IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Traitement d'images Discussion :

Detection bouchon - couleur VS gris


Sujet :

Traitement d'images

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 90
    Points : 26
    Points
    26
    Par défaut Detection bouchon - couleur VS gris
    Bonjour,

    j'ai besoin de votre aide concernant un problème de détection de couleur.
    Je dois détecter si un tube possède un bouchon ou non. Donc j'aimerais utiliser l'approche couleur.
    Mon idée était de calculer, dans l'espace RGB, le produit scalaire entre la valeur RGB de mon pixel et la droite achromatique. Et derrière de seuiller l'image des distances. Cependant ca ne marche pas trop, notamment pour un bouchon vert foncé (et c'est là que je comprend pas pourquoi).
    J'ai aussi essayé de regardé du côté du système HSV et de regarder à quoi ressemblait l'image de la saturation. Mais c'est pas top non plus...

    Mon souci est donc de détecter les zones colorées des zones blanches, noires, grises...
    Existerait il un algo plus adapté ou au moins un espace de couleur plus adapté pour différencier les couleurs du noir blanc gris.

    Je vous mets les images de mes tubes.

    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par picsou42 Voir le message
    Je dois détecter si un tube possède un bouchon ou non. Donc j'aimerais utiliser l'approche couleur.
    Avant tout, est-ce qu'on pourrait avoir une image d'un tube sans bouchon ?

    Peut-être qu'on peut combiner une autre approche que la seule détection de couleur...

    Cependant ca ne marche pas trop, notamment pour un bouchon vert foncé (et c'est là que je comprend pas pourquoi).
    Essaye de faire une égalisation d'histogramme sur chaque composante R,G,B. Essaye également de passer dans l'espace XYZ pour faire la détection de couleur en utilisant le diagramme chromatique CIE (on en a déjà parlé dans le forum)

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2006
    Messages : 134
    Points : 122
    Points
    122
    Par défaut
    quel type d'éclairage utilises-tu ?
    Si tu veux faire une analyse couleur, l'éclairage est très important.

    Sinon, pour la présence/absence bouchon, ce qui est fort utilisé c'est simplement des projections horizontale ou verticale pour mesurer la hauteur...
    bcp plus simple que la couleur et plus rapide (image en n&b suffit).

    Sinon, pour la couleur, tu auras plus facile à utiliser le HSL ou HSV que le RGB.
    Mais comme le signale Pseudocode, tu dois nous dire (montrer) ce à quoi ressemble un 'produit' sans bouchon ;-)

    Et que dois-tu faire exactement, uniquement détecter la présence du bouchon ou également les trier selon la couleur ou ...

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 90
    Points : 26
    Points
    26
    Par défaut
    Bonjour,

    voici de nouvelles images...

    Pour répondre, oui je dois simplement dire absence ou présence de bouchon.
    Et malheureusement, certains bouchons peuvent être blancs et dans le prolongement du tube. Ce qui implique qu'une approche contour n'est pas plus adapté à mon cas.

    Pour ce qui est des "simples" projections, j'ai un peu de mal à voir avec ces images comment je vais pouvoir mesure la hauteur...

    Merci

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 90
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par pseudocode Voir le message
    Essaye de faire une égalisation d'histogramme sur chaque composante R,G,B. Essaye également de passer dans l'espace XYZ pour faire la détection de couleur en utilisant le diagramme chromatique CIE (on en a déjà parlé dans le forum)
    J'ai essayé de regarder du côté de l'espace XYZ. Le problème est que je peux avoir toutes les couleurs possible spour le bouchon, et donc j'ai du mal à caractériser la distance à utiliser. Parce que par exemple si je veux calculer l'angle formé entre le vecteur (blanc,reference) et le vecteur (blanc,point à tester), je n'arrive pas à déterminer le vecteur (blanc, référence)!!!

    Autre petite question bête (car je pense que j'ai pas tout lu), mais on calcule 3 composantes et le diagramme ne repose que sur les composantes X et Y. A quoi sert le Z?

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2006
    Messages : 134
    Points : 122
    Points
    122
    Par défaut
    Bonjour,

    Citation Envoyé par picsou42 Voir le message
    Pour ce qui est des "simples" projections, j'ai un peu de mal à voir avec ces images comment je vais pouvoir mesure la hauteur...
    Merci
    En fait tout dépend de l'environnement. Si tes tubes passent toujours de la même manière devant la caméra (horizontalement ou verticalement) tu peut prendre sa hauteur(ou sa longueur) via une projection et SI tout tes tubes sans bouchon ont la même taille, tu pourra savoir s'il y a présence de bouchon ou pas ...

    Maintenant, un autre moyen est de jouer sur la transparence.
    Tu mets un éclairage derrière ton tube, tu prend une image en niveau de gris. S'il y a un bouchon, tu aure du noir, sinon, la transparence fera que tu aura du blanc ou un gris légé ;-)

  7. #7
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par picsou42 Voir le message
    voici de nouvelles images...

    Pour répondre, oui je dois simplement dire absence ou présence de bouchon.
    Et malheureusement, certains bouchons peuvent être blancs et dans le prolongement du tube. Ce qui implique qu'une approche contour n'est pas plus adapté à mon cas.
    Hum... ca va être dur d'avoir une méthode de détection efficace dans ce cas. Peut être en faisant une analyse de la variance, ou d'autre indicateurs de texture...

    Sinon, comme le dit ale2000, il faudrait peut-être changer la méthode de prise de vue des images.

  8. #8
    Membre régulier Avatar de DocteurV
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 85
    Points : 101
    Points
    101
    Par défaut
    Et pourquoi pas une approche plus morphologique :
    Sur la gauche, tu peux voir une démarcation très franche entre une zone de fond noir et le support blanc de tes tubes.
    • En présence d'un bouchon, cette démarcation est occultée.
    • En l'absence d'un bouchon, cette démarcation est nette.


    Technique proposée :
    • Délimitation de la ROI à l'emplacement de la démarcation.
    • Mesure d'un gradient.
    • Étude des directions du gradient.

    1. Soit tous les gradients sont (à un petit epsilon près) orientés dans le même sens => Pas de bouchon
    2. Soit la variance des orientations des gradients est plus grande qu'un seuil (à fixer) => Présence d'un bouchon

Discussions similaires

  1. Detection des couleurs et suppression de l'arrière plan
    Par Spider-mouki dans le forum OpenCV
    Réponses: 8
    Dernier message: 08/05/2014, 15h03
  2. detection de couleur pas glop
    Par ccgousset dans le forum wxWidgets
    Réponses: 3
    Dernier message: 17/06/2013, 15h45
  3. Detection meme couleur que mon fond de script (noir)
    Par Aemlie dans le forum IRC / mIRC
    Réponses: 0
    Dernier message: 07/05/2010, 10h13
  4. Rendre le milieu d'une image couleur en gris
    Par nouha_79 dans le forum Images
    Réponses: 2
    Dernier message: 16/11/2007, 19h20
  5. niveau de gris en niveau de couleur
    Par corey_jx dans le forum MFC
    Réponses: 2
    Dernier message: 11/06/2003, 22h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo