Recherche image dans image
Recherche image dans image
Bonjour,
Comme l'image choisie au départ ne correspondait pas toujours à ce qu'intuitivement je croyais être une "bonne image" à chercher, je me suis demandé en quoi mon intuition était parfois à coté de la plaque.
Indépendamment d'un besoin précis, j'ai donc essayé de savoir ce qui était important pour ActionAZ dans la recherche d'une image.
J'ai essayé de faire la chose sérieusement mais je n'exclus pas une ou 2 erreurs d'interprétation.
François
Comme l'image choisie au départ ne correspondait pas toujours à ce qu'intuitivement je croyais être une "bonne image" à chercher, je me suis demandé en quoi mon intuition était parfois à coté de la plaque.
Indépendamment d'un besoin précis, j'ai donc essayé de savoir ce qui était important pour ActionAZ dans la recherche d'une image.
J'ai essayé de faire la chose sérieusement mais je n'exclus pas une ou 2 erreurs d'interprétation.
François
- Attachments
-
- ActionAZ reherche image.doc
- tests autour de la recherche IMG
- (93.5 KiB) Downloaded 879 times
Re: Recherche image dans image
très intéressant, et merci beaucoup pour cette explication détaillée.
quelques remarques suite à la lecture de ton document :
- en page 6 : je ne comprends pas dans le premier cas dénommé "Mise en pratique (suite)"
pourquoi AZ ne trouve pas et pourquoi tu mets "Ne trouve pas et c'est normal"
là j'aurai besoin d'un poil d'explication supplémentaire
- en page 8 tu recommandes lorsque l'on connait la zone à rechercher de restreindre la recherche à cette zone (ce qui me semble normal)
mais en l'état cela veut dire d'avoir recours à une action de type Code
=> pour limiter le recours au code et rendre l'action graphique pertinente, je rajouterai bien un paramètre du type sélection de région
(Pour jmgr : j'aimerai bien reproduire le sélecteur de région qui est présent dans l'outil libre GreenShot, mais pour moi ça me semble complexe,
ce que je sait faire c'est rajouter deux champs de type Point/Position qui définiraient une zone mais c'est pas très user-friendly)
- documentation très utile à reverser dans le wiki
quelques remarques suite à la lecture de ton document :
- en page 6 : je ne comprends pas dans le premier cas dénommé "Mise en pratique (suite)"
pourquoi AZ ne trouve pas et pourquoi tu mets "Ne trouve pas et c'est normal"
là j'aurai besoin d'un poil d'explication supplémentaire
- en page 8 tu recommandes lorsque l'on connait la zone à rechercher de restreindre la recherche à cette zone (ce qui me semble normal)
mais en l'état cela veut dire d'avoir recours à une action de type Code
=> pour limiter le recours au code et rendre l'action graphique pertinente, je rajouterai bien un paramètre du type sélection de région
(Pour jmgr : j'aimerai bien reproduire le sélecteur de région qui est présent dans l'outil libre GreenShot, mais pour moi ça me semble complexe,
ce que je sait faire c'est rajouter deux champs de type Point/Position qui définiraient une zone mais c'est pas très user-friendly)
- documentation très utile à reverser dans le wiki
Re: Recherche image dans image
Bonjour,
J'aurais dû relire avec plus d'attention.
Il faut inverser les 2 images
Le but de la page 6 était de montrer que l'image à trouver(A) doit être incluse dans l'mage où l'on cherche (B).
(évident mais dans la pratique, on peut parfois prendre un peu trop grand)
Francois
J'aurais dû relire avec plus d'attention.
Il faut inverser les 2 images
Le but de la page 6 était de montrer que l'image à trouver(A) doit être incluse dans l'mage où l'on cherche (B).
(évident mais dans la pratique, on peut parfois prendre un peu trop grand)
Francois
Re: Recherche image dans image
Perso, j'ai toujours eu plein de problèmes avec cette action "Trouver Image"
mais à la lecture de ton document, j'ai refait un essai
j'utilise GreenShot pour faire mes copies d'écran et sélectionner mes images à chercher
A nouveau, je suis tombé sur un cas où avec mon image à chercher
au format PNG, actionaz ne trouve pas mon image dans la fenêtre
au fromat JPG, actionaz trouve l'image dans la fenêtre
françois à l'occasion peux-tu reproduire cela ?
(le résultat de trouver image dépend-il du format ?)
mais à la lecture de ton document, j'ai refait un essai
j'utilise GreenShot pour faire mes copies d'écran et sélectionner mes images à chercher
A nouveau, je suis tombé sur un cas où avec mon image à chercher
au format PNG, actionaz ne trouve pas mon image dans la fenêtre
au fromat JPG, actionaz trouve l'image dans la fenêtre
françois à l'occasion peux-tu reproduire cela ?
(le résultat de trouver image dépend-il du format ?)
Re: Recherche image dans image
J'ai testé avec des images de type jpg, gif et png, il n'y a rien de bien décisif à dire.
Je vais être un peu pris dans les jours à venir mais dès que possible, je vais essayer de
d'avancer sur " quelle image choisir".
Je suis toujours épaté par ce logiciel.
Francois
Je vais être un peu pris dans les jours à venir mais dès que possible, je vais essayer de
d'avancer sur " quelle image choisir".
Je suis toujours épaté par ce logiciel.
Francois
Re: Recherche image dans image
Salut à vous deux.
En effet la recherche d'images se fait sur des images en niveau de gris. L'algorithme de recherche fonctionne comme ça.
Plus d'infos : http://docs.opencv.org/doc/tutorials/im ... ching.html
Si l'image à chercher est petite il faut aussi penser à diminuer la valeur du paramètre "Expansion de la recherhe" qui représente le décalage en pixels entre chaque vérification : s'il est trop élevé ça ne fonctionnera pas. La valeur minimale est 1, mais va ralentir la recherche.
C'est assez complexe mais c'est bien ce que j'ai prévu, par contre par manque de temps ça n'avance pas...
En effet la recherche d'images se fait sur des images en niveau de gris. L'algorithme de recherche fonctionne comme ça.
Plus d'infos : http://docs.opencv.org/doc/tutorials/im ... ching.html
Si l'image à chercher est petite il faut aussi penser à diminuer la valeur du paramètre "Expansion de la recherhe" qui représente le décalage en pixels entre chaque vérification : s'il est trop élevé ça ne fonctionnera pas. La valeur minimale est 1, mais va ralentir la recherche.
Désolé, je n'arrive pas non plus à reproduire ce bug. Y-a t-il des parties transparentes dans ton image ? Comme le JPG ne supporte pas la transparence ça peut être une cause de différence.A nouveau, je suis tombé sur un cas où avec mon image à chercher
au format PNG, actionaz ne trouve pas mon image dans la fenêtre
au fromat JPG, actionaz trouve l'image dans la fenêtre
françois à l'occasion peux-tu reproduire cela ?
(le résultat de trouver image dépend-il du format ?)
Hm, je n'ai jamais utilisé ce logiciel mais je pense que je vois ce que tu veux dire : l'écran devient gris et tu peux sélectionner un rectangle avec du drag&drop ?(Pour jmgr : j'aimerai bien reproduire le sélecteur de région qui est présent dans l'outil libre GreenShot, mais pour moi ça me semble complexe,
ce que je sait faire c'est rajouter deux champs de type Point/Position qui définiraient une zone mais c'est pas très user-friendly)
C'est assez complexe mais c'est bien ce que j'ai prévu, par contre par manque de temps ça n'avance pas...
"My software never has bugs. It just develops random features."
Re: Recherche image dans image
mais comme c'est libre, la partie gérant cette partie est peut être récupérable.
J'ai regardé de mon coté mais je me suis noyé en rentrant dans le code.
Dans la version 1.1 (de GreenShot) il a été rajouté une loupe pour pouvoir contrôler finement la sélection de la zone à copier.
rien de mieux que d'essayer le logiciel pour se faire une idée.
J'ai regardé de mon coté mais je me suis noyé en rentrant dans le code.
Dans la version 1.1 (de GreenShot) il a été rajouté une loupe pour pouvoir contrôler finement la sélection de la zone à copier.
rien de mieux que d'essayer le logiciel pour se faire une idée.
Re: Recherche image dans image
Certes, c'est du C# mais j'imagine que ça fait appel à l'API Windows en C. Sinon c'est mal barré.
"My software never has bugs. It just develops random features."
Re: Recherche image dans image
Très interessant.En effet la recherche d'images se fait sur des images en niveau de gris. L'algorithme de recherche fonctionne comme ça.
Plus d'infos : http://docs.opencv.org/doc/tutorials/im ... ching.html
Juste par curiosité, quelle méthode utilises-tu ? ( à supposer que tu en utilises une seule)
Elles semblent toutes tourner autour de la méthode des moindres carrés.
Mais c'est bien loin tout ça.
En tout cas, la lecture de cet article aide à mieux comprendre comment le rapprochement entre images est fait.
Francois
Re: Recherche image dans image
Il s'agit de CV_TM_CCOEFF_NORMED, c'est à dire .
Je ne sais plus pourquoi j'ai choici cet algorithme là au lieu des autres, j'aurai du le marquer quelque part... Je suppose que j'ai du faire quelques tests. Enfin, ça peut faire l'objet d'une amélioration de l'action : ajouter le choix de l'algorithme dans les options avancées.
Edit: Hm, j'y pense, il doit être possible de faire la recherche d'image en prenant en compte les couleurs : il suffit de faire la recherche trois fois, une fois par cannal de l'image. Et dans ce cas on ne garde que les résultats qui valident les trois cannaux.
Je ne sais plus pourquoi j'ai choici cet algorithme là au lieu des autres, j'aurai du le marquer quelque part... Je suppose que j'ai du faire quelques tests. Enfin, ça peut faire l'objet d'une amélioration de l'action : ajouter le choix de l'algorithme dans les options avancées.
Edit: Hm, j'y pense, il doit être possible de faire la recherche d'image en prenant en compte les couleurs : il suffit de faire la recherche trois fois, une fois par cannal de l'image. Et dans ce cas on ne garde que les résultats qui valident les trois cannaux.
"My software never has bugs. It just develops random features."
Re: Recherche image dans image
Avec recherche "opencsv CV_TM_CCOEFF_NORMED" , google propose notamment 2 pdfs à télécharger.
Le 1er, "OReilly Learning OpenCV[1].pdf" me semble une mine d'infos.
Pour la partie "recherche image dans image",notamment (page 232):
Méthode 1 : square difference
Méthode 2 et 3 : correlation coefficient
Les méthodes 4 à 6 sont les formes normalisées des méthodes 1 à 3.
Finalement, en poussant en peu,via ces méthodes, il y a 2 types de recherche :
- Recherche d'une image la plus moyennement bonne.
- Recherche d'une image où l'on veut qu'il y ait un maximum de points où la correspondance est parfaite
(quitte à ce que pour certains autres points il n'y ait aucun rapport).
Le 1er, "OReilly Learning OpenCV[1].pdf" me semble une mine d'infos.
Pour la partie "recherche image dans image",notamment (page 232):
et page 233 :As usual, we obtain more accurate matches (at the cost of more computations) as we
move from simpler measures (square diff erence) to the more sophisticated ones (correlation
coeffi cient). It’s best to do some test trials of all these settings and then choose the
one that best trades off accuracy for speed in your application.
Page 235 : utilisation des 6 méthodes pour une même image.Again, be careful when interpreting your results. Th e square-diff erence
methods show best matches with a minimum, whereas the correlation
and correlation-coeffi cient methods show best matches at maximum
points.
Méthode 1 : square difference
Méthode 2 et 3 : correlation coefficient
Les méthodes 4 à 6 sont les formes normalisées des méthodes 1 à 3.
Finalement, en poussant en peu,via ces méthodes, il y a 2 types de recherche :
- Recherche d'une image la plus moyennement bonne.
- Recherche d'une image où l'on veut qu'il y ait un maximum de points où la correspondance est parfaite
(quitte à ce que pour certains autres points il n'y ait aucun rapport).
Re: Recherche image dans image
Bonjour,
J'avais fait ce topo en mai dernier, de mémoire avant la version 3.7.0.
Ce topo a perdu de son actualité avec cette version 3.7.0 et celle qui vient de sortir, la 3.8.0.
Avec ces nouvelles versions, JMGR nous a sorti pas mal de nouveautés concernant les images.
Je recommande un petit tour vers wiki.actionaz.org/doku.php?id=en:start
Francois
J'avais fait ce topo en mai dernier, de mémoire avant la version 3.7.0.
Ce topo a perdu de son actualité avec cette version 3.7.0 et celle qui vient de sortir, la 3.8.0.
Avec ces nouvelles versions, JMGR nous a sorti pas mal de nouveautés concernant les images.
Je recommande un petit tour vers wiki.actionaz.org/doku.php?id=en:start
Francois
Re: Recherche image dans image
En pièce jointe un topo sur les méthodes figurant dans l'action : trouver image.
Francois
Francois
- Attachments
-
- Recherche image dans image - les methodes.doc
- Action trouver image - les méthodes
- (98 KiB) Downloaded 384 times
Re: Recherche image dans image
Action 'trouver image'
Les paramètres utiles concernant l'attente :
Dans l'onglet Standard :
Si non trouvé : on peut choisir "attendre"
Dans l'onglet Avancé,
Délai entre 2 recherches lors d'une attente
Dans l'onglet Commun,
temps d execution maximal
(donc après plusieurs recherche+attente)
Les paramètres utiles concernant l'attente :
Dans l'onglet Standard :
Si non trouvé : on peut choisir "attendre"
Dans l'onglet Avancé,
Délai entre 2 recherches lors d'une attente
Dans l'onglet Commun,
temps d execution maximal
(donc après plusieurs recherche+attente)