RECHERCHE AUTOMATIQUE DE SIMILARITE ENTRE IMAGES INCLUANT UNE INTERVENTION HUMAINE
Domaine technique L'objet de la présente invention concerne une recherche d'images pour trouver une similarité visuelle entre des images contenues dans une base d'images et au moins une image requête.
Cette recherche de similarité est habituellement réalisée par un moteur de recherche ou moteur d'indexation tournant sur un processeur, les images étant typiquement stockées dans une mémoire numérique, et un terminal permet de présenter le résultat à un utilisateur du procédé de recherche, ce dernier pouvant aussi intervenir dans le procédé par l'intermédiaire d'interfaces (clavier, souris, etc.).
Un objectif de l'invention est de tenter de prendre en compte, dans une recherche d'images automatique, la subjectivité de l'utilisateur face à la notion de perception visuelle lorsque celui-ci cherche une similarité entre des images et une image requête.
La difficulté principale réside dans le fait que les algorithmes de recherche d'images (ou autres) étant déterministes, ils convergent toujours vers un même ensemble de résultats à partir d'une même requête, alors qu'un utilisateur qui fait intervenir sa subjectivité pour comparer des images donne un résultat pouvant être différent d'un autre utilisateur. Pour illustration, un moteur de recherche de tumeurs dans une application d'imagerie médicale pourra exécuter une recherche de façon entièrement automatique étant donné que la subjectivité n'y a que très peu de place, alors que le classement d'images de vacances peut faire intervenir plus de subjectivité si tant est que la requête est généraliste. A un niveau lié à une part de subjectivité importante, toute tentative de calcul de similarité visuelle déterministe est donc vouée à l'échec de façon plus ou moins importante selon la pertinence des processus de comparaison d'images. Pour palier ce problème, l'intervention humaine (i.e. l'utilisateur du système de recherche) reste obligatoire afin de réduire le biais de la recherche.
Le système va alors effectuer un apprentissage de la notion de similarité propre à un utilisateur particulier en réglant les paramètres intrinsèques au moteur de calcul de similarité grâce à l'action de l'utilisateur qui va approuver ou non les résultats présentés au cours de la phase de recherche. Cette phase d'apprentissage s'appelle aussi un bouclage de pertinence.
Ces réglages des paramètres intrinsèques au moteur sont de faibles amplitudes car ils ne font que modifier l'importance relative accordée aux différents descripteurs. Ainsi, un bouclage de pertinence ne peut que raffiner une recherche mais en aucun cas palier un mauvais choix des descripteurs. Pour illustrer la notion de phase d'apprentissage, on introduit Z), qui est la fonction de similarité visuelle associée à un utilisateur Uj, et I\ et /
2 deux images de la base. Sans bouclage de pertinence (c'est-à-dire sans pouvoir distinguer CZ
1 de Ui), on a Di(Zi, Z
2) = Z)
2(Zi, I
I) = Z
), (Zi, Z
2/ Prendre cette égalité comme postulat consiste donc à dénier la subjectivité de l'être. Il faudra donc considérer les résultats donnés par Uj et CT? pour distinguer
Ij). Et, en poussant la réflexion encore plus loin, on peut aussi considérer que Di,ti(Ii, I
2) #D
lrt2(Ii, I
2), où Di
;ti correspond à la similarité perçue par l'utilisateur Ui à un instant ti, pour prendre ainsi en compte le fait qu'un même utilisateur peut modifier sa notion de similarité visuelle au cours du temps. Cet exemple montre la complexité de simuler précisément cette notion.
La seule façon de tenir compte de la subjectivité de l'utilisateur semble donc bien être d'utiliser ce dernier pour paramétrer la boucle de traitement.
On considère généralement que la similarité entre deux images n'est qu'une somme pondérée de différences entre les descripteurs. Considérons trois grandes familles de descripteurs : la couleur (C), la texture (T) et la forme (F).
Lors du processus du calcul de similarité, on pondère l'importance relative des descripteurs. Ainsi, la fonction de similarité D(Ii, I2), peut se noter :
D(I1, 12) = α C(I1, I2) + β T(I1, 12) + γF(I,, I2)
La problématique se posant dès lors est celle de l'affectation de valeurs aux coefficients de pondération.
C'est à ce niveau qu'intervient la subjectivité humaine. Etat de la technique
Certains systèmes se sont axés sur le développement d'une interface homme- machine permettant de régler les poids que l'on souhaite accorder à chaque descripteur lors de la phase de recherche. Mais cette approche a de nombreux inconvénients :
— le processus de recherche devient très lourd pour l'utilisateur, car plus l'on désire de précision, plus l'utilisateur va devoir spécifier de paramètres ;
— une bonne compréhension de l'utilisation faite des coefficients par le moteur d'indexation est nécessaire. Or, ceci est très rarement le cas, particulièrement pour une application grand public ;
— l'utilisateur n'a aucune idée de la distribution statistique des signatures dans la base d'images et ne peut donc en tenir compte lors du réglage des paramètres ;
— modéliser sa propre appréciation visuelle par une série de chiffres est quelque chose d'excessivement difficile.
C'est pour remédier à ces problèmes que les méthodes actuelles de bouclage de pertinence ont été développées.
En référence à la figure 1 , une recherche d'images classique avec bouclage de pertinence comprend :
— une première étape préliminaire 1 de recherche d'images similaires ;
— une deuxième étape 2 durant laquelle l'utilisateur se voit présenter N réponses que le système juge pertinentes selon des critères automatiques implémentés par les auteurs de l'application. Une première méthode consiste en ce que l'utilisateur sélectionne, parmi les images réponses, les images qui lui semblent correspondre au mieux à sa requête (voir par exemple Y. chen et Coll. « One-Class SVM for Learning in Image Retrieval », dans IEEE International Conférence on Image Processing, Thessaloniki, Grèce 2001). Dans une deuxième méthode, il pourra a contrario préciser celles qu'il juge non pertinentes (voir par exemple Y. Rui et Coll. « Relevance Feddback : A Power Tool for Interactive Content-Based Image Retrieval », dans Storage and Retrieval for Image and Video
Databases (SPIE) pages 25-36, 1998). Dans une troisième méthode, telle que celle décrite par Y Rui et Coll. « A relevance Feedback Architecture in Content-Based Multimedia Information » (IEEE Workshop on Content-Based Access of Image and Video Libraries, pages 82-89, Puerto Rico, Juin 1997), on demande à l'utilisateur de classer toutes les images retournées par le système. À l'inverse, dans « Incrémental Relevance Feedback » de LJ. Aalbersberg (Proceedings of the Fifteenth Annual International ACM SIGIR Conférence on Research and Development in Information Retrieval, pages 11-22, Copenhague, 1992), le moteur ne présente qu'un seul document à l'utilisateur et lui demande immédiatement de confirmer ou non la pertinence de ce dernier. Dans « Interactive Evaluation of the Ostensive Model Using a New Test Collection of Images with Multiple Relevance Assessments » de I. Campbell (Information Retrieval , 2(1) : 89-114, 2000), est présenté une interface sous forme d'arbre. A chaque nœud correspond une image, et si l'utilisateur juge cette image pertinente, alors il déplie la branche correspondante et navigue de cette manière au sein de la base d'image.
— une troisième étape 3 de bouclage de pertinence. Les manières d'orienter la requête étant très intuitives pour l'utilisateur, elles permettent à l'application de diriger plus précisément la recherche au cours de la prochaine étape de bouclage de pertinence. Le but d'un algorithme de bouclage de pertinence est donc d'exploiter au mieux le retour de l'utilisateur pour, en quelque sorte, modéliser sa subjectivité.
Le bouclage de pertinence doit donc permettre à l'application de se rapprocher de l'image idéale censée représenter ce que souhaite l'utilisateur. Nous noterons Qo l'image requête initiale et Q0 sa signature (ou encore ses caractéristiques visuelles définies par un ensemble de descripteurs déterminés) dans l'espace des descripteurs.
Il est à noter qu'un espace des descripteurs est défini par des axes donnant chacun l'importance d'un des descripteurs déterminés dans une image, les images étant en général positionnées dans cet espace.
De la même manière, on notera Ip' et /1 les images respectivement pertinentes et non pertinentes spécifiées par l'utilisateur.
Un premier type de bouclage de pertinence connu est celui mis en œuvre par l'algorithme de Rocchio (J. Rocchio « Relevance Feedback in Information Retrieval, pages 313-323 », dans The Smart Retrieval System-Experiments in Automatic Document Processing. Gérard Slaton, prentice-hall édition, 1971).
II s'agit ici de déplacer le point modélisant l'image requête dans l'espace des descripteurs vers une seconde image requête "idéale", cette dernière n'existant pas obligatoirement dans la base. Un deuxième type de bouclage de pertinence connu est basé sur un algorithme de re-pondération, encore appelé méthode de l' écart-type. On pourra par exemple se référer à « Image Retrieval by Examples » de R. Brunelli et O. Mich (IEEE Transactions on Multimedia, 2(3) : 164-171, 2000).
Il s'agit ici de prendre en compte la forme de la distribution statistique des images retournées par l'utilisateur. Si, par exemple, l'écart-type de la distribution des réponses qu'il juge pertinentes est importante pour le descripteur i, cela signifie certainement que ce dernier ne joue par un rôle discriminant important. Il va donc falloir affecter à ce dernier une faible pondération. Ainsi, la pondération de ce descripteur i est inversement proportionnelle à son écart type. Si l'on considère que la fonction de similarité entre deux signatures est basée sur une forme sphérique en utilisant la norme Euclidienne, cette re-pondération revient alors à dilater ou à contracter les axes principaux de l'espace des descripteurs, notamment en considérant la définition matricielle de la distance entre deux vecteurs 7 et Q : D (1,Q) = (I - Qf A(I - Q) où A est la matrice de similarité symétrique de dimension égale au nombre de descripteurs définissant l'espace, et peut s'écrire A = [αy] avec ay ≥0 et aυ = aβ. L'isosurface de cette distance est alors une ellipse.
Pour le bouclage de pertinence, Y. Shikawa et coll. dans « Mindreader : Query databases through multiple examples (International Conférence on Image Processing, Rochester, New- York, USA, Septembre 2002) et Y. Rui et coll. dans « A Novel Relevance Feedback Architecture in Image Retrieval » (ACM
Multimedia (2), pages 67-70, 1999), proposent aussi de modifier les coefficients de corrélation entre les différents descripteurs afin d'affiner la modélisation de l'espace de perception de la similarité visuelle.
De façon évidente, il est tout à fait envisageable de combiner ces approches avec celle de Rocchio.
D'une façon générale, toutes ces approches (Rocchio et Re-pondération) consistent à effectuer des déformations géométriques de l'espace des descripteurs afin de se rapprocher le plus pertinemment possible de l'espace percepruel subjectif de l'utilisateur. Ces déformations se caractérisent par une modification de la métrique associée. Ces méthodes géométriques sont en outre unimodales, ce qui est une limitation du modèle perceptuel (voir par exemple « Indexation d'images par le contenu et recherche interactive dans les bases généralistes » de J. Fournier et Coll., PhD thesis, Université de Cergy-Pontoise, octobre 2002).
Un troisième type de bouclage de pertinence connu est basé sur des modèles probabilistes.
Un premier modèle probabiliste est connu sous le nom de modèle (ou système) de PicHunter, dans lequel on affecte à chaque image de la base une valeur de probabilité qui sera réévaluée à chaque itération du bouclage de pertinence. Cette valeur représente la probabilité a priori P(Ii = Iq) que l'image I1 de la base soit l'image requête Iq par l'utilisateur.
Dans ce modèle, on prend en compte l'historique des actions At de l'utilisateur face à l'ensemble des images D1 qui lui ont été présentées à l'itération t du bouclage de pertinence, pour avoir une probabilité que l'image /, soit l'image Iq. II s'agit alors de calculer la probabilité du choix de l'utilisateur face aux images qui lui sont proposées, en utilisant un modèle dit utilisateur qui part du principe que ce choix est indépendant de l'utilisateur. On utilise à cet effet les résultats des expériences psychophysiques menées par les auteurs.
Le calcul de probabilité inclue notamment le calcul de la fonction suivante :
Jg
)
où d(I,J
q) est la distance entre les signatures associées respectivement à /, et I
q, et σ un paramètre empirique. On peut alors déterminer la probabilité a priori pour chacune des images de la base d'être I
q, et présenter alors celles présentant les scores les plus importants. Un deuxième modèle probabiϋste est le modèle par décision Bayesienne (voir par exemple « Relevance Feedback and Category Search in Image Databases » de C. Meilhac et Coll. dans IEEE International Conférence on Multimedia Computing and Systems, Florence, Italie, Juin 1999), qui catégorise l'ensemble de la base en deux classes : pertinent ou non pertinent. Encore une fois, il va s'agir de déterminer les probabilités d'appartenance a posteriori à la classe C
R (pertinent) ou C
N (non pertinent) de chacune des images /, de la base. Cette méthode ne cherche à faire aucune hypothèse sur la forme de la distribution statistique des descripteurs des images. Il s'agit donc d'une méthode non paramétrique. La détermination des densités de probabilité se fait par l'utilisation d'un noyau de Parzen Gaussien.
Le choix de l'utilisation des noyaux de Parzen pour déterminer la densité de probabilité permet de ne faire aucune hypothèse sur la forme de la distribution, mais elle nécessite un nombre élevé d'exemples. Ce nombre requis croit de façon exponentielle avec le nombre de dimensions de l'espace des descripteurs. De plus les calculs utilisés ne sont applicables que dans l'hypothèse où tous les descripteurs sont indépendants, ce qui représente une grande limitation de ce modèle.
Un troisième modèle probabiliste est à base de Machines à Vecteurs de Support (ou SVM, pour « Support Vectors Machines » en anglais). II s'agit ici d'effectuer le bouclage de pertinence par une approche de type classification. On cherche à séparer la base en deux groupes : les images pertinentes et les images non pertinentes.
L'utilisation d'un réseau de neurones de type perceptron permettait d'effectuer cette classification en évaluant la position des points par rapport à l'hyperplan séparateur dans l'espace des descripteurs. L'inconvénient de ce type
de méthode est qu'il renvoie un résultat binaire : pertinent CR OU non pertinent
CN.
L'utilisation des Machines à Vecteurs de Support (SVM) permet de palier cet inconvénient en proposant de fournir en outre la distance à l'hyperplan en supplément d'information. Cette méthode cherche à construire un hyperplan optimal, c'est à dire maximisant la distance entre celui-ci et les points d'apprentissage.
Cependant, les calculs mis en œuvre dans cette méthode sont complexes à mettre en œuvre, même s'ils ont été simplifiés par le biais d'une utilisation d'une fonction dite noyau de type gaussien véhiculant la notion de distance entre deux vecteurs (et donc de similarité) dans l'espace des descripteurs ainsi qu'un paramètre empirique.
Dans le cas de l'application des SVM au bouclage de pertinence, on utilise donc l'algorithme comme un classificateur. L'utilisateur, en choisissant des images pertinentes (voir « One-Class SVM for Learning in Image Retrieval » de
Y. Chen et Coll., dans IEEE International Conférence on Image Processing,
Thessaloniki, Grèce, 2001) ou non-pertinentes (voir « Support Vector Machine for Learning Image Retrieval » de L. Zhang et Coll., dans IEEE International
Conférence on Image Processing, Thelassoniki, Grèce, 2001), initialise alors la base d'apprentissage servant de support à la classification.
De toutes ces techniques présentées précédemment, des limitations subsistent.
Les techniques de Rocchio et de re-pondération font une hypothèse forte: les images similaires pour l'utilisateur sont relativement proches dans l'espace des descripteurs. Or, faire cette hypothèse requiert d'avoir en sa possession des descripteurs reflétant parfaitement la perception humaine, ce qui n'est jamais le cas. D'autre part, la re-pondération s'effectue généralement en privilégiant une direction dans l'espace des descripteurs, c'est-à-dire un descripteur particulier.
En conséquence, ces techniques devront itérer un grand nombre de fois avant d'atteindre le désir de l'utilisateur.
Les méthodes bayesiennes et les méthodes à base de SVM font une classification des images dans l'espace des descripteurs. A ce titre, ce sont des méthodes d'apprentissage lourdes en complexité calculatoire.
Il est aussi important de souligner les manques de la plupart de ces méthodes: • L'historique. Très peu de ces méthodes prennent en compte les choix passés de l'utilisateur en termes d'images pertinentes ou non pertinentes.
• Le changement d'objectif de l'utilisateur. Les méthodes existantes ne prennent pas en compte ce critère interdisant donc à l'utilisateur de naviguer au sein de la base. « La multimodalité. Comme déjà mentionné, des images proches au sens de la similarité visuelle ne le sont pas forcément au sens des descripteurs. Il convient donc d'avoir plusieurs sources de pertinence ou de non pertinence dans l'espace des descripteurs.
• La non pertinence. Toutes les méthodes existantes ne prennent pas en compte la non pertinence des images.
Un premier objectif de la présente invention est de réaliser un bouclage de pertinence dans le cadre d'une recherche de similarité entre des images et au moins une image requête, qui est peu complexe à mettre en œuvre.
Un deuxième objectif de l'invention est de réaliser un bouclage de pertinence au moyen d'une méthode non-paramétrique, n'influençant aucunement l'espace des descripteurs ou les distances entre images.
Un troisième objectif de l'invention est la prise en compte, lors du bouclage de pertinence, des retours négatifs de l'utilisateur (i.e. retours de non-pertinence d'images qui lui sont présentées). Un quatrième objectif de l'invention est une prise en compte mesurée, par l'algorithme, des retours utilisateur d'itérations précédentes. En particulier, l'algorithme tiendra compte dans une certaine mesure des possibles changements de choix de l'utilisateur au cours de la phase de recherche.
Un cinquième objectif de l'invention est d'avoir une présentation intelligente des images retenues à l'utilisateur, de sorte à avoir une présentation plus pertinente qu'une simple présentation d'une liste d'images.
L'invention atteint notamment ces objectifs en proposant, selon un premier aspect un procédé de recherche d'images pour trouver une similarité visuelle entre des images contenues dans la base d'images et au moins une image requête, les images ayant une signature déterminée (ou encore un ensemble de descripteurs déterminés), des éléments des images ainsi qu'au moins un élément de l'image requête étant positionnés dans un espace des descripteurs défini par des axes donnant chacun l'importance d'un des descripteurs déterminés dans un élément d'image, caractérisé en ce qu'il comprend la mise en œuvre itérative des étapes suivantes : (a) évaluation par un utilisateur d'une pertinence visuelle ou d'une non-pertinence visuelle d'au moins une image parmi une pluralité d'images qui lui sont présentées, par rapport à l'image requête ;
(b) calcul d'une valeur de pertinence affectée à chaque image, comprenant :
— un calcul d'un champ d'influence s'étendant autour de chaque élément de chaque image évaluée lors de l'étape (a), de sorte que la valeur absolue de ce champ d'influence diminue d'autant que l'on s'éloigne, dans l'espace des descripteurs, de l'élément d'image évaluée considéré;
— pour chaque élément d'image, une sommation des valeurs des différents champs d'influence ressentis par l'élément d'image considéré, affectant ainsi à chaque élément d'image une valeur de pertinence pour l'itération courante ;
(c) sélection, par le moteur d'indexation, des images présentant les valeurs de pertinence les plus grandes, pour les représenter de nouveau à l'utilisateur lors de la prochaine itération.
Des caractéristiques particulières de ce procédé de recherche d'images sont : — dans une première configuration, lesdits éléments des images sont les images elles-mêmes prises dans leur ensemble ;
— dans une deuxième configuration, lesdits éléments des images sont des objets des images, chaque image étant composée d'une pluralité d'objets déterminés, et l'étape (b) comprend en outre une dernière opération consistant en une sommation des valeurs de pertinence (précédemment calculées) des différents
objets composant l'image considérée, affectant ainsi à chaque image la valeur de pertinence recherchée pour l'itération courante ;
— dans le cas où une image est évaluée lors de l'étape (a) comme étant pertinente, le champ d'influence calculé lors de l'étape (b) a une valeur positive ; — dans le cas où une image est évaluée lors de l'étape (a) comme étant pertinente, le champ d'influence calculé lors de l'étape (b) a une valeur négative.
— l'étape (b) comprend en outre la sommation, pour chaque élément d'image, des valeurs de pertinence de l'itération courante avec des valeurs de pertinence d'itérations précédentes ; — l'étape (b) inclut en outre, avant l'opération de sommation des valeurs de pertinence de l'itération courante avec des valeurs de pertinence d'itérations précédentes, une opération de pondération, pour chaque élément d'image, des valeurs de pertinence de sorte à atténuer d'autant leur influence sur le résultat de cette sommation qu'elles sont issues d'itérations anciennes ; — la pondération des valeurs de pertinence affectées à chaque élément de l'image requête est différente de la pondération des valeurs de pertinence affectées à chaque élément des autres images, en ce sens que leur influence respectives sur le résultat de l'opération de sommation est moins atténuée selon leur ancienneté ;
— l'étape (b) comprend en outre une étape de pondération qui attribue un poids différent aux champs d'influence selon que l'image associée a été évaluée lors de l'étape (a) comme étant pertinente ou non-pertinente ;
— lors de l'étape (a), l'utilisateur donne en outre un niveau de pertinence ou de non-pertinence à chaque image qu'il évalue, et en ce que chaque champ d'influence calculé lors de l'étape (b) est d'autant plus étendu que ce niveau de pertinence ou de non-pertinence est, en valeur absolue, élevé ;
— les différentes images sélectionnées lors de l'étape (c) sont présentées à l'utilisateur dans un ordre tenant compte des valeurs de pertinence qui leur ont été affectées lors de l'étape (b) ;
— le procédé comprend en outre, préalablement aux étapes d'itération, une évaluation automatique d'une similarité visuelle de différentes images avec l'image requête ; et une sélection d'un nombre déterminé d'images évaluées
comme étant les plus similaires avec l'image requête, ces images évaluées étant alors les images présentées à l'étape (a).
Selon un deuxième aspect, l'invention propose un dispositif mettant en œuvre ledit procédé avec ou sans les caractéristiques précédemment listées. Egalement, l'invention propose un programme d'ordinateur comportant des moyens de codage pour la mise en œuvre du procédé proposé.
D'autres aspects, buts et avantages de la présente invention apparaîtront mieux à la lecture de la description détaillée suivante de mise en œuvre de procédés et dispositifs préférés de celle-ci, donnés à titre d'exemple non limitatif et en référence aux dessins annexés sur lesquels :
La figure 1 représente de façon très générale les différentes étapes d'un procédé de recherche d'images incluant un bouclage de pertinence.
La figure 2 représente l'évolution dans le temps (ou au cours d'itérations) de la région de recherche d'images dans l'espace des descripteurs choisi comme cadre de la mise en œuvre du procédé selon l'invention.
Les figures 3 et 4 représentent un exemple de mise en œuvre d'un procédé de recherche d'images selon l'invention, dans le cas où le retour de l'utilisateur est positif. La figure 3 est une représentation graphique d'images dans un espace des descripteurs à 2 dimensions. La figure 5 représente un exemple de mise en œuvre d'un procédé de recherche d'images selon l'invention, dans le cas où le retour de l'utilisateur est négatif, dans une représentation graphique d'images dans un espace des descripteurs à 2 dimensions.
La figure 6 représente la synthèse de résultats expérimentaux montrant l'influence de la nature des retours (négatifs et/ou positifs) de l'utilisateur sur la pertinence obtenue par le procédé selon l'invention.
La figure 7 représente la synthèse de résultats expérimentaux montrant l'influence du changement d'objectif de l'utilisateur sur la pertinence obtenue par le procédé selon l'invention. Selon l'invention, les images sont stockées dans une base d'images.
Cette base d'images peut être divisée en sous-bases d'images définissant chacun un groupe d'images pour une vérité terrain déterminée.
Les images ou objets d'images (encore appelés de façon générique « éléments d'images ») selon l'invention ont une signature déterminée, c'est à dire qu'en d'autres termes ils sont décrits par un ensemble de descripteurs déterminés.
Ces éléments d'images sont positionnés dans un espace des descripteurs défini par des axes donnant chacun l'importance d'un des descripteurs déterminés dans un élément d'image. Les éléments d'image sont ainsi représentés par des points dans l'espace des descripteurs, chacun ayant ainsi une position caractérisant la signature de l'élément d'image considéré dans l'espace des descripteurs utilisé (voir par exemple la figure 2).
Le procédé selon l'invention comprend avantageusement les étapes suivantes, mises en œuvre itérativement, jusqu'à obtenir un résultat satisfaisant, ou présumé satisfaisant : (a) une évaluation par un utilisateur d'une pertinence visuelle ou d'une non- pertinence visuelle d'au moins une image parmi une pluralité d'images qui lui sont présentées, par rapport à au moins une image requête ;
(b) un bouclage de pertinence ;
(c) une sélection des images présentant les pertinences les plus grandes, pour les représenter de nouveau à l'utilisateur lors de la prochaine itération.
Lors de l'étape (a), l'utilisateur se voit donc présenter, par exemple sur un terminal d'affichage de type écran, un certain nombre d'images auxquelles il doit affecter une valeur correspondant à son jugement quant à la pertinence des réponses qui lui sont présentées. Dans le cadre de l'invention, on choisira une étape (a) (consistant en une intervention de l'utilisateur dans la boucle de recherche) au cours de laquelle l'utilisateur aura le choix entre déclarer une image pertinente ou une image non- pertinente. Typiquement, l'utilisateur attribuera une valeur positive en cas de pertinence et négative dans le cas d'une non-pertinence.
Bien entendu, l'invention prévoit un raffinement du type de choix donné à l'utilisateur, celui-ci pouvant donner en outre un niveau de pertinence ou de non- pertinence à chaque image qu'il évalue.
En tous les cas, l'étape (b) de bouclage de pertinence prendra en compte l'évaluation de pertinence de quelques unes des images qui sont présentées à l'utilisateur pour influer sur la pertinence de toutes les images de la base ou de la sous-base d'images considérée.
Le bouclage de pertinence selon l'étape (b) fait directement appel à une action de l'utilisateur qui en attend un retour instantané. Cela situe le processus à un point critique et nécessite une faible complexité de mise en œuvre du procédé selon l'invention, afin de fonctionner en temps réel. Compte tenu de l'importance des dimensions de l'espace des descripteurs dans lequel on peut travailler, ainsi que le nombre important d'images que peut contenir une base ou une sous-base, ce point est loin d'être trivial et peut rapidement mener à des impossibilités pratiques. Pour cela, il est souhaitable d'évaluer, à chaque étape critique de la mise en place de l' algorithme, l'évolution de la complexité associée, afin de ne pas dépasser un taux de complexité critique.
L'étape (b) de bouclage de pertinence comprend un calcul d'une valeur de pertinence affectée à chaque image, comprenant : — un calcul d'un champ d'influence s'étendant autour de chaque élément de chaque image évaluée par l'utilisateur lors de l'étape (a), de sorte que la valeur absolue de ce champ d'influence diminue d'autant que l'on s'éloigne, dans l'espace des descripteurs, de l'élément d'image évaluée considéré; — pour chaque élément d'image, une sommation des valeurs des différents champs d'influence ressentis par l'élément d'image considéré, affectant ainsi à chaque élément d'image une valeur de pertinence pour l'itération courante.
Pour des raisons de simplicité d'utilisation et de portabilité, le bouclage de pertinence doit être vu comme un processus complémentaire de celui de recherche d'images traditionnel. Pour cela, il peut agir comme une partie indépendante dans un procédé plus étendu.
FEUILLE RECTIFIEE (REGLE 91) ISA/EP
Ces champs d'influence définissent alors un espace de recherche (pour les images se trouvant dans le champ d'influence d'une image évaluée comme pertinente lors de l'étape (a)), un espace de non-recherche (pour les images se trouvant dans le champ d'influence d'une image évaluée comme non-pertinente lors de l'étape (a)), ou un espace de recouvrement lorsqu'un espace de non recherche recouvre un espace de recherche.
L'invention peut ainsi entraîner une scission de l'espace de recherche originellement unique (centré autour de l'image requête) en plusieurs espaces de recherche (non connexes), si deux éléments à une étape de la recherche sont désignés comme pertinents mais sont éloignés dans l'espace des descripteurs, provoquant ainsi un partitionnement multi-modal de l'espace des descripteurs.
Soit Npert le nombre total d'images désignées comme pertinentes par l'utilisateur et N—rt le nombre total de retours négatifs (i.e. images non- pertinentes) désignés par ce même utilisateur. La somme de ces deux types d'images est notée Nbouci- Une recherche simple correspond alors au cas où Npe,t = /V p-erl = 0.
Si on désigne maintenant par E l'ensemble des objets ou images entrant dans le bouclage de pertinence. Cet ensemble est composé des ensembles Eper/ , E— et Q désignant respectivement les images pertinentes, non pertinentes et l'image requête initiale. Nous avons donc E = Εper, u E— t u
Q. On note Etot l'ensemble des images de la base ou de la sous-base.
Dans le cas initial (i.e. à l'itération 0, où au temps t - 0, t étant incrémenté de 1 à chaque itération), on a :
V,(t ≈ 0) = τQ.e «ι a> où XQ est une pondération attribuée à l'image requête Q.
Les images retenues comme étant similaires à Q sont alors les k images ayant les valeurs de pertinence les plus importantes. L'ensemble de ces images
FEUILLE RECTIFIEE (REGLE 91) ISA/EP
est noté Epres. {Npres) où Nprβs. représente le nombre d'images présentées à l'utilisateur. Pour simplifier la notation, cet ensemble sera désigné par Epres..
Ainsi dans le cas initial, V(i) représente la valeur de similarité simple de l'image d'index i par rapport à l'image requête Q. Dès cet instant, l'utilisateur a la possibilité de désigner au sein de l'ensemble Epres. les images qu'il juge pertinentes ou non, avant de relancer la recherche. Le calcul de Vt(t), i e Etol., s'écrit alors :
"pcrt.
Vt(t) = τβ.e o«-i™fi.a + Vχ , τ-h .e o-*<i(<»Λ )> - ∑ We ^> (1)
où τ^ et τNk sont les poids respectifs des images qui ont été respectivement évaluées par l'utilisateur comme étant pertinentes et non-pertinentes. Dans le cas particulier où l'utilisateur a, en outre de donner un choix quant à la pertinence ou à la non-pertinence d'images qui lui sont présentées, la possibilité d'attribuer un niveau de pertinence (par exemple VA, 3A, et - 4/4 pour trois images qui lui sont présentées dans le cadre d'une notation de niveau de pertinence sur 4), on pourra par exemple introduire de nouveaux coefficients de pondération par niveau de pertinence de sorte que les niveaux évaluées les plus élevés en valeur absolue soient les plus influents dans le résultat final. On pourra aussi jouer sur l'expression même du potentiel (e"d(M)).
La détermination des valeurs de Vtft) e W ne nécessite aucune normalisation. L'ensemble de ces valeurs seront simplement triées par ordre croissant, pour n'en retenir que les k plus importantes.
Ainsi, le cas particulier où il n'y aurait que des images non pertinentes dans la boucle garde un sens. En effet, dans ce cas, les images ou objets proposés à l'utilisateur seront les images les plus éloignées des zones créées par les objets non pertinents. L'algorithme dans ce cas ne prédit pas une image pertinente, mais plutôt l'ensemble des images les "moins non-pertinentes".
Dans le cadre de l'invention, on privilégiera plutôt le fait de ne pas considérer les retours évalués (lors de l'étape (a)) comme étant pertinents de la même manière que ceux évalués comme étant non-pertinents. En effet, de récentes études (voir par exemple Y. chen et Coll. « One-Class SVM for Learning
FEUILLE RECTIFIEE (REGLE 91 ) ISA/EP
in Image Retrieval », dans IEEE International Conférence on Image Processing, Thessaloniki, Grèce 2001) ont montré qu'il serait sans doute incorrect de considérer de la même manière les retours positifs (i.e. pertinents) et les retours négatifs (i.e. non-pertinents), de par le fait que les retours positifs sont sémantiquement liés (partant du principe que l'utilisateur ne change pas d'avis au cours du processus) tandis que les retours négatifs n'ont a priori aucune raison de l'être. Ainsi, il est préférable que l'algorithme de bouclage de pertinence tienne compte du fait que les retours utilisateurs positifs ou négatifs ne véhiculent pas le même type d'information. Ces retours seront donc plutôt traités de façon asymétrique. Cette opération pourra alors se réaliser dans la formule (1) en différenciant par exemple les poids τm de r/>*.
Chaque image insérée dans Etot. crée donc une zone ou champ d'influence autour de sa position dans l'espace des descripteurs. Cette influence est soit positive dans le cas d'une image pertinente, soit négative dans le cas d'une image non pertinente. Ainsi, le calcul des Npres. nouvelles images présentées à l'utilisateur dépendra de la topologie de la zone d'influence créée par la sommation des zones associées à l'ensemble des images se trouvant dans E.
Le calcul de la valeur de pertinence associée à l'image d'index i dépend alors de l'ensemble des images de Epert. affectées d'un coefficient positif et des images de l'ensemble E— ( affectées d'un coefficient négatif reflétant le caractère non pertinent de ce groupe.
Optionnellement, on introduit dans les différentes pondérations notées r, 0
= Q, Pk , ou N/J dans la formule (1) une variable d'évanescence dans le temps
(ou plus exactement selon l'ancienneté des itérations) qui limitera la portée temporelle d'un événement, affectant ainsi à une valeur de pertinence d'une image une durée de vie dans la boucle de pertinence. On notera donc τt(t) cette pondération donnant notamment la durée de vie de l'image i à l'itération t, t étant incrémenté à chaque recherche.
Dans ce cas, on associe à chaque image i e Etot. une valeur de pertinence V,(t) évaluée en fonction de sa durée de vie à l'instant / et des positions relatives des images de l'ensemble E. On obtient alors :
FEUILLE RECTIFIEE (REGLE 91 ) 1SA/EP
Vit) = F(/, 0 où F est une fonction monotone décroissante. Dans le cas initial où t = 0, on a :
V,(t = O) = τQ(t = O).e-d<i Q> Les images retenues comme étant similaires à Q sont alors les k images ayant les valeurs de pertinence les plus importantes. L'ensemble de ces images est noté Epres, (t, Npres) où Npres, représente le nombre d'images présenté à l'utilisateur. Pour simplifier la notation, nous désignerons cet ensemble à l'instant t par Epres, (t). Le calcul de Vi (t), i e EloL s'écrit alors :
Dans un mode de mise en œuvre particulier, à chaque itération, la durée de vie associée à une image de E décroît d'une unité. Lorsque cette dernière atteint la valeur nulle, elle est retirée de la liste. L'image requête continue, quant à elle, à jouer le rôle d'un retour pertinent.
Sa durée de vie τQ(t) peut alors être différente de celle de chacune des autres images de la base ou de la sous-base. Ainsi, la durée de vie τç(t) de l'image requête peut être supérieure à la durée de vie τ de chacune des autres images de la base ou de la sous-base, de par le caractère spécifique de l'image requête. L'utilisation d'une durée de vie pour l'ensemble des images de la boucle de pertinence permet de prendre en compte l'aspect mémoire à moyen terme de l'apprentissage.
Ce qu'on entend ici par « mémoire à moyen terme » est défini par opposition à : - une mémoire à court terme, ne prenant en compte que le dernier bouclage de pertinence, comme cela est régulièrement le cas dans les moteurs de recherche ;
- un apprentissage à long terme cherchant à modéliser la notion de similarité d'un utilisateur, en gardant la mémoire des actions effectuées non seulement au cours de là requête actuelle, mais également au cours de toutes les requêtes passées. Bien que séduisante, cette méthode se base encore une fois sur
le principe que l'utilisateur ne changera pas d'avis au court de la recherche.
Ainsi, une image ne jouera un rôle que temporairement et permettra ainsi à l'utilisateur de modifier son choix au cours de la phase de recherche d'images. En effet, cette durée de vie de pertinence affectée aux images affecte ainsi une inertie d'apprentissage au moteur d'indexation qui permet de prendre en compte ce possible changement de direction de l'utilisateur. En effet, dans notre cas, une image désignée comme pertinente à l'instant t, peut ne plus l'être à l'instant t + τ, voir même dans le cas extrême devenir indésirable.
Enfin, les variables temporelles seront remises à zéro au début de chaque nouveau processus complet de recherche (c'est-à-dire à la désignation d'une nouvelle image requête).
La figure 2 représente l'évolution de la zone de recherche (à l'intérieur des lignes pointillées) des images possédant une valeur de pertinence supérieure à un seuil leur permettant d'apparaître alors dans Epres.(0- A t=l, une zone d'influence (i.e. zone claire sur la figure 2) est initialement définie autour de l'image requête dans cet espace de descripteurs à 2 dimensions, typiquement le champ d'influence associé a une symétrie sphérique autour du point représentant l'image requête Q.
A t=2, l'utilisateur, lors de l'étape (a), a évalué l'image Ipi comme étant pertinente. La conséquence du bouclage de pertinence est un étirement de la zone d'influence vers la position de Ipi dans l'espace des descripteurs.
A t=3, l'utilisateur, lors de l'étape (a), a évalué les images Ip2 et Ip3 comme étant pertinentes. La conséquence du bouclage de pertinence est un étirement de la zone d'influence vers les positions de Ip2 et de Ip3 dans l'espace des descripteurs. A t=3 à 6, l'utilisateur, lors de l'étape (a), confirme son évaluation de la 3eme itération (pertinence des images Ip2 et Ip3). Au final on obtient donc une zone d'influence centrée sur les images Ip2 et Ip3, représentative de la similarité d'images vis à vis de l'image requête Q au sens où l'entend l'utilisateur.
Au final, ladite étape (c) du procédé selon l'invention consiste en une sélection, par le moteur d'indexation, des images présentant les valeurs de
FEUILLE FtECTiFIEE (REGLE 91) JSA/EP
pertinence les plus grandes, pour les représenter de nouveau à l'utilisateur lors de la prochaine itération.
Optionnellement, la présentation des images ainsi sélectionnées n'est pas faite de façon aléatoire, mais est présentée dans un ordre déterminé. On pourra par exemple présenter les images de la plus pertinente à la moins pertinente. Ainsi, cette façon d'opérer peut présenter des avantages tels que : diriger plus rapidement l'utilisateur vers des images le satisfaisant; - diminuer l'influence des images voisines présentées à l'utilisateur sur son choix. La notion de similarité est en effet aussi relative à son environnement. L'utilisateur peut en effet désigner une première image comme étant pertinente lorsqu'elle est entourée de certaines images, et peut être désignée comme étant non pertinente par ce même utilisateur dans un autre contexte.
Une variante de l'invention consiste à positionner non plus les images dans l'espace des descripteurs, mais des objets dont sont composés ces images. Cette relation est particulièrement intéressante dans le cadre d'un processus de bouclage de pertinence, la notion de similarité entre deux images étant intimement liée à la similarité des différents objets qui la composent. Le bouclage de pertinence se trouve donc être l'étape idéale pour effectuer la liaison entre les objets et les images globales. Pour cela, à chaque fois que l'utilisateur sélectionne une image pertinente P^ dans l'espace des images, l'ensemble des objets composant cette image seront considérés comme pertinents et seront alors traités comme tels. L'utilisateur a alors accès à l'ensemble des k objets dont la valeur de pertinence V(i) est la plus importante. Le traitement comprend ensuite les deux opérations sus-mentionnées lors de la mise en œuvre de l'étape (b), lesdits « éléments d'images » étant alors ici des « objets d'images », avec en outre une opération finale consistant en une sommation des valeurs, de pertinence (précédemment calculées) des différents objets composant l'image considérée, affectant ainsi à chaque image la valeur de pertinence recherchée pour l'itération courante.
Ainsi, de cette manière, l'algorithme va mettre en avant l'ensemble des objets communs à toutes les images sélectionnées par l'utilisateur (la sommation augmentant la surface de la zone d'influence les entourant).
Si l'utilisateur décide d'effectuer une action de bouclage de pertinence lors d'une requête objet, ces derniers seront traités de façon traditionnelle et viendront alors conforter les régions à forte valeur de pertinence.
Mode particulier de réalisation de l'invention dans un cas simple :
Ci-après est présenté l'évolution d'une recherche dans un cas simple. Pour cela, on se place dans un espace de deux descripteurs chromatiques, à savoir la moyenne de la composante Rouge et Verte (r,g). Sont placés artificiellement deux groupes d'objets se positionnant aux extrémités de cet espace : un groupe d'images uniformément jaunes Gi et uniformément gris/noir G^- Nous avons ensuite choisi comme requête initiale une image Q d'un gris moyen, se situant donc à mi- chemin entre les deux groupes (voir Figure 3(a)). Un moteur classique de recherche d'images proposera comme réponse à cette requête un ensemble d'images tirées provenant de G; et de G2 (voir Figure 4, première colonne). C'est à ce niveau que l'utilisateur va pouvoir orienter son choix à l'aide du bouclage de pertinence. Pour cela, il désigne une image jaune Pi comme étant pertinente (voir Figure 4). Le procédé selon l'invention fait alors évoluer la surface de recherche en calculant de nouveau la densité en tout point de l'espace (voir Figure 3(b)). Le résultat fourni par le moteur de recherche est donc plus proche du désir de l'utilisateur (voir Figure 4, deuxième colonne). Si ce dernier persiste dans son choix en précisant de nouveau la couleur jaune (P2), le résultat sera alors en parfaite adéquation avec son choix (voir Figure 4, troisième colonne). Si, a contrario, l'utilisateur spécifie une image jaune Ni comme étant non pertinente, la surface va avoir tendance à s'écarter de ce point (voir Figure 5), tout en conservant malgré tout une mémoire à moyen terme des choix précédents.
Résultats expérimentaux
L'évaluation d'un système de bouclage de pertinence est un sujet problématique et rarement abordé dans la littérature. En effet, il s'agit d'un problème plus complexe que celui de l'évaluation d'un simple système de
recherche. Il faut se poser la question élémentaire de savoir ce que valorise un algorithme de bouclage de pertinence. Dans le cadre de l'invention, il ne s'agit pas seulement d'évaluer la pertinence des images présentées à l'utilisateur, mais aussi d'évaluer sa capacité à s'adapter à un changement d'objectif de l'utilisateur.
A cet effet, la Demanderesse a pris le parti de mettre en place une méthode empirique basée sur la notion de pertinence ressentie par l'utilisateur. Nous notons P(t), cette valeur à l'itération t. Chaque image désignée a posteriori comme pertinente par l'utilisateur se voit alors attribuer une valeur relative à sa position au sein de Epτes (t). Cette valeur est inversement proportionnelle à son rang de classement. Soit Npres le nombre d'images présentées, si une image /, est définie comme étant pertinente sa contribution à P(t) sera alors :
PIt) = Npres - RaHg(I1)
La valeur totale de la pertinence est alors définie par la somme de toutes les contributions :
où le dénominateur sert de coefficient de normalisation, et 5(I
1) vaut 1 si /, est considérée comme pertinente et 0 sinon.
Pour l'ensemble des expérimentations, est utilisée une base constituée de 2000 images, et d'une vérité terrain de 15 groupes de 20 images constituant des formations sémantiques. A partir de cela, on peut évaluer automatiquement la valeur b(IJ en se reportant à la vérité terrain, c'est-à-dire :
[0 sinon où G
k représente le groupe des k images de la vérité terrain choisies pour l'expérimentation en cours.
Cette méthode permet de prendre en compte la pertinence du classement effectué par le moteur selon l'invention. Est principalement recherché l'évolution du moteur, et cette méthode semble la plus propice à cela.
Pour des raisons de simplicité de représentation, ont ici été choisis deux descripteurs simples, à savoir : un descripteur couleur, basée sur la moyenne colorimétrique de l'image, calculée dans l'espace couleur HSV ; un descripteur texture f -[βoυ,θoo •• /1-35,035] de dimension 24 (car il y a 4 échelles et 6 orientations), basé sur l'utilisation des filtres de Gabor (voir par exemple pour plus de précisions : « Texture Features for Browsing and Retrieval of Image Data » de B. S. Manjunath et W. Y. Ma, dans IEEE Transactions on
Pattern Analysis and Machine Intelligence, 18(8) : 837-842, Août 1996).
Encore une fois, on ne recherche pas ici à effectuer une évaluation des descripteurs, mais à constater le pouvoir d'adaptation de l'algorithme de bouclage de pertinence selon l'invention.
La Demanderesse a renouvelé des expériences de bouclage de pertinence pour différentes catégories d'images.
La synthèse des résultats est présentée sur les figures 6 et 7, dans lesquelles est visualisée l'évolution de la pertinence (axe des ordonnées) au cours du processus itératif (nombre d'itérations en abscisses).
La Figure 6, représente l'évolution de la pertinence P(t) en fonction de l'utilisation des retours positifs (i.e. pertinents) et/ou négatifs (i.e. non-pertinents). La courbe 10 donne le résultat de pertinence lorsqu'on autorise l'utilisateur (lors de l'étape (a)) à fournir des réponses positives et négatives. La courbe 20 donne le résultat de pertinence lorsqu'on autorise l'utilisateur
(lors de l'étape (a)) à fournir des réponses uniquement négatives.
La courbe 30 donne le résultat de pertinence lorsqu'on autorise l'utilisateur (lors de l'étape (a)) à fournir des réponses uniquement positives.
On constate à la vue de cette courbe que la combinaison des deux types de retours (positifs et négatifs) permet un meilleur résultat final.
L'utilisation des seuls retours positifs n'aboutit pas aux résultats optimaux. En effet, ces retours permettent de se rapprocher des images pertinentes, mais si une image non pertinente se trouve malgré tout dans la zone d'influence créée par les Npert images pertinentes, alors celle-ci apparaîtra dans Epres.(t), ce qui explique la baisse du résultat de pertinence.
L'utilisation des seuls retours négatifs, donne les résultats de moins bonne qualité. En effet, comme nous l'avons vu précédemment, ils vont seulement permettre de s'éloigner des images non-pertinentes. Pour obtenir un résultat plus pertinent, il faudrait pousser le processus de bouclage de pertinence sur un nombre très important d'itérations tout en conservant l'intégralité de l'historique, c'est-à- dire en faisant tendre t vers l'infini. Cela ne permettra alors pas la prise en compte d'un changement d'objectif de la part de l'utilisateur. D'autre part, ce résultat vient renforcer l'idée vue précédemment de ne pas accorder la même importance aux retours négatifs qu'aux retours positifs lors du bouclage de pertinence. En référence à la figure 7, est mise en évidence la qualité d'adaptation du procédé selon l'invention face à un changement d'objectif de l'utilisateur entre deux itérations. Pour cela, a été effectué le même type de procédé expérimental que précédemment, en changeant simplement Gk au cours de l'expérience. Dans la Figure 7, l'utilisateur effectue deux changements d'objectifs 100 et 200 au cours des dix premières itérations.
Il est intéressant de remarquer que lors du deuxième changement d'objectif, il n'y a aucun temps de latence. Il s'agit d'un cas particulier où la zone de recherche associée au choix précédent correspond grossièrement à celle de la nouvelle sélection.
La présente invention ne se limite pas aux exemples de procédé de recherche d'images tels que précédemment décrits, mais à toute application correspondant au concept inventif ressortant du présent texte et des différentes figures. En outre, la présente invention s'étend au dispositif de recherche d'images apte à mettre en œuvre le procédé selon l'invention.