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 :

Détection de contours sur image de cellules


Sujet :

Traitement d'images

  1. #1
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut Détection de contours sur image de cellules
    bonjour
    j'ai besoin d'un algorithme ou une idée pour pouvoir faire la détection des contours d'une image qui contient des cellules...
    j'ai trouvé plusieurs filtres a savoir canny,sobel...
    mais le problème c'est la précision.
    je veut après avoir détecter les contours avec l'algorithme de canny par exemple pouvoir extraire les objets dans l'image(les cellules) les encadrer et faire des calculs sur les distances et les surfaces et les périmètres...
    mon problème que j'ai pu en testant l'algorithme de cany sur des images simple contenant des formes simples(cercles,rectangles...) détecter les contours et encadrer les formes et faire le scalcul après extraction des blobs..
    le problème est quand les formes ne sont pas simple.j'ai utulisé pour dessiner les contours la methode de quick hull pour remplissage de formes convex mais les résultats ne sont pas pertinants a cause des concavité en plus dans la plus part des cas mes firmes sont arrondi et cette methode détecte des polygones..
    est ce que quelcun a eu le meme problème??
    je veux aussi un algorithme de bouchage des trous et pas closing car j'ai essayé avec closing et le résultat n'est pas bon.en fait j'ai testé avec IPlab :http://www.aforgenet.com/projects/iplab/ mais les resultast ne sont pas bon.
    merci de m'aider

    j'ai trouvé que la librairie est mise à jour
    ils ont ajouté une methode pour détecter les corners...
    c'est très interrassant.je vai voir si ça donnerait un résultat après application de canny
    Images attachées Images attachées   

  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 084
    Points
    16 084
    Par défaut
    detection de contours sur image de cellules
    Ca ne serait pas plutot de la segmentation que tu cherches à faire ?

  3. #3
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    mon but c'est de détecter els contours des objets je veux dire que mon but c'est de faire des calculs sur les cellules existantes dans l'image en présentant chaque cellule par un objet et sachant ces contours pour calculer sa surface et son périmètre et son diamètre et sa position.
    si c'est la segmentation alors ok.

  4. #4
    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 084
    Points
    16 084
    Par défaut
    Citation Envoyé par salihovic Voir le message
    en présentant chaque cellule par un objet
    Oui, je pense que les techniques de segmentation sont adaptés a ce que tu veux faire. Pour commencer regarde du coté de la "ligne de partage des eaux", et si ca ne suffit pas vers les "contours actifs" (snake, levelset, ...)

  5. #5
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    j'ai testé mes images avec la LPE mais les resultats ne sont pas bon
    en plus j'ai trouvé des librairies en c++ qui font ça et j'ai remarqué qu'il executes un filtre de canny avant de poursuivre le traitement...
    pour les autres je vai regarder plus.
    j'ai trouvé dans la librairi Aforge la détection des corners peut etre ça servirait si je prépare bien l'image avec les différents filtre puis je détécte les corners puis il faut que je élimine les points qui ne sont pas bien placés selon un critère je pense avec cette methode je peut faire quelque chose... au moin détecter les régions des corners et découper l'image en region selon la distribution de ces corners

  6. #6
    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 084
    Points
    16 084
    Par défaut
    Citation Envoyé par salihovic Voir le message
    j'ai testé mes images avec la LPE mais les resultats ne sont pas bon
    Pourtant tes images sont assez propre. Tu as essayé de positionner des marqueurs avant de faire la LPE ?

  7. #7
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    non
    c'est quoi les marqueurs???
    j'ai pas vue ça
    peut etre si on ajoute ces marqueurs on obtient un bon résultat
    mais mon but initial était de détecter automatiquement les objet sans intervention humaine et après la détection je permis a l'utilisateur de changer et réctifier les zones présentants les contours des cellules...
    je vai voir les marqueurs en tt cas merci bien pour ton aide

  8. #8
    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 084
    Points
    16 084
    Par défaut
    Citation Envoyé par salihovic Voir le message
    non
    c'est quoi les marqueurs???
    j'ai pas vue ça
    Ce sont les points a partir desquels on fait le remplissage des bassins. Ca permet d'eviter la sur-segmentation typique du LPE.

    mais mon but initial était de détecter automatiquement les objet sans intervention humaine et après la détection je permis a l'utilisateur de changer et réctifier les zones présentants les contours des cellules...
    On peut construire un algo qui positionne (plus ou moins bien) automatiquement les marqueurs, en utilisant des informations connues sur les zone. Par exemple, dans ton cas, extraire les contours (avec canny), detecter les ellipses et prendre leur centre comme marqueur.

  9. #9
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    le problème que je peut pas détecter les ellpss!!!
    si je peut faire ça alors j'ai teriné!!!
    j'ai besoin d'une manière qui rend canny plus robuste car j'ai remarqué en le testant que souvent il y a des formes qu'il détecte sans etre fermé et aussi il détecte des formes encapsulé dans des autres...
    si j'arrive bien a connaitre les ellipses externes alors ça serait excellent.
    peut etre je te montrerais un exemple de résultat avec le petit utilitaire IPlab qui fait du traitement d'image.une nouvelle foncionnalité ajouté c'est de filtrer les bolbs...j'ai remarqué qu'on peut raffiner la détection par les paramètres mais toujour le problème des ellipses incomplets réside.
    en tt cas avec chaque technique j'ai une difficulté

  10. #10
    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 084
    Points
    16 084
    Par défaut
    Il ne s'agit pas de detecter "exactement" les ellipses qui forment le contour de chaque cellule, car ca serait trop compliqué ou alors peu robuste.

    Il s'agit juste d'avoir une estimation de la position des ellipses afin d'utiliser le centre comme marqueur, et ensuite appliquer la LPE qui devrait segmenter exactement () le contour des cellules.

  11. #11
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    justement coment estimer les centres!!!
    je connais pas une methode.
    as tu une idée???

  12. #12
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    exemple d'image filtré avec canny
    surtout ladeuxièmme je trouve avecunproblème
    Images attachées Images attachées   

  13. #13
    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 084
    Points
    16 084
    Par défaut
    Citation Envoyé par salihovic Voir le message
    justement coment estimer les centres!!!
    je connais pas une methode.
    as tu une idée???
    La méthode la plus simple c'est la Transformée de Hough, mais elle n'est pas très robuste (pas mal de faux poisitifs). Cependant cela peut suffire pour placer des marqueurs, a condition de faire ensuite une reduction du nombre de régios.

    Comme tu utilises Canny, on peut utiliser le fait qu'on obtient des "portions de courbes" afin d'avoir de meilleurs résultats:

    1ere approche (rapide), on considère que la portion de courbe appartient a une seule ellipse => on fait du fitting pour trouver l'équation de la meilleure ellipse (méthodes des moindres carrés, ...). Ensuite on vérifie que le fitting est acceptable (calcul d'erreur + seuillage).

    2nde approche (précise), on considère que la portion de courbe peut appartenir a plusieurs ellipses => il faut segmenter cette courbe pour se ramener au cas #1 (méthode de "Edge Grouping", ...)

  14. #14
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Points : 17 923
    Points
    17 923
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par salihovic Voir le message
    justement coment estimer les centres!!!
    je connais pas une methode.
    as tu une idée???

    ici-même :

    Algorithmes/Contribuez/[Fortran]ellipse fitting algorithm

    Un peu de travail de traduction devrait faire le boulot

  15. #15
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    ici-même :

    Algorithmes/Contribuez/[Fortran]ellipse fitting algorithm

    Un peu de travail de traduction devrait faire le boulot
    please est ce que tu peut tester sur une de mes images si tu as encore le programme en fortran???
    car je peut pas traduire cet algorithme en une c# pour le moment mais si je trouve que le résultat est pertinent je peut investir du temps pour le faire.et merci bien pour vos coseil.il me paret qu'il y a un grand nombre d'algorithme mais chacun a des limites.

Discussions similaires

  1. Détection de contour d'image Java
    Par hafsia dans le forum 2D
    Réponses: 4
    Dernier message: 15/12/2011, 12h06
  2. OpenGl et contour sur image.N_PNG
    Par enzyme dans le forum OpenGL
    Réponses: 5
    Dernier message: 25/10/2009, 10h56
  3. Contour sur image dicom
    Par hobzi dans le forum Images
    Réponses: 1
    Dernier message: 13/11/2007, 19h50
  4. Détection de contours sur une vidéo
    Par willem77 dans le forum OpenCV
    Réponses: 0
    Dernier message: 11/09/2007, 13h45
  5. Traitement d'image C++ : détection de droites sur une photo
    Par Vincent157 dans le forum Traitement d'images
    Réponses: 7
    Dernier message: 05/07/2007, 15h56

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