Aide : Détection d'une image et récupération de sa position

Warnings Messages postés 10 Date d'inscription jeudi 8 janvier 2004 Statut Membre Dernière intervention 18 juin 2007 - 25 juil. 2005 à 14:31
Warnings Messages postés 10 Date d'inscription jeudi 8 janvier 2004 Statut Membre Dernière intervention 18 juin 2007 - 14 août 2005 à 23:54
Hello,



Je débute en VB donc je ne sais même pas s'il est possible de faire cela.



Je cherche en faite une source ou un bout de code qui permet de
détecter sur l'écran une image ou quelques pixels et qu'il puisse
retourner la position de cette image. Exemple : on lance le programme, il cherche l'image et nous dit que le pixel centrale de cette image se trouve sur 400/800.



PS : Le programme connaîtra l'image ou les images à chercher. Par exemple, je lui dis de chercher ces images : et il me retourne la position de chacune des images.



Merci d'avance pour votre aide ;)

2 réponses

cs_niky Messages postés 168 Date d'inscription jeudi 28 juin 2001 Statut Membre Dernière intervention 18 octobre 2008 7
9 août 2005 à 23:54
Si j'ai bien saisi ce que tu souhaites faire, je pense que cela doit être possible.

Pour le dire autrement, tu cherches à reproduire la fonctionnalité
"rechercher un mot dans un texte" sauf qu'ici le mot est une image et
le texte c'est l'image de de l'écran.



Si tel est le cas, tu peux peut-être commencer à faire une capture de
l'écran dans ton programme et récupérer l'image (la procédure change
suivant que tu programmes en VB6 ou VB.net).

Ensuite, tu peux comparer pixel par pixel un carré de l'image capturée
(l'écran) avec les pixels de l'image à rechercher. Un peu comme
comparer lettre par lettre les caractères d'un message.

Tout ceci n'est qu'une description d'algorithme, pour la pratique, il
faudrait que je sache dans quel langage tu programmes (VB6 ou .net).



Dans les deux cas, tu peux jeter un oeil à l'API BitBlt qui te
permettra d'obtenir une image bitmap de la surface de l'écran
(http://docvb.free.fr/apidetail.php?idapi=144).
0
Warnings Messages postés 10 Date d'inscription jeudi 8 janvier 2004 Statut Membre Dernière intervention 18 juin 2007
14 août 2005 à 23:54
Ok, je suis toujours au VB6 ;)

Donc, en gros, tu fais un print screen de l'écran et il va chercher si l'image se trouve bien sur le printscreen. On peut lui définir une zone de recherche pour que ce soit plus rapide, car j'imagine que cela doit prendre un moment pour rechercher l'image ?
0