Bonsoir
Je cherche a utiliser la fonction trouver plusieurs image avec le code suivant recupere sur le wiki
En fait cela fonctionne en partie si je fait planter le script avec la derniere ligne ou je vois dans le debugger les coordonnees. Si j'enleve la derniere ligne je ne vois rien sur la console.
Est ce que la console est videe apres la fin de l'execution du callback ?
//Searches for objects on the screen
//Searches for an object on the screen
var screenShot = new Image();
screenShot.loadFromFile("ecran.png");
//
var imageToFind = new Image();
imageToFind.loadFromFile("motif.png");
screenShot.findSubImagesAsync(imageToFind, function(searchResult)
{
if(searchResult)
{ Console.print("Matching images found ");
for(var i = 0; i < searchResult.length; ++i)
{ Console.print("position: " + searchResult.position.x + ", confidence: " + searchResult.confidence + " ");
}
}
else
Console.print("No matching images found.");
},98);
Console.print("position: " + searchResult[0].position.x + ", confidence: " + searchResult[0].confidence + " ");
Salutations
trouver image
Re: trouver image
Bonjour,
tu utilises "findSubImagesAsync",
tu demandes donc une exécution asynchrone.
Aussi le script prend en compte l'instruction qui suit "findSubImagesAsync" avant que "findSubImagesAsync" ne soit terminé.
D'où ton souci.
Pour ce que tu veux faire, il faut utiliser "findSubImages" .
exemple :
IMG_= Image.takeScreenshot();
Search_IMG_ =IMG_.findSubImages(IMG_a_trouver,
{
confidenceMinimum: 80,
downPyramidCount: 1,
searchExpansion: 15,
maximumMatches: 10
})
if (Search_IMG_) // on a donc trouvé img
{
// Search_IMG_.length
//for(J=1;J< Search_IMG_.length;J++)
//{
// Search_IMG_[J].position
//}
} // fin if
En dehors de ta question, pour les Screenshot, tu n'es pas obligé de créer un fichier "img".
L'instruction :
IMG_= Image.takeScreenshot()
suffit .
Cordialement
Francois
tu utilises "findSubImagesAsync",
tu demandes donc une exécution asynchrone.
Aussi le script prend en compte l'instruction qui suit "findSubImagesAsync" avant que "findSubImagesAsync" ne soit terminé.
D'où ton souci.
Pour ce que tu veux faire, il faut utiliser "findSubImages" .
exemple :
IMG_= Image.takeScreenshot();
Search_IMG_ =IMG_.findSubImages(IMG_a_trouver,
{
confidenceMinimum: 80,
downPyramidCount: 1,
searchExpansion: 15,
maximumMatches: 10
})
if (Search_IMG_) // on a donc trouvé img
{
// Search_IMG_.length
//for(J=1;J< Search_IMG_.length;J++)
//{
// Search_IMG_[J].position
//}
} // fin if
En dehors de ta question, pour les Screenshot, tu n'es pas obligé de créer un fichier "img".
L'instruction :
IMG_= Image.takeScreenshot()
suffit .
Cordialement
Francois
Re: trouver image
Bonjour
Merci beaucoup
Avec le code suivant je recupere les coordonnees de chaque position :
IMG_= screenShot;
Search_IMG_ =IMG_.findSubImages(imageToFind,
{
confidenceMinimum: 80,
downPyramidCount: 1,
searchExpansion: 15,
maximumMatches: 10
})
if (Search_IMG_) // on a donc trouvé img
{
// Search_IMG_.length
for(J=1;J< Search_IMG_.length;J++)
{
Console.print(" la coordonnee x est : "+Search_IMG_[J].position.x);
Console.print(" la coordonnee y est : "+Search_IMG_[J].position.y+"\n");
}
}
Une question a reponse facultative ,quel est l'utilite de l'action asynchrone si c'est une image fixe ?
Salutations.
Merci beaucoup
Avec le code suivant je recupere les coordonnees de chaque position :
IMG_= screenShot;
Search_IMG_ =IMG_.findSubImages(imageToFind,
{
confidenceMinimum: 80,
downPyramidCount: 1,
searchExpansion: 15,
maximumMatches: 10
})
if (Search_IMG_) // on a donc trouvé img
{
// Search_IMG_.length
for(J=1;J< Search_IMG_.length;J++)
{
Console.print(" la coordonnee x est : "+Search_IMG_[J].position.x);
Console.print(" la coordonnee y est : "+Search_IMG_[J].position.y+"\n");
}
}
Une question a reponse facultative ,quel est l'utilite de l'action asynchrone si c'est une image fixe ?
Salutations.
Re: trouver image
La recherche dans une image peut être longue, et tu peux vouloir faire d'autres choses pendant ce temps là.Une question a reponse facultative ,quel est l'utilite de l'action asynchrone si c'est une image fixe ?
"My software never has bugs. It just develops random features."