salut,
Pourriez-vous me fournir le code qui détermine le cercle dans une image? c'est indispensable pour terminer un programme qui me torture
merci bcp !!
-----
salut,
Pourriez-vous me fournir le code qui détermine le cercle dans une image? c'est indispensable pour terminer un programme qui me torture
merci bcp !!
bon, au fait on peut faire ça :
1- en convertit l'image noir et blanc
2- en ayant le centre (ses coordonnées bien sur)
3- un point du bord
4- le diamètre = une équation avec les coordonnée en entrée.
Pb: 1. Comment déterminer le centre?
2. c'est quoi cette équation?
De ma part je cherche encore, merci pour toutes vos contributions
il faudrait faire une corrélation: le problème alors c'est d'y intégrer une marge sur la forme du cercle de reférence, sur sa couleur en niveau de gris...
Précision, la corrélation permettrait de trouver précisément le ou les centres.
PS: évites de ressusciter des sujets vieux d'un an pour éviter les confusions.
Dernière modification par b@z66 ; 21/01/2007 à 14h27.
bon
pour l'équation ça sera : soient centre (x1,y1) & point du cercle (x2,y2)
racine carrée ((x1-x2)^2+(y1-y2)^2)
c ça?
Que qlq'un m'aide
ok b@zz, je crée un new post !
Fusion de deux fragments de discussion
Rien ne sert de penser, il faut réfléchir avant - Pierre Dac
Salut,
C'est un problème rencontré souvent en traitement d'image.
Veux-tu montrer l'image à traiter?
Ou as-tu déjà les coordonnées des points du cercle et tu dois faire une régression pour déterminer une équation du cercle? Comment sont les coordonées(précises ou non)?
Si tu as les coordonnées des points qui appartiennent parfaitement au cercle, tu n'as besoin que trois points assez éloignés l'un de l'autre pour déterminer l'équation du cercle. Si ce n'est pas le cas, il faut savoir déterminer le centre et le diamètre avec précision si non ton équation ne vaut rien.
A+
SALUT,Salut,
C'est un problème rencontré souvent en traitement d'image.
Veux-tu montrer l'image à traiter?
Ou as-tu déjà les coordonnées des points du cercle et tu dois faire une régression pour déterminer une équation du cercle? Comment sont les coordonées(précises ou non)?
Si tu as les coordonnées des points qui appartiennent parfaitement au cercle, tu n'as besoin que trois points assez éloignés l'un de l'autre pour déterminer l'équation du cercle. Si ce n'est pas le cas, il faut savoir déterminer le centre et le diamètre avec précision si non ton équation ne vaut rien.
A+
il s'agit d'identifier le montant des pièces de monnaie dans une image donnée. J'ai arrivé à convertir les pièces de monnaie en noir sur un fond blanc.
Ce qui est clair, il y aura deux phases, apprentissage : determination des rayons relatifs à chaque piéce (cercle) puis identifications des différents cercles dans l'image.
voici une image contenant une pièce de X euro.
[IMG]C:\Documents and Settings\Hana\Bureau\piece_une .JPG[/IMG]
puis une image contenant un ensemble de pièce y compris celle (X euro), [IMG]C:\Documents and Settings\Hana\Bureau\cercles_b lancs_trouvés.JPG[/IMG]
comment dois-je faire pour résoudre ça? j'ai commencé dans un code déjà mais c'est encore loin je dois savoir comment avoir les coordonnés du centre du cercle (une fonction en matlab) puis normalement je ferais le reste...
help please !!
Tu t'es trompé il faut aller en mode avancé et mettre tes images en pièces jointes. la balise IMG ne sert pas à ça
Rien ne sert de penser, il faut réfléchir avant - Pierre Dac
je suis désolée hum... (quelle honte )
Donc, voici l'image contenant un cercle (à la base c'est une pièce de monnaie)
puis c'est une image contenant plusieurs autres pièces à identifier (contenant notre pièce aussi) et que je dois déterminer la somme d'argent à la fin.
Es-tu, l'auteur de l'image originale (avant de la transformer en binaire)? Peux-tu nous la montrer?
Je suppose:
- Que l'on peut différencier les pièces par leur diamètre uniquement (avec ton image c'est le seul critère envisagable).
- Que les pixels sont carrés (Contrôle que: le diamètre d'un cercle, en pixels, mesuré verticalement est le même mesuré horizontalement), si non précaution.
- Que c'est toi qui as binarisé l'image (rendre l'image binaire: blanc sur noir), et que le seuil de binarisation
est bien choisi (si non le contour de la pièce risque d'être faux d'où son diamètre).
On peut faire aussi simple que compliqué. Cela dépend de ton niveau, de la précision demandée,
de la différence de diamètre des pièces à reconnaître (en µ et en pixels, peux-tu nous donner ces mesures?), du temps que tu disposes et du but final du sujet.
A suivre
Bonjour,
aufait, l'auteur de l'image originale (avant de la transformer en binaire) est monenseignant mais je peux vous l'attacher en joint pas de problème.
Ta première supposition est vraie : on peut différencier les pièces par leur diamètre uniquement (bien qu'il y a deux pièces quasisemblable en taille!!).
- les pixels sont carrés : normalement c'est bon.
- oui c'est moi qui as binarisé l'image. j'avais fais selon deux méthodes: l'une avec seuil et suite à la vérification de l'histo, l'autre automatiquement via "level et GRAYTHRESH"
Sinon j'aimerai faire quelque chose de simple (que je pourrai maitriser le code en tant que débutante) puis pour le temps pour faire ça... J'ai dèjà dépassé les delais et le but final c'est donner le montant (somme des pièces de monnais) de l'image.
De ma part j'ai fait un ptit prog, mais c'est encore loin...
voili voilou ^^
Regarde dans la librairie de Matlab (Matlab Image Processing ou Video and Image Processing Blockset)
normalement, il existe la fonction Blob Analisys (labellisation:détection et analyse d'objets). Je pense qu'il faut préciser la couleur de l'objet: blanc sur fond noir ou noir sur fond blanc, si non inverse la couleur de ton image s'il le faut. En labellisant l'image binarisée(obligatoire) la fonction doit te retourner au minimum:
- le nombre d'objets détectés
et pour chaque objet:
- les coordonnées du rectangle encadrant.
- leur surface.
- leur périmètre.
- leur diamètre.
- leur excentricité (utile dans le cas ou tu as des objets parasites, ce n'est pas ton cas).
Utilise plutôt la surface pour reconnaître tes pièces, elle sera plus fiable que le diamètre. Sois conscient que la surface de la pièce varie en fonction du niveau d'éclairage et du seuil de binarisation (fais varier le seuil de quelques points et tu verras), donc tu dois tenir compte des critères suivants:
Si Surface apprise - marge <= Surface pièce à reconnaître <= Surface apprise + marge =>
la pièce est identifiée.
Si la marge est plus grande que la différence de surface réelle des pièces tu ne pourras pas les différencier.
Tu ne nous as toujours pas dit pour: quel type d'études, quelle année d'études? C'est un petit projet, un TP...?
Je pense que tu as tous les éléments pour arriver au bout.
Bon courage.
J'ai changé la couleur : le vert est réservé aux modérateurs (voir la charte du forum)
JPL, modérateur
Dernière modification par JPL ; 23/01/2007 à 13h24.
Ok, mille excuses.J'ai changé la couleur : le vert est réservé aux modérateurs (voir la charte du forum)
JPL, modérateur
et moi je vais écrire en rose
ok
merci beacoup pour ton aide YtY !! J'e jette un coup d'oeil sur cette biblio, car l'idée (l'algo) est déjà claire.
Fallait donc laisser tomber le diamètre et considèrer la surface. Je dois écrire le programme qui fera la détectionet l'identification des pièces et bien évidemment la somme !
Au fait, c'est un micro-projet de TP traitement avancé des images et qui est une matière principale pour moi (je fais de l'info, Web et multimédias )
à suivre ...
MERCI ENCORE
re-salut tt le monde,
Il s'avère que.. aprés tout ce calcul de surface et la comparaison et tt... il y a deux pièces (la blanche et celle en acier) qui ont quasiment le même diamètre comment devrais-je faire pour résoudre ça ???
help me please
ps: y'a qd même une solution --> puis --> !!
Salut,
Ton prof est plus vicieux qu'il n'a l'air, il demande bien plus.
Puisque tu ne peux pas différencier les pièces par leur forme géométrique, tu dois ajouter des autres critères susceptibles de t'aider.
Par exemple:
1)-L'analyse de l'histogramme de niveau de gris (de l'image monochrome, non binarisée) de chaque pièce
attention: il ne faut prendre que les pixels de la pièce (les pixels qui sont à l'intérieur de son contour-tu dois pouvoir trouver les coordonnées du contour parmi les résultats de la labellisation). Je pense qu'il y a peu d'espoir, mais essaye quand même, tu te feras la main pour 2) ou 3).
2)-L'analyse de la composition des couleurs RGB (rouge, vert, bleu): l'histogramme de chaque composant séparément.
3)-L'analyse de la composition des couleurs sous forme HSV (hue-teinte, saturation-saturation, value-intensité ou luminosité): l'histogramme de chaque composant séparément, elle donne le résultat plus pertinent qu'en RGB, bien sûr, il faut d'abord faire une conversion RGB->HSV).
Les 2 dernières analyses doivent être faites à l'intérieur du contour de chaque pièce comme 1). Tu peux attaquer 3) directement si tu te sens en forme.
Si 2) et sur tout 3) ne permettent pas de différencier les pièces, tu peux conclure que les images fournies par ton prof ne le permettent pas. S'il veut absolument le résultat, alors il faut reprendre la chaîne d'acquisition d'image: changer et améliorer l'éclairage, améliorer (de beaucoup) la mise au point, changer la méthode d'analyse, c'est une autre paire de manche.
Bon courage.
Salut,
Pas de nouvelles, comment doit-on interpréter ce silence? réussite? Echec?
Nous sommes curieux quand même.
A+
bjr
svp donné moi le code source de la 1ere image