chercher image suite a une capture d une zone

Vous voulez de l'aide ? Postez ici :)
Post Reply
gaby2007
Posts: 49
Joined: 27 May 2021, 04:06

chercher image suite a une capture d une zone

Post by gaby2007 »

bonsoir
j ai fait ce scripte mais je ne comprends pas pkoi il ne fonctionne pas

l idée est de faire une capture d écran d une zone définie par un rectangle
et ensuite faire une recherche d image dans une image qui sera la capture d écran assimilée a une variable

est ce possible ou est ce que j ai fait une erreur?

merci
Attachments
forum.ascr
(12.39 KiB) Downloaded 68 times
eureka
Posts: 204
Joined: 08 Mar 2016, 22:18

Re: chercher image suite a une capture d une zone

Post by eureka »

J'ai regardé votre script car je suis en train de créer un script similaire pour le traitement par lots des images.

Un point que j'ai repéré ...

Le lien de l'image est

C:/Users/Christophe/Desktop/actionaz/BIBLIOTHEQUE IMAGES SERVANT POUR ACTIONAZ/nego/CHIIFRE SEUL/100%/1 1.jpg

et ceci a un espace dans le nom de l'image "1 1.jpg" et aussi dans les noms des dossiers.

En règle générale, il ne faut pas utiliser d'espace dans le chemin d'accès au fichier. En fait, vous pouvez placer l'image dans des ressources afin qu'elle soit accessible en tant que ressource locale.

Si vous devez utiliser des espaces, définissez le chemin de l'image entre guillemets. Vous pouvez également lancer un script Python pour accéder à l'image.

L'approche que j'utilise est de lancer un outil externe Flameshot pour automatiser la capture d'image en utilisant la ligne de commande. Mais Flameshot ne fonctionne que sur Linux et vous avez Windows.

Voici des alternatives.

https://alternativeto.net/software/flameshot/

Choisissez-en une et automatisez cet outil depuis Actiona.

Traduit avec www.DeepL.com/Translator (version gratuite)
gaby2007
Posts: 49
Joined: 27 May 2021, 04:06

Re: chercher image suite a une capture d une zone

Post by gaby2007 »

mais est ce possible .?
comment faire pour faire un code similaire avec par exemple greenshot ?
eureka
Posts: 204
Joined: 08 Mar 2016, 22:18

Re: chercher image suite a une capture d une zone

Post by eureka »

Oui, c'est possible. Mais il devient plus difficile d'écrire un script multiplateforme (pour Windows et Linux).

Je peux obtenir des résultats en utilisant Flameshot (sous Linux) mais comme je ne peux pas installer et tester Greenshot, j'ai fait quelques lectures et il a des options de ligne de commande.

Aussi ici :

https://getgreenshot.org/2013/01/28/how ... lications/

"Alors comment fonctionne le plugin de commande externe de Greenshot ?
C'est simple... Faites un clic droit sur l'icône Greenshot systray et cliquez sur "Configurer les commandes externes".
(Si ce n'est pas là, vous utilisez une ancienne version de Greenshot ou vous n'avez pas choisi d'installer le plugin de commande externe pendant le processus d'installation. Dans les deux cas, vous devez télécharger la dernière version de l'installateur de Greenshot et l'installer. Lorsque le programme d'installation demande quels sont les plugins à installer, assurez-vous de cocher la case à côté de "External Command Plugin", et procédez à l'installation.)"



Cette discussion fait référence à la version 2.0

https://superuser.com/questions/1396439 ... e-like-sni

Mais comme je préfère une approche multiplateforme, j'ai commencé à lire ici :

https://github.com/asweigart/pyautogui

Cet exemple de base capture des captures d'écran :

Code: Select all

#!/usr/bin/env python3

"""
https://github.com/asweigart/pyautogui
"""

import pyautogui
im1 = pyautogui.screenshot()
im1.save('mon_écran.png')
im2 = pyautogui.screenshot('ma_capture_d'écran2.png')
Traduit avec www.DeepL.com/Translator (version gratuite)
eureka
Posts: 204
Joined: 08 Mar 2016, 22:18

Re: chercher image suite a une capture d une zone

Post by eureka »

Note ajoutée :

En cherchant un outil de régionalisation d'image multiplateforme, j'ai trouvé ksnip.

https://github.com/ksnip/ksnip/releases

Je vais commencer à expérimenter avec cela via la ligne de commande. Les actions peuvent être définies avec des hot keys. ksnip semble prometteur.
gaby2007
Posts: 49
Joined: 27 May 2021, 04:06

Re: chercher image suite a une capture d une zone

Post by gaby2007 »

mais juste une question bete

la variable var screenShot_partie= screenShot.copy(new Rect(x1,y1,x2,y2)); pourquoioi on ne peut pas la recuperer ?
c est bien une image ?

lorsque actiona utilise la capture d ecran cela marche
donc pkoi cela ne marche pas avec screnshot_partie?
francois
Posts: 456
Joined: 18 Oct 2010, 10:33
Location: France

Re: chercher image suite a une capture d une zone

Post by francois »

Bonjour,

Dans votre script, il y a :
extrait_img.gif
extrait_img.gif (3.01 KiB) Viewed 1118 times
Dans cette zone, Actiona attend le nom d'un fichier

Mais vous indiquez le nom d'un objet 'Image' que vous avez créé dans l'action précédente ( via du code) :

Code: Select all

var screenShot_partie= screenShot.copy(new Rect(x1,y1,x2,y2));
.

Pour utiliser l'objet screenShot_partie il faut faire la recherche d'image via du code ( cela n'est pas prévu avec l'action image.)

Par ailleurs, les paramètres du rectangle sont (x1,y1, largeur, hauteur) et pas (x1,y1,x2,y2)

En pièce jointe un script exemple où il y a 2 images identiques et le script trouve la bonne grâce au rectangle.

Avant une 1ere utilisation :
- ouvrir a.htm
- refaire l'image 'image_a_trouver.jpg' pour l'adapter à votre résolution d'écran.

- paramétrer dans la 1ere action :

Code: Select all

repp= "C:/temp/ZZ";
img_a_trouver=  repp + "/"  +   "image_a_trouver.jpg";

// où chercher dans l'écran
x0= 1204;
y0= 264;
largeur=200;
hauteur=200;
img_dans_zone.zip
(3.67 KiB) Downloaded 87 times
Post Reply