Salut a tous,
j'ai eu une petite idée saugrenue qui serait de faire un type de tapis roulant trieur de piece de légo...
Le but n'étant évidement pas de trier mes legos a long terme mais principalement par but lucratif...
Pour ce qui est du hardware je n'ai pas de PB, pour ce qui est du software, que je compte faire sur VB6, un point me pose pb, en effet je ne sait absolument pas comment m'y prendre pour faire une sorte d'analyse d'image en temps réel....
le principe: un tapis roulant contenant des pièces carrées de légo de différentes couleurs est filmé de dessus par une webcam ... Il faudrait alors reconnaitre la présence d'une pièce, et analyser sa couleur(ou éventuellement sa forme)...
Je ne cherche pas fondamentalement un bout de code mais plutôt la méthode pour parvenir a le faire....
Comment communiquer avec la camera... comment distinguer un objet/forme (a la manière de la réalité augmenté et des carte 2D) ... (et comment analyser les couleurs)....
Moi, je ne m'y connait vraiment pas au niveau de la machine que tu implantera. Mais, une fois que tu auras fait un logiciel qui arrivera à filmer les légos, c'est plus à ce niveau que je pourrais t'aider.
Pour reconnaître des couleurs, la façon que je le ferais, serait d'enregistrer la couleur pixel par pixel, dans une matrice et de faire une moyenne, à la fin (car il peut y avoir de l'ombre, une tache, etc). Ensuite, tu iras par comparaison avec une liste de couleurs pré-établis de la collection Légo. La couleur moyenne qui ressemble le plus d'une couleur dans la liste |((couleur théorique-couleur moyenne)/couleur moyenne)|x100 est donc fort probablement la couleur pré-établie.
Pour la présence d'une pièce, j'opterais pour un petit détecteur de mouvement. Tu n'aurais plus qu'à récupérer sa "réponse" binaire.. Sinon, si tu veux faire la programmation avec l'image obtenue de la webcam, Moi j'utiliserais le même principe que dans les trucages vidéos (une couleur de fond rare). Si à coté du tapis, tu installe un mini mur beige (dans mes souvenirs, il n'y a pas cette couleur dans les légos...), dans le fond, tu attends qu'il y ait une proportion respectable d'une autre couleur dans la matrice de couleurs de pixel. Dans ce cas, tu retourne la valeur binaire 1, par exemple.
Voila, la théorie est faite.. En gros, il te faut juste un système qui prend rapidement des images du tapis de légo (ce que je ne sais pas faire). Ensuite, tu pourras appliquer la théorie indiquée.
Dans mes souvenirs, j'ai déjà fait il y a longtemps, un analyseur de couleur, justement en VB6. Il y a une fonction qui s'appelait getpixel, si ma mémoire est bonne. Avec ca, tu pourras boucler jusqu'à la fin de ton image.
Bonne chance!
19/03/2010 - 18h23
Yanniv
Date d'inscription
décembre 2009
Localisation
Near Paris
Messages
105
Re : Reconnaissance Forme/couleur par camera...
Salut,
Merci de ta réponse, je vais essayer de voir ce que je trouve du coté de l'obtention pixel par pixel.
Comme tu le dis, je pensais faire un tapis d'une couleur tres uniforme (soit toute blanche, soit d'une autre couleur non utilisée par les légos.
J'ai aussi penché du coté détecteur de mouvement et apres l'analyse d'un exemple, j'ai cru voir qu'il analysais image par image en comparant les pixel differents, ce qui peut etre judicieux car la vitesse du tapis etant fixe, la difference entre 2 images successive doit surement etre facilement analysable... en tout cas plus facilement que pixel par pixel....
Est-ce que les connaisseurs peuvent me dire si c'est une bonne solution?
Merci encore
21/03/2010 - 15h46
Yanniv
Date d'inscription
décembre 2009
Localisation
Near Paris
Messages
105
Re : Reconnaissance Forme/couleur par camera...
re,
j'ai pas mal regardé coté pixel par pixel ou image par image et j'ai peut etre trouvé une solution....
En traitant chaque image successive, je peux déterminer les pixels différents d'une image a une autre.... j'ai eu une idée pour pouvoir distinguer différente formes et couleurs donc pour ce qui est de la reconnaissance forme couleurs c'est bon .... pour ce qui est du hardware(tapis roulant, système de tri, ect) c'est bon aussi, la liaison software/hardware se fera surement par // (solution la plus simple) ou éventellement via port serie(grace a un USBtoCOM) + PICAXE permettant de décoder facilement le message...
La seule chose me posant encore Pb est : Comment Faire pour traiter le signal de la webcam "Image par image" a une cadence d'environ 6fps??? sans manger trop de ressource??(c'est a dire obtenir 1image par seconde (par exemple) au lieu d'avoir une vidéo(plus difficile a traiter)
Merci
PS: Pour les personnes voulant des infos sur le soft de reconnaissance que je vais dévelloper, envoyez moi un mp (il faut avoir quelque base sur la programmation car je ne l'ai pas encore terminé et je ne peux donc pas vous donner un programme tout fait, mais juste la technique utilisée, l'exe viendra lorsque j'aurai fini cette partie, vous pouvez toujours me mp pour plus informations)...
21/03/2010 - 17h02
Ouk A Passi
Date d'inscription
novembre 2006
Messages
2 730
Re : Reconnaissance Forme/couleur par camera...
Bonjour,
Comment Faire pour traiter le signal de la webcam "Image par image" a une cadence d'environ 6fps???
Tu trouveras sans doute des pistes en cherchant ce qui ce fait en soft pour la NXT Cam (dédiée Lego), ou encore CMUcam, et Pob-Eye.
Salut,
je suis en train de lire tout les docs que tu m'a envoyé, je n'ai pas encore fini donc je ne sais pas si un doc correspond a ce que je cherche mais quand je parle de camera je parle de Webcam en fait(je l'avais spécifié au début du sujet si je me rapelle bien) Ce n'est donc pas la meme demarche que d'obtenir une image en passant par de l'Ic² et tout le tralala...
En fait ma question se portait plus au niveau de la programmation (VB ou par API) pour obtenir une image a une certaine frequence d'une webcam
SI tu veut faire ce genre de chose , oriente toi niveau programmation et traitement d'image.
Une lib tres connue et très adaptée a ce que tu fait est "open cv" , cependant , il faut être motivé et je ne sais pas si on peut l'utiliser dans tes langages de prog (C pour moi).
Bonne chance pour la suite , sois confiant et motivé !
Edit : avec opencv , tu peut traiter des flux video ( fichier ou webcam , enfin tout est fichier sous nux , bref ) pour les simplifier en faisant certaines opérations dessus : Video du début -> noir et blanc -> etc , etc -> Quelque chose de géométrique facile a reconnaitre.
Un petit exercice pour débuter est la reconnaissance d'une balle de tennis , mais les lego ce n'est qu'un peu plus dur.
Tu peut aussi regarder le projet de "Prav Mistry" , Sithsense , qui est open source et tees abouti sur la reconnaissance de chose.
Dernière modification par lemuria ; 22/03/2010 à 20h12.
Trantor , quelle belle ville..
25/03/2010 - 19h45
Yanniv
Date d'inscription
décembre 2009
Localisation
Near Paris
Messages
105
Re : Reconnaissance Forme/couleur par camera...
Salut,
je suis en train de faire la partie prog, je n'ai toujours pas de solution pour extraire de la webcam des images....mais je fait le reste....
Merci lemuria pour tes conseils je regarde de plus pres opencv
15/11/2011 - 13h20
automatique_ama
Date d'inscription
novembre 2011
Messages
2
Re : Reconnaissance Forme/couleur par camera...
salut,
j'ai un mémoire comme la votre monsieur Yanniv, est-ce-que tu peut m'aider SVP
je besoin seulement la rédaction de ton projet
merci d'avance
15/11/2011 - 13h23
yoda1234
Date d'inscription
août 2004
Localisation
dagobah
Messages
12 363
Re : Reconnaissance Forme/couleur par camera...
Ce fil date de plus d'un an et yanniv ne s'est plus connecté depuis juillet2011.
Là où l'ignorance est un bienfait, c'est de la folie d'être sage (Thomas Gray).
Certes, mais je traine encore de temps a autre sur futura
Je n'ai rien rédigé, c'étais un projet(defi) personnel. Tu as besoin d'aide pour quelle partie de ton projet ?
15/11/2011 - 18h29
mp3dux
Date d'inscription
mars 2009
Localisation
haut rhin
Messages
481
Re : Reconnaissance Forme/couleur par camera...
bonjour,
apparemment tu n'avais pas trouvé de solution...
as tu pensé à KINECT ?
15/11/2011 - 19h24
automatique_ama
Date d'inscription
novembre 2011
Messages
2
Re : Reconnaissance Forme/couleur par camera...
salut;
tout façons merci yanniv, j'ai un pb sur les ressource pour rédiger ma mémoire
16/11/2011 - 12h01
Yanniv
Date d'inscription
décembre 2009
Localisation
Near Paris
Messages
105
Re : Reconnaissance Forme/couleur par camera...
@mp3dux: non je n'avais pas pensé a kinect, mais j'avais bien trouvé une solution + simple finalement, grace a un ocx, je récupérais les images successive de la camera, et je les traitais ensuite. le tout en Software (vb6)
J'utilisais des matrices de couleurs, (pour inclure une sorte de "tolérance") et pour ce qui est des formes je calculais une moyenne de surface prise par la piece de lego.
@ama: Dsl je ne comprends pas bien quel est ton problème sur les "ressources" ?