Page 1 sur 1
Rechercher un element dans une image
Publié : jeu. 31/juil./2008 10:21
par lepiaf31
Bonjour tout le monde !
Je voudrais trouver la position d'un element précis d'une image mais je ne sais pas du tout comment m'y prendre, je viens donc demander votre aide pour trouver une piste. Par exemple je voudrais trouver ce rond :
dans cette image:
Si quelqu'un sait comment s'y prendre merci d'eclairer ma lanterne.
bye
Publié : jeu. 31/juil./2008 10:59
par Backup
.....
Publié : jeu. 31/juil./2008 11:15
par lepiaf31
Je dispose de l'image de référence à rechercher mais je ne sais pas du tout comment m'y prendre.
Publié : jeu. 31/juil./2008 11:23
par Backup
......
Publié : jeu. 31/juil./2008 15:32
par lepiaf31
Bon alors à peine je commence et déjà j'ai un probleme ^^. J'ai décidé de créer un tableau de tous les pixels de l'image contenant les coordonnées du pixel et la couleur qui lui est attribuée(avec la fonction Point() ). Je fais donc un test avec un carré orange de 50*50 px. Cela marche tres bien sauf pour les points d'abscisse x=50 ou d'ordonnée y=50 c'est-à-dire le bord droit et le bas de l'image (la fonction point() renvoi -1). Quelqu'un à une explication ?
Je laisse le code utilisé:
Code : Tout sélectionner
Structure img
x.l
y.l
color.l
EndStructure
Procedure TransformImage(Image)
If StartDrawing(ImageOutput(Image))
Width = ImageWidth(Image)
Height = ImageHeight(Image)
Size = Width * Height
Dim Array.img(Size)
i=0
For y=1 To Height
For x=1 To Width
Color = Point(x, y)
Array(i)\x = x
Array(i)\y = y
Array(i)\color = Color
i+1
Next
Next
StopDrawing()
For i=0 To Size-1
Debug Str(Array(i)\x)+","+Str(Array(i)\y)+":"+Str(Array(i)\color)
Next
EndIf
EndProcedure
If LoadImage(1, "test.bmp")
TransformImage(1)
EndIf
Publié : jeu. 31/juil./2008 16:16
par Backup
...
Publié : jeu. 31/juil./2008 17:10
par lepiaf31
ha ben oui c'est tou con ^^ je ne savais pas qu'une image commencais aux coordonnées 0,0.
Maintenant j'aimerais savoir comment transmettre mon tableau structuré au reste du programme (hors de la procédure quoi)
Publié : jeu. 31/juil./2008 19:14
par Backup
....