Vous êtes sur la page 1sur 307

Bases de donnes multimdia

I - Introduction
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Bases de donnes multimedia

Deux intervenants:

Herv Jgou, herve.jegou@inria.fr

Matthijs Douze, matthijs.douze@inria.fr

12 x 1.5H = 18H de cours

valuation : examen crit


Au programme

Introduction

Gestion des bases de donnes multimdia

Espaces de reprsentations

Mesures de similarit

valuation

Description globale

Description locale

Techniques dindexation

Recherche dans des espaces de grande dimension

Indexation Vido

Catgorisation des images

Indexation Audio
Base de donnes
Une base de donnes est un
ensemble structur et organis
permettant le stockage de grandes
quantits d'informations afin d'en
faciliter l'exploitation (ajout, mise
jour, recherche de donnes).
Wikipedia
Multimdia
Qui utilise plusieurs moyens de diffusion
Qui concerne plusieurs mdia
Diffus par plusieurs mdia
Adj: Qui utilise ou concerne plusieurs mdias
Media: Tout support de diffusion de linformation
constituant la fois un moyen dexpression et
un intermdiaire transmettant un message
lattention dun groupe
Multimdia
Le mot multimdia est apparu vers la fin des
annes 1980, lorsque les CD-ROM se
sont dvelopps. Il dsignait alors les
applications qui, grce la mmoire du
CD et aux capacits de l'ordinateur,
pouvaient gnrer, utiliser ou piloter
diffrents mdias simultanment []
Aujourd'hui on utilise le mot multimdia pour
dsigner toute application utilisant ou
servant travailler sur au moins un
mdia spcifique. []
Par ailleurs, en recherche en informatique,
on nomme multimdia l'tude des mdias
non textuels, principalement les images,
les vido et les sons.
Note : Wikipedia est une encyclopdie libre. La qualit
des informations prsentes est gnralement bonne,
mais le contenu ne provient pas systmatiquement
dexpert et ne prsente pas de garantie.
Wikipedia
Multimdia : dfinition de travail

Des contenus pouvant tre de diffrents types, en particulier

Texte

Son

Image

Vidos

Qui peuvent tre combins

Caractriss par des besoins de stockage trs importants


Ordres de grandeur

Volume unitaire de stockage. Valeurs typiques :


*: lutilisation dun algorithme de compression dimage ddi lossless (sans
perte) amliore un peu ce taux de compression
Stockage brut
Compression sans
perte
Compression avec
perte
Texte (Descartes,
discours de la mthode,
http://abu.cnam.fr )
125 Ko Gzip: 42 Ko N/A
Photo (6 Mpixels) 18 Mo Gzip*: 12 Mo 1 Mo
Album de musique 750 Mo FLAC: 406 Mo 75 Mo
Un film de 100 minutes
(720x576) 180 Go X 700 Mo
Ordres de grandeur

Nombre dunits

Internet visible ncessite seulement 5-10 To de capacit de stockage

Aot 2007: 61 milliards de recherches sur Internet recenses

Images : par exemple, Flickr, Web


ordre de grandeur: milliard dizaine de milliards dimages

Films : http://www.imdb.org recense plus de 400 000 films

Croissance trs importante, en raison de laccumulation des contenus


numriques auto-produits par le grand public

http://www.flickr.com : 1578 images uploaded in the last minutes


extrapolation : 2M dimages images par jour, 800M dimages par an

http://www.youtube.com : 100M de vidos dlivres chaque jour


(hypothse basse)

Images/vido spcifiques : photos satellites, vido-surveillance, etc


Chane du multimdia : besoins

Gnration : outils de production et de cration

Reprsentation : utilisation de formats de reprsentations diffrentes

Stockage

Transmission : problme de rseaux, architecture

Recherche dinformation : recherche base sur le contenu

Distribution : conception de serveur de streaming


Applications types

News/Films la demande

Commerce electronique

Informations mdicales

Systmes dinformations gographiques

Architecture/Design

Protection du copyright

Go-localisation

Enqutes policires

Militaire

Exprimentations scientifiques

Enseignement

Archivage, gestion des bases de donnes de contenu (personnelles ou


professionnelles)

Moteur de recherche (ex: Internet)

Applications industrielles
Dans les cours suivants :
focus sur la partie recherche et
indexation dans de grandes bases
dimages et de vidos
Bases de donnes multimdia
II Gestion des bases de donnes multimdia
Base de donnes multimdia

Multimedia Database (MMDB)

Initialement traites comme des bases standards

Objets multimdia traits comme un seul item comme champs au sein


dune base de donnes relationnelle (ex: Oracle, LOB Large Object)

Recherche sur mots cls introduits manuellement dans le systme par la


personne : ncessit dun systme dannotation, par exemple

Tag ID3 dans le MP3

Information Exif

Utilisation des relations entre objets

Recherche sur les mots prsents dans les pages Web


conjointement avec lobjet multimdia
http://images.google.com
http://www.exalead.fr/image
Base de donnes standard

Une base de donnes (DB) relationnelle est un ensemble de mise en


relation.

Un systme de gestion de base de donnes (DBMS) est un logiciel facilitant


la cration, la maintenance et la manipulation dune base de donnes. Il
garantit scurit et intgrit de la base.

Oracle, DB2, Sybase, PostgreSQL, Mysql

Systme de base de donnes = la base + le systme de gestion

Points cls :

Indpendance des donnes : donnes et logiciels de gestion spars

Indpendant du mode de stockage ou de reprsentation de la base

Abstraction des donnes : reprsentation conceptuelle

Auto-suffisance de la base de donnes.


Pas de relation avec des donnes externes.
Relations entre donnes

Bases de donnes relationnelles :

dfinition densembles et de relations entre ces ensembles

ensemble composs dentits du mme type caractris par des


champs de type simple (chanes de caractres, de valeurs numriques,
etc)

relations entre objets bien dfinies (est en relation ou non)

utilisation dun langage de requte par prdicat (en particulier SQL)

Succs important de ce type de systme

rpond la plupart des besoins impliquant des donnes simples

accrot lindpendance des donnes

Dans un contexte de donnes de type signal : ncessite la prsence


dannotations (ou mta-donnes) et/ou doutils danalyse
Spcificits des bases de donnes multimdia (MMDB)

Ex de requte impossible avec un SGDB classique:

rcuprer tous les images qui ressemblent une image requte

Grosky et Fotouhi (1) caractrisent le multimdia partir du type dactivit


implique dans la cration des donnes
Linformation porte par le multimdia est tout ce qui peut venir du monde rel,
alors que linformation porte par une base de donnes classique ne peut
tre quune reprsentation symbolique de faits limits lunivers de la base
de donnes.

Le dveloppeur dune MMDB ne peut expliciter tous les aspects des


donnes qui seront importants pour lutilisateur

les informations ne peuvent se limiter un ensemble de champs


prdfinis

sauf pour certaines applications trs spcifiques


[1]. W.I. Grosky, F. Fotouhi and Z. Ziang. Multimedia data Management. Using metadata to integrate and apply digital
media, chapter Using metadata for the intelligent browsing of structured media objets, pages 123-148. In Sheth
and Klas, 1998
Richesse des bases de donnes multimdia

Apprendre un concept (ici les couleurs) partir du monde rel [2]


cest--dire Google ou tout autre base texte+images

Conclusion de larticle : utiliser Internet pour dfinir des couleurs de nouvelles


images meilleurs rsultats que de demander un groupe de personnes
[2]. J. Van-der-Weijer, C. Schmid and J. Verbeek, Learning Color Names from Real-world Images, CVPR 2007
MMDB avec contexte dutilisation limit

Toutes les applications ne ncessitent pas de systme de gestion


sophistiqu
en particulier celles qui correspondent un besoin spcifique (type de
requte unique ou limit)

Pour de telles applications spcifiques :

bases de donnes classiques


+ outils danalyse adapts lapplication

Exemple : base de donnes sur le remplissage des stades partir dimages


de retransmission
Objets actifs vs objets passifs

Bertino et al [4] distingue les objets multimdia en actifs et passifs

Objets actifs : participent au processus de recherche

Cette image contient-elle une voiture ?


utilisation de la reprsentation de limage

Les objets passifs se contentent dexister dans la base. Ils ne peuvent tre
retrouver quau moyen dattributs (pas dutilisation de lobjet pour la
requte).

Remarque : En gnral, dans une DB: recherche associative (rechercher


des proprits/objets inconnus partir dattributs connus) = mode passif

Une MMDB contenant des objets passifs de satisfait pas les besoins des
utilisateurs : besoin de recherche dinformation sur le contenu des objets,
non pas sur leurs attributs.

Recherche par attributs limite une recherche exacte. Recherche par le


contenu implique recherche approximative
[3]. A. Hampapur and R. Jain. Multimedia data management. Using metadata to integrate and apply digital
media, chaper Video data management systems: metadata and architecture, pages 245-286.,1998.
Contenu et meta-donnes

Les donnes brutes (fichier image, fichier son) provenant dobjets


multimdia contiennent des informations smantiques.

Grosky [4] distingue

La donne brute (image, signal sonore)

Les mta-donnes dcrivant le contenu


DEFINITION: le processus dabstraction permet de dcrire le contenu dobjets
multimdia par des mta-donnes, soit manuellement, soit par des
procds (semi-)automatiques

Ces meta-donnes proviennent soit de proprits de descripteurs des


objets (couleur moyenne dune image) ou dannotations manuelles.
[4]. W.I. Grosky, F. Fotouhi and Z. Jiang. Multimedia data management. Using metadata to integrate and apply digital
media, pages 123-149, 1998.
Annotations / Meta-donnes

Une annotation textuelle sera toujours trop restrictive, mme si elle prend
en compte la fois des informations syntaxiques et symboliques.

Malgr cela, lapproche la plus utilise reste lannotation textuelle et


manuelle

Avantage : recherche indpendante du type de media

Inconvnients

Le cot dannotation manuel est trs important

Diffrentes personnes utilisent un vocabulaire diffrent pour signifier la


mme chose (ex: clair, lumineux). Connu sous le nom de problme
du vocabulaire. Lutilisation dun thsaurus ne rgle pas tout.

Diffrentes personnes peuvent dcrire des aspects diffrents du


mdia (polysmie du contenu), la mme personne dcrira diffrents
aspects en fonction de la situation.

Le non-verbal ne peut tre exprim sans ambiguit.


Une carte nest pas un territoire
1. Une carte n'est pas le territoire.
les mots ne sont pas les choses qu'ils
reprsentent.
2. Une carte ne couvre pas tout le territoire.
les mots ne peuvent pas couvrir tout ce
qu'ils reprsentent.
3. Une carte est auto-rflexive.
dans le langage, nous pouvons parler
propos du langage.
Alfred Korzybski, Une carte n'est pas le territoire
Systmes dannotation : musique/image

Musique
1. pas de tag prvu dans le format originel CD
2. Mais utilisation dun identifiant unique par CD (CDID)

coupl avec un serveur qui associe des tags chaque CDID


http://www.freedb.org annotation par les utilisateurs finaux
1. MP3 : utilisation de ID3

Images
1. annotation Exif, IPTC
2. http://labelme.csail.mit.edu (MIT)
ID3 Tags

Conu en 1996 et devenu de facto un standard

128 octets

Manque de souplesse

de nombreuses extensions (ID3v1.1, ID3v2)

mais qui ne pourront jamais rpondre tous les besoins


Position Taille Contenu
0 3 Marqueur TAG
3 30 Titre
33 30 Interprte
63 30 Album
93 4 Anne
97 30 Commentaire
127 1 Genre musical
Exchangeable image file format (Exif)

Spcification pour les formats dimages des appareils numriques

non gr par une organisation internationale, mais largement utilis

Pour JPEG, TIFF, RIFF. Ne supporte pas JPEG2000, PNG ou GIF

Le format supporte

Date et heure, enregistrs par lappareil

Les paramtres de lappareil

Dpendent du modle : inclus la marque et des informations diverses telles


que le temps douverture, lorientation, la focale, lISO, etc.

Une vignette de pr-visualisation

La description et les informations de copyright

Support par de nombreuses applications


Label Me
http://labelme.csail.mit.edu (MIT)
Recherche approximative/par similarit

Lide cl dans la recherche de mdia est la recherche approximative

Utilise la notion de proximit, de similarit, de distance entre objets

Gnralement, la requte est exprime sous la forme dun ou de plusieurs


vecteurs dans un espace multi-dimensionnel.

dfinition dune distance (ou mesure de dissimilarit) sur cet espace

recherche des objets dont la distance est minimale

Les vecteurs dattributs sont extraits de contenu de limage


Recherche par le contenu (CBIR: content based information retrieval)

Possibilit dutiliser un retour de pertinence


Retour de pertinence

Possibilit de mettre linteraction au coeur du systme

parmi les rponses, le systme identifie ce quil trouve intressant

puis affinage de la requte par lutilisateur


Utilisateur
Liste trie
Retour de
pertinence
MMDB
Reprsentation
De la requte
Fonctionnalits dun systme de gestion de la MMDB

Ce quil doit (devrait) permettre

Les objets multimdia peuvent tre actifs

Le processus de requte est interactif

Le processus de requte peut utiliser plusieurs modes de reprsentation


(ex: texte, puis image)

Il doit possder deux modes

Gestion du contenu (ajout, modification des objets prsents,


suppression)

Interrogation de la base

Il doit pouvoir combiner des informations provenant de diffrents modes de


reprsentation, utiliser le retour de pertinence pour affiner la recherche

Ncessit dune interface utilisateur permettant la manipulation des objets


existants, la prsentation de rsultats, le retour de pertinence
Indexation

Structurer la base pour ne pas avoir la parcourir entirement chaque


recherche, comme dans un dictionnaire

Ncessite de dcrire le contenu avec des index portant sur les mdias

Difficult : les mdias en question sont reprsents par des vecteurs de


grande dimension

The dimension curse


La maldiction de la dimension

Nous reviendrons largement sur cet aspect dans la suite de ce cours


Moteurs de recherche bass sur le contenu

http://images.google.com : non bas sur le contenu, utilisation de mots cls


uniquement

Critre de similarit global

QBIC (Query By Image content) IBM 93

Virage 93

Photobook MIT93

http://www.visualsearchlab.com : description par la couleur

http://bigimbaz.inrialpes.fr : recherche par description locale


Bases de donnes multimdia
III Mesures de comparaison et valuation dun systme
de recherche dinformation
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Mesures et valuation : Plan
A) Distances et mesures de similarit
B) Mesures objectives, subjectives, psycho-visuelles
C) valuation dun systme de recherche dinformation
Distances et mesures de similarit : objectif

Avoir un outil quantitatif pour rpondre la question


Est-ce que deux entits X et Y se ressemblent ?

Lorsquon dsire comparer des entits, on cherche obtenir un scalaire


indiquant la proximit de ces entits

La mesure utilise rpond un objectif particulier, soit final, soit


intermdiaire, par exemple

comparer la qualit de reconstruction dune image compresse avec


limage originale (objectif final)

indiquer la similarit du contenu de deux images (objectif final)

comparer les formes contenues dans deux images (objectif


intermdiaire)
Distance

Une distance d sur un ensemble E est une application de E x E dans R


+

vrifiant les axiomes suivants :

(P1) sparation: d(x,y) = 0 x = y

(P2) symtrie : d(x,y) = d(y,x)

(P3) ingalit triangulaire: d(x,z) d(x,y) + d(y,z)


Distances usuelles sur R
n
(rappels)
x = (x
1
,,x
i
,,x
n
) R
n

Distance Euclidienne (ou 2-distance)

Distance de Manhattan (ou 1-distance)

Plus gnralement, distance de Minkowski (ou p-distance)

Cas particulier : -distance


Distance de Mahalanobis

Observation : les diffrentes composantes dun vecteur ne sont pas forcment


homognes, et peuvent tre corrles

Exemple : vecteur de description dun objet roulant


(nombres de roues, vitesse maximale en km/h, poids en kg, acclration)

Ncessit de pondrer les composantes

Matrice de covariance 2 (apprise sur un jeu de donnes)


DEFINITION : la distance de Mahalanobis est la distance dfinie par

Si 2 = Id, alors quivalente la distance Euclidienne

Si 2 diagonale, alors elle est quivalente la distance Euclidienne normalise


Distance de Hausdorff

Soit un espace mtrique E munie dune distance d


DEFINITION : Soit A E. lensemble dfinie par
est appel -voisinage de A
DEFINITION : la distance de Hausdorff d
H
entre deux parties A et B de E est
dfinie comme

Cette mesure est utilise comme une mesure de similarit entre formes (en
considrant lensemble des recalages possibles).
Autres distances

Distance du X
2
pour comparer deux distributions

Distances composes
d ( x , y )=

i , x
i
0y
i
0
( x
i
y
i
)
2
x
i
+y
i
Quasi-distance

La notion de distance nest pas toujours adapte, car elle impose des
axiomes trs forts qui ne servent pas directement lobjectif recherch

Une quasi-distance q est une application qui vrifie les proprits (P2) et
(P3) et la proprit suivante

(P1) q(x,x) = 0

Exemple : Soit E un ensemble dimages contenant un objet et C(X) la


classe de ces objets (chat, voiture, ). Lapplication q: E
2
R
+
telle que
q(x,y) = 0 si C(x)=C(y), c-a-d si x et y contiennent le mme objet
q(x,y) = 1 sinon
est une quasi-distance

Une quasi-distance peut tre nulle entre des objets diffrents. Minimiser
une quasi-distance permet de retrouver une proprit particulire dun objet.
Mesure de similarit et dissimilarit

Plus gnral encore ?


mesure de dissimilarit ou de similarit

Une mesure de dissimilarit est une une application ExEK, o K est un


ensemble muni dun ordre total

Mme dfinition pour une mesure de similarit

Mesure de similarit et de dissimilarit diffrent par le fait que

grande valeur indique forte proximit pour la mesure de similarit

faible valeur indique forte proximit pour mesure de dissimilarit

Toute distance ou quasi-distance est une mesure de dissimilarit


Exemples (au tableau)

Le cosinus est une mesure de similarit

pour des vecteurs normaliss, quivalent au produit scalaire

lien avec la distance Euclidienne

Divergence de Kullback-Leibler

loi entre distributions de probabilits

dfinition au tableau

non symtrique, pas forcment dfinie, axiome de sparation vrifi

interprtation en compression
Mesures objectives usuelles pour limage

En compression image ou vido : MSE ou PSNR

MSE : Mean Square Error (Error quadratique moyenne)

le carr de la norme 2 entre les intensits de limage

images de mme taille

cest une mesure de dissimilarit

SNR : Signal to Noise Ratio

mesure de similarit

utilise en traitement du signal

PSNR : Peak Signal to Noise

mesure la plus utilise pour valuer les algorithmes de compression


PSNR = 10 log
10
(P
2
/ MSE)
Mesures et valuation : Plan
A) Distances et mesures de similarit
B) Mesures objectives, subjectives, psycho-visuelles
C) valuation dun systme de recherche dinformation
Mesures subjectives

Dans ce qui prcdait : mesures objectives de comparaison

Pour beaucoup dapplications, le but est de maximiser lesprance de la


satisfaction de lutilisateur.
seule une mesure subjective par lutilisateur lui-mme permettent
doptimiser pleinement ce critre

Exemple : comparaison dimages


Bruit Gaussien

Crop+mise lchelle

Compression JPEG5

Bruit Gaussien
PSNR = 19.82 dB

Crop+mise lchelle
PSNR = 15.63 dB

Compression JPEG5
PSNR = 25.84 dB

Bruit Gaussien

Crop+mise lchelle

Compression JPEG5

Mesures subjectives pour limage

Protocole dvaluation strict (recommandations internationales), ex :

nombre significatif dobservateurs

clairage, distance, dure dexposition

tests doubls pour diminuer les incohrences

Utilisation dchelle de qualit subjective. Ex: recommandation BT.599 de


lITU (International Telecommunication Union) pour la compression
dimages :

Utilisation de bases de donnes communes


5 Excellent 80-100
4 Bon 60-80
3 Moyen 40-60
2 Mdiocre 20-40
1 Mauvais 0-20
Mesures subjectives : difficults

Lavis dun utilisateur peut vari et ninstancie pas un ordre total

Deux utilisateurs distincts ne portent pas le mme jugement

Les avis relatifs de qualit dpendent du type dimage

!!! Le cot !!!


Mesures objectives psycho-visuelles/acoustique/

Ide : apprendre une mesure objective qui modlisera la mesure subjective

pour une tche particulire

utilise la modlisation (difficile) du systme de perception humain

en image : pas de consensus


Mesure objective
M
e
s
u
r
e

s
u
b
j
e
c
t
i
v
e
Mesures et valuation : Plan
A) Distances et mesures de similarit
B) Mesures objectives, subjectives, psycho-visuelles
C) valuation dun systme de recherche dinformation
Pr-requis pour lvaluation

Avoir disposition

un ensemble de test (base dans laquelle on recherche)

un ensemble de requtes non incluses dans la base de test

une vrit terrain (ground truth) pour chaque couple (requte, lment
de la base) qui rpond la question : est-ce que llment de la base est
pertinent pour la requte considre ?

Remarques

pour comparer deux mthodes, les mmes ensembles de test et de


requtes doivent tre utiliss
bases de tests partages par les chercheurs du domaine
comptition avec introduction de nouvelles bases de test

la taille de ces ensembles doit tre suffisamment grande pour diminuer


la variance de lvaluation
Prcision/rappel (dbut)

Soit E un ensemble dobjets (lensemble des textes, images, vidos) muni


dune quasi-distance q telle que

' x, y E, q(x,y) = 0 si y est pertinent pour x


q(x,y) = 1 sinon
Remarque: on suppose ici la symtrie de la relation q

Cette quasi-distance instancie la vrit terrain

Exemple : x et y sont 2 images


q(x,y) = 0 si x et y se ressemblent,
q(x,y) = 1 sinon

Soit un ensemble E E, et x : x E et x E

E : ensemble dans lequel on effectue la recherche

x : la requte
Prcision/rappel (suite)

Le systme de recherche est paramtr pour retourner plus ou moins de


rsultats

La quantit dobjets retourns varie entre 1 et #E

plus on retourne de rsultats, plus on a de chance de retourner toutes


les objets pertinents de la base

en gnral, moins on en retourne, plus le taux dobjets retourns et qui


sont pertinents est lev

Ces deux notions sont couvertes par les mesures de prcision et de rappel
Prcision/rappel (suite)

Soit R lensemble des rsultats retourns, de cardinal #R

Soit P lensemble des rsultats pertinents dans E pour x, c-a-d


P = { y E / q(x,y) = 0 }

Soit A lensemble des rsultats retourns et qui sont pertinents


A = { y R / q(x,y) = 0 }
DEFINITION : la prcision = #A / #R est le taux dlments qui sont pertinents
parmi ceux qui sont retourns par le systme
DEFINITION : le rappel = #A / #P est le taux dlments qui sont pertinents qui
sont retourns par le systme

La performance du systme peut tre dcrite par une courbe


prcision/rappel
Prcision/rappel (suite et presque fin)

Remarques :

P est indpendant de la requte.

R varie en fonction de la paramtrisation (qui retourne + ou de


rsultats)
E
R
P
A
Equal Error Rate et Average Precision

La courbe prcision/rappel ninstancie par un ordre total


rappel
p
r

c
i
s
i
o
n
rappel
p
r

c
i
s
i
o
n
Quel est le meilleur :
le vert ou le bleu ?
rappel
p
r

c
i
s
i
o
n
1
1
Equal Error Rate Average precision
precision
=recall
Exercice : systme de recherche dobjets

Pour la requte et les rsultats tris suivants : tracer les courbes


prcision/rappel et ROC, calculer le rang normalis moyen
1 2 3
4 5
6 7 8
9 10
ROC (Receiver operating characteristic)

Soit une vrit terrain q(.,.)

Rponse du systme une requte x

r(x,y)=0 si y est retourn (objet considr pertinent), r(x,y)=1 sinon


REMARQUE : rappel = vp / (vp + fn)
DEFINITION : taux de faux positifs = fp / (fp + vn) = 1 - spcificit

Courbe ROC : rappel en fonction du taux de faux positifs


Vrit terrain
S
y
s
t

m
e
Pertinent (p) non pertinent (n)
Pertinent (p)
Non pertinent (n)
Vrai positif (vp)
q(x,y)=0 r(x,y)=0
Faux ngatif (fn)
q(x,y)=0 r(x,y)=1
Faux positif (fp)
q(x,y)=1 r(x,y)=0
Vrai ngatif (vn)
q(x,y)=1 r(x,y)=1
Area under Curve (AUC)

Mesure de performance calcule partir de la courbe ROC

Exemple pour mesure la pertinence dun test mdical (voir


http://gimm.unmc.edu/dxtests/roc3.html)
0.90-1.00 Excellent
0.80-0.90 Bon
0.80-0.70 Passable
0.60-0.70 Pauvre
0.50-0.60 Mauvais

Interprtation : lAUC peut tre interprte comme la probabilit, quand on


prend deux chantillons -un positif et un ngatif-, que le systme classe
mieux le positif que le ngatif
Et la pertinence ?
DEFINITION: la pertinence dun systme (pour une paramtrisation donne)
est le taux dobjets qui sont correctement juges, c-a-d
pertinence = (vrais positifs + vrais ngatifs) / taille de la base

En recherche dinformation : mauvaise mesure de la qualit du systme

en gnral, la plupart des objets ne sont pas pertinents

un systme qui renverrait systmatiquement ngatif serait quasiment


imbattable

Intrt davoir des courbes (precision/recall et ROC) pour lvaluation

dpend de lutilisation : certains utilisateurs cherchent la prcision (ex:


requte sur Google), dautres un grand rappel possible (recherche de
contenu pirat)
Pour plus dinfo

Introduction to Information Retrieval, C. D. Manning, P. Raghavan and H.


Schtze, Cambridge University Press, 2008

Chapitre 8

http://www-csli.stanford.edu/~hinrich/information-retrieval-book.html
Mesures et protocole dvaluation : conclusion

Mesure de (dis)-similarit ncessaire pour lvaluation des proximits

utilises dans les protocoles dvaluation des tapes impliques dans la


chane de reprsentation/indexation/recherche

Difficult de trouver une bonne mesure

elle doit tre adapte ce que lon compare (ex: loi de probabilit)

elle doit rpondre lobjectif recherch

Il peut tre dangereux de vouloir optimiser une mesure objective (exemple


du PSNR) qui nest pas directement lie au but recherch

valuation dun systme de recherche multimdia

mthodes identiques celles utilises en texte

utilisation de courbes plutt que de scalaires (peuvent tre interprtes


en fonction du besoin)

nintgrent pas les mesures de similarits qui ont produit le rang!


Bases de donnes multimdia
IV Espaces de reprsentations
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Espaces de reprsentation : Plan

Du monde rel la description numrique

Reprsenter : pour quelle application ?

Difficults

Indices visuels

Reprsentation globale vs reprsentation locale


Du monde rel la reprsentation numrique

notre chelle, les signaux que nous dsirons acqurir sont continus

Leur reprsentation sur des supports numriques ncessite une opration


de discrtisation necssairement destructrice
par opposition aux supports analogiques

On distingue deux types doprations de discrtisation

Lchantillonnage

La quantification
Lchantillonnage

Cest lopration de discrtisation du support du signal

support temporel (son, vido, )

support spatial (image, vido)

support 3D (scanner, )

Cest lopration qui consiste choisir un support discret pour le signal

Il est gnralement rgulier, mais pas necssairement

Voir exemple au tableau

Le niveau de discrtisation requis est fonction de la plage de frquence que


lon veut pouvoir restituer
Thorme dchantillonnage de Nyquist-Shannon: stipule que la
frquence dchantillonnage doit tre au moins 2* la frquence maximale
contenue dans le signal
Quantification (dbut)

Cest lopration de discrtisation des amplitudes du signal

Exemple au tableau

Dans un sens plus gnral, la quantification peut tre vectorielle


f: R
d
F, avec F={1,2,..k}
ensemble fini dentiers

La quantification dfinit un diagramme de Vorono


DEFINITION : Un diagramme de Vorono est une dcomposition dun espace
mtrique dtermine par les distances un ensemble discret de points
Quantification (suite)

Quantification uniforme

Calcul de lerreur de reconstruction si le signal est uniforme

Impact de laugmentation de la prcision sur le rapport signal bruit

au tableau

Autres quantifications usuelles (la plupart sont structurs)

Quantification uniforme

Quantification Lloyd-Max (non structur)

Quantification par lattice (lattice hexagonale, lattice E8, lattice de Leech)

JPEG2000: quantification dead-zone ou code en treillis (JPEG2000)

Pour plus dinfos, voir [5]


[5] R. M. Gray et D. L. Neuhoff, Quantization, IEEE Transactions on Information Theory, vol 44, pages
2325-2384, Oct. 1998
Quantification (fin)

Quantificateur non structurs : appris sur les donnes

regroupe les donnes similaires en leur associant le mme index

k-means (Lloyds)

au tableau

Exercice :

appliquer le k-means aux points (0,0) (2,0) (0,1) (3,4) (4,2) (5,0), k=2

prouver la convergence de lalgorithme


1
5
4
3
2
Exemple de discrtisations de signaux
SON

chantillonage : Rgulier

8 kHz pour une conversation tlphonique (frquence de la voix < 4kHz)

44.1 kHz (CD) ou 48 kHz (professionnel), parfois 96 kHz

Quantification :

8 bits (premires cartes son, qualit pauvre)

16 bits (CD), le bruit de quantification est denviron 98 dB

20 bits bruit de quantification de 122 dB


IMAGE (couleur)

3 grilles de valeurs, 1 grille par composante de couleur

RGB : 8 bits de quantification pour chaque couleur


24 bits par pixels (pixel=lment du support du signal)
La couleur

Espace de reprsentation RGB (Red, Green, Blue)

reprsentation additive des couleurs sur la base de la lumire mise

le plus souvent, chaque canal est reprsent sur 8 bits


16,7 millions de couleurs possibles

YUV (Y: luminosit, U et V: chrominance)

utilis dans PAL

YCbCr, Y'CbCr

Mise lchelle de YUV pour les signaux digitaux

utilis dans JPEG, MPEG2

permet une quantification plus grossire des valeurs de chrominance

HSV (Hue, Saturation, Value) = HSB

Bonne reprsentation perceptuelle des couleurs, utilis dans les logiciels

CMYK : Espace de couleur soustractive (application des encres)


Espaces de reprsentation : Plan

Du monde rel la description numrique

Reprsenter : pour quelle application ?

Difficults

Indices visuels

Reprsentation globale vs reprsentation locale


Reprsenter pour reconstruire : compression

Transforme : tape qui consiste reprsenter le signal dans un espace


o linformation pertinente se concentre sur quelques coefficients

Quantification

Codage entropique : tape qui consiste minimiser lesprance de la


longueur de reprsentation dun ensemble de valeurs support fini

Tranforme et codage entropique sont deux tapes rversibles


(respectivement en continu et en discret). Seule la quantification introduit
une perte sur le signal.
codage
entropique
transforme quantification
Systmedecompression
Reprsenter pour dcrire

Application de recherche par le contenu

focus sur les images

description des images pour les retrouver par leur contenu

Problme trs diffrent de celui de la compression

on ne cherche pas reconstruire (la plupart des informations nont pas


dutilit directe pour la recherche, alors quen reconstruction elles
contribuent au confort visuel)

on cherche extraire ce qui sera pertinent pour lapplication vise

Applications trs varies


Recherche dimages similaires
?
image requte
base dimages
Recherche dimages ayant les mmes proprits

Exemple : couleur similaires


Reconnaissance de visage : identification dune personne

Au sein dune base de visages

?
Reconnaissance de visage : identification dune personne

ou partir dimages ou de vidos


Reconnaissance dun lieu
Vido interactive

Vido cliquable

Structuration de la vido

dcoupage en plan (au sens cinmatographique)

extraction dobjets, par le mouvement ou des algorithmes de dtection

appariement des objets (permet de crer des liens)

Annotation avec des informations supplmentaires


plan
} } } } }
}
}
}
~
~
~
~
~
~
~
~
~
~
Problmes rencontrs

Pour limage, par ordre de difficult croissante

Contenu reconnatre

une mme image que limage requte

une image contenant un objet donn

une instance dune classe dobjet

Tche effectuer

reconnaissance (image similaire, limage contient lobjet ou classe


dobjet)

dtection (sous-partie de limage similaire, bounding box de lobjet)

segmentation (dtection des bords de lobjet)


Espaces de reprsentation : Plan

Du monde rel la description numrique

Reprsenter : pour quelle application ?

Difficults

Indices visuels

Reprsentation globale vs reprsentation locale


Premier aperu : segmentation
Ce qu'on aimerait
Premier aperu : segmentation
Ce qu'on a
Exemple du Oxford Building Dataset
Requtes (objets)
Exemples dimages retourner
http://www.robots.ox.ac.uk/~vgg/data/oxbuildings/index.html
Difficults

Transformations image (rotation, chelle)

rotation image
Difficults

Transformations image (rotation, chelle)

changement dchelle
Difficults

Transformations image (rotation, chelle)

Changement de luminosit

Difficults

Transformations image (rotation, chelle)

Changement de luminosit

Visibilit partielle / occultation

Difficults

Transformations image (rotation, chelle)

Changement de luminosit

Visibilit partielle / occultation

Clutter (objets supplmentaires)

Difficults

Transformations image (rotation, chelle)

Changement de luminosit

Visibilit partielle / occultation

Clutter (objets supplmentaires)

Objets 3D

Difficults

Transformations image (rotation, chelle)

Changement de luminosit

Visibilit partielle / occultation

Clutter (objets supplmentaires)

Objets 3D

Nombre important dimages dans la base

Ncessit dapprendre les variations dapparence un modle visuel


Espaces de reprsentation : Plan

Du monde rel la description numrique

Reprsenter : pour quelle application ?

Difficults

Indices visuels

Reprsentation globale vs reprsentation locale


Indices visuels

Ici, focus sur limage, mais sapplique la vido

Indice visuels : caractristiques de limage, au sens de notre perception


dhumain, que lon cherche utiliser pour la tche considre

Principaux indices visuels

couleur

forme

texture

rgions

mouvement (pour la vido)


Indice visuel : couleur (dbut)

Significatif pour la catgorisation (= trouver la classe dobjet) ou le tracking


(suivre des objets)

Indice visuel ayant reu beaucoup dattention

de nombreux descripteurs (globaux ou locaux)

En indexation : utilis depuis longtemps pour faire de la recherche dimage


par similarit (description le plus souvent indpendante de la position et de
lorientation des objets dans limage)

Robocup 2006...
Indice visuel : couleur (suite)

Problmes

choix de la reprsentation de la couleur

distance entre couleurs

Invariance ?

Indice visuel insuffisant si utilis seul, car peu discriminant :

pomme rouge vs Ferrari

Remarque : une image en niveaux de gris ou mme noir et blanc suffit un


humain pour effectuer la tche demande !

Plus tard dans ce cours : exemple de description (globale) utilisant la


couleur
Indice visuel : couleur (fin)
http://labs.ideeinc.com/multicolour/
Indice visuel : forme (dbut)

Nombreux algorithmes dextraction de formes

Bestiaire (non exhaustif) :

extraction des contours

chane de points de contours ou approximation polygonale

mise en correspondance de graphes

distance de Hausdorff

indice visuel diffrente des rgions (1D vs. 2D)


Indice visuel : forme (fin)

Difficults

ltape dextraction des contours est souvent instable

sparer la forme du fond est difficile (problme de segmentation)

En gnral, ces algorithmes mnent une description qui nest pas


invariante des gros changement dchelle, ni aux rotations (car invariance
en rotation introduit alors forte perte de discriminance pour cet indice visuel)
V. Ferrari, L. Fvrier, F. Jurie, C. Schmid, Groups of Adjacent Contour Segments for Object
Detection, PAMI 2008
Indice visuel : texture

Variations rptitives de lintensit

Elles rsultent de proprits physiques des surfaces 3D (herbe, nuages), ou


de proprits photomtriques de surface (zbre, tissu fleurs)

De nombreuses parties des images/vidos peuvent tre caractrises par


des textures

Lhumain reconnat facilement les textures, mais difficile dfinir (et donc
reprsenter): transition micro/macro, textures irrgulires

Deux types de mthodes

statistiques : distribution spatiales des intensits de limage


co-occurrences, auto-corrlation

gomtriques : segmentation de motifs qui se rptent


Rgions textures
Indice visuel : rgions

Prend en compte la rpartition spatiale de zones homognes


+ attributs intrinsques aux rgions (taille, couleur, etc)

Relations spatiales entre ces rgions (ciel en haut/mer en bas)

Sensible au bruit et aux occultations


Comparaisons des indices visuels

Pour une utilisation brute des diffrents indices visuels

Notion de descripteur associ un indice visuel


Indice visuel Descripteur
Utilis
Avantages Limitations
Couleur
Histogramme, moments Extraction trs facile, proprits
globales de limages
Pas dinformation spatiale,
peu de lien avec la
smantique
Forme
Polygones, approximations,
invariants moments
Haut niveau dabstraction,
permet la recherche dobjets
Cot de calcul lev, dpend
dune segmentation de bas
niveau
Texture
Matrices de co-occurences,
filtre de Gabor, Fourier
Information globales et locales Cot de calcul lev, difficile
dfinir
Rgion
Surface, position, moments,
histogramme de couleurs
Intgre les relations spatiales
(ciel en haut de limage)
Instabilit
Espaces de reprsentation : Plan

Du monde rel la description numrique

Reprsenter : pour quelle application ?

Difficults

Indices visuels

Reprsentation globale vs reprsentation locale


Description globale

Une description globale est une reprsentation de limage dans son


ensemble, sous la forme dun vecteur de taille fixe

Elle se contente le plus souvent dexploiter un indice visuel unique

Caractristiques

un type de vecteur de description par objet

mesure de (dis-)similarit dfinie sur lespace de ces descripteurs


Exemple de description globale : histogramme de couleur

Swain, 1991

Chaque pixel est dcrit par un vecteur de couleur

par exemple un vecteur RGB R


3
, mais le plus souvent on utilise un
autre espace de couleur plus appropri

Lensemble des vecteurs de couleurs forme une distribution

description de la distribution avec un histogramme

Ncessite discrtisation de lespace + normalisation

Comparaison de deux histogrammes par une mesure de dissimilarit, par


exemple la distance du Chi-2 ou earth mover's distance
d ( x , y )=

i , x
i
0y
i
0
( x
i
y
i
)
2
x
i
+y
i
Exemple de description globale : contours

Exemple de descripteur de texture

Descripteur = histogramme dorientation des contours


Description locale

Une description locale est une reprsentation de lentit dcrire par un


ensemble de descripteurs (vecteurs)

Vecteurs calculs localement pour diffrentes parties de lentit


ex: plusieurs sous-parties dune image

Ainsi, plusieurs descripteurs par entit

Mesure de similarit ncessite la mise en correspondance (appariement)


des descripteurs

tude dtaille de ce type de description dans la suite de ce cours


Reprsentation globale ou locale ?

Avantages de la reprsention globale

certains invariances sont faciles obtenir

extraction pour un cot de calcul plus faible

comparaison plus simple : comparaison des entits avec un vecteur


unique, donc pas dappariemment

en description locale, chaque information individuelle nest pas trs


discriminante

Avantages de la rpresentation locale

+ de rsistance la plupart des transformations

Robuste: statistiques dpendantes de plusieurs descripteurs

description plus prcise dune image dans son ensemble (souvent la


description est aussi volumineuse que limage dorigine)
Bases de donnes multimdia
V Description locale des images
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Schma type dun systme de description locale
Extraction de points
ou rgions dintrt :
Dtecteur
Ensemble de
points/rgions dintrt
Image requte

Ensemble de descripteurs
locaux de limage
Calcul de signatures
locales : Descripteur
Bases de donnes
de signatures
locales
Requte avec les signatures
De limage dans la base de
signatures : Appariemment
Fusion
Score pour un sous-ensemble
des images de la base
Description locale : plan

Extraction de points/rgions dintrt

Descripteurs locaux

Appariement de points
Extraction de rgions dintrt : enjeux

Extraire des rgions qui soient invariants de nombreuses transformations

Transformations gomtriques

translation

rotation

similitude (rotation + changement dchelle isotrope)

affine (en 3d, textures localement planaires)

Transformations photomtriques

Changement dintensit affine (I a I + b)


Base dvaluation des points/rgions dintrt

Affine covariant region dataset :

8 ensembles de 6 images

transformation 2D fournie
(vrit terrain)

Bikes et Trees : flou

Graffiti et Wall : changement de point de vue

Bark et Boat : zoom + rotation

Leuven : changement de luminosit

UBC : compression JPEG


Principaux extracteurs de points/rgions dintrt

Harris

Harris-Affine

Hessian-Affine

Edge-Based Region Detector (EBR)

Intensity Extrema-Based Regions Detector (IBR)

Maximally Stable Extremal Regions (MSER)

Salient Region Detector


Dtecteur de Harris : Introduction

Dtecter les coins = des structures

rptables de limage

et localisent des endroits trs discriminatifs dune image

Harris

analyse locale

lorsquon est sur un coin , un dplacement dans nimporte quelle


direction produit un fort changement des niveaux de gris
A Combined Corner and Edge Detector , C. Harris et M. Stephens, 1988
Dtecteur de Harris

Explication dtaille au tableau.


Harris : extraction du patch et calcul des gradients
Harris : 2
e
tape
Harris : classification des types de rgions
Harris : classification des rgions : utilisation du seuil
Harris : exemple
Harris : Invariance

Invariance la translation et aux changements affines dintensit : inhrente


la slection des maxima locaux

Invariance la rotation

lellipse tourne

mais la forme reste identique

les valeurs propres restent identiques

Mais pas dinvariance des changements dchelle

exemple simple au tableau


Harris : Non invariance lchelle

Taux de rptabilit : dfinition venir


Dtecteurs hessien & laplacien

Analogue au dtecteur de Harris

Les valeurs propres de la matrice des drives secondes (hessienne)


caractrisent la forme locale du voisinage dun point.

Max sur le dterminant

Forte rponse sur les blobs et les crtes

Diffrence dtecteur de coins/blobs

Blob classique : DoG


H=
|
I
xx
I
xy
I
xy
I
xx

Invariance lchelle (dbut)

tape suivante pour obtenir un extracteur invariant aux transformations


affines

avec linvariance lchelle, Harris devient invariant une similitude

Echelle de calcul de Harris/hessien/laplacien/DoG

Dtermine par la taille des filtres de drivation : des filtres gaussiens

Ragit une certaine taille de dtails / une certaine plage de frquences


spatiales
Invariance lchelle (suite)

Noyau (kernel) : Laplacien ou DoG

Slection d'une chelle caractristique :

prendre les valeurs extrmes dune fonction f lie lchelle

Une bonne fonction f prsente des pics marqus


Laplacien
invariance de lchelle caractristique
Invariance lchelle (suite)

Dtecteur de Harris-Laplace

Slectionner le maximum de Harris en espace pour plusieurs chelles

slection des points leur chelle caractristiques avec le Laplacien

Dans SIFT: recherche des maxima de DoG et position et en chelle


Invariance lchelle (fin)

Implmentation d'un filtre gaussien

Valeurs coupes w proportionnel , sparable

Complexit en O(w
2
)

Multi-chelle en pratique:

pyramide d'images

Gaussiennes de taille constante



Invariance affine (dbut)

Transformations affines

Approximation locale d'homographie

Sauf discontinuit

Pour obtenir linvariance affine sur un dtecteur de blobs (EBR)

partir dun maximum local en espace et en chelle

exploration radiale dans toutes les directions

calcul des valeurs extrmes de la fonction dchelle sur chaque direction

On obtient lchelle approximative sur chaque axe

Lensemble de ces chelles radiales induit une forme


Invariance affine (suite)

Approximation des rgions par des ellipses

calcul des moments gomtriques centrs

lellipse a les mmes moments dordre 2 que la rgion

La matrice de covariance de la rgion dfinit lellipse et permet de calculer


la transforme affine vers une rgion normalise (voir au tableau)

Il faut y ajouter une slection en orientation

en effet, une transformation ellipse cercle est dfinie une rotation


prs

mthode : slection de la direction principale du gradient


?
Harris-Affine et Hessian Affine (dbut)

Dtecteur de rgion de ltat de lart


K. Mikolajczyk, C. Schmid An affine invariant interest point detector, ECCV 2002

Algorithme : estimation itrative des paramtres

localisation : Harris

chelle : slection automatique avec le Laplacien

voisinage affine : normalisation avec la matrice des second moments


jusqu convergence

Initialisation partir de points dintrts multi-chelle


Harris-Affine et Hessian Affine (suite)

Estimation itrative de la localisation, de lchelle, du voisinage


Points initiaux
Harris-Affine et Hessian Affine (suite)

Estimation itrative de la localisation, de lchelle, du voisinage


Iteration #1
Harris-Affine et Hessian Affine (suite)

Estimation itrative de la localisation, de lchelle, du voisinage


Iteration #2
Harris-Affine et Hessian Affine (suite)

Estimation itrative de la localisation, de lchelle, du voisinage


Iteration #3, #4, ...
Harris-Affine et Hessian Affine : pour rsumer

Initialisation avec des points dintrt multi-chelle

Estimation itrative de la localisation, de lchelle, du voisinage


MSER

Principe (voir squence de seuils)

trier les pixels par intensit

tous les seuils dintensit possibles sont tests

localisation des rgions qui sont stables par changement du seuil

Pourquoi a marche (bien)

la binarisation locale est stable sur une large plage de seuils


Robust wide-baseline stereo from maximally stable extremal regions, J. Matas,, O. Chum, M. Urbana
and T. Pajdlaa, Image and Vision Computing 22(10), 2004
Comment valuer un extracteur ?

valuation quantitative des dtecteurs de rgions dintrt

les points / regions doivent tre la mme position relative

Mesure de performance : le taux de rptabilit

taux de rgions qui se correspondent (vrit terrain 2D)

Deux points se correspondent si

lerreur de localisation est infrieure 1.5 pixel

lerreur dintersection est infrieure 20%


A Comparison of Affine Region Detectors, Mikolajczyk et al., IJCV 2005
homographie
Harris vs Harris invariant lchelle
Comparaison des dtecteurs
rptabilit changement dchelle
Comparaison des dtecteurs
0
40
60
70
reptabilit transformation perspective
Description locale : plan

Extraction de points/rgions dintrt

Descripteurs locaux

Appariement de points
Et une fois quon a dfini lellipse ?

Synthse du patch (imagette)

On calcule un patch de taille donne

Problme daliasing (apparition de haute frquence) : application dun


filtrage (filtrage convolutif, par exemple gaussien)

En pratique: sur la pyramide d'images

Tailles typiques de patch : 32x32, 64x64


Objectif (dbut)
comparaison
Objectif (fin)

En utilisant un dtecteur, on est capable de dtecter des zones robustes (et


informatives) de limage

Mais ce stade, ces zones ne peuvent pas tre compares entre elles

Quest quun descripteur ?

une reprsentation de la zone dintrt

sous la forme dun vecteur

qui appartient un espace muni dune distance

Quest quun bon descripteur ?

invariant

discriminant

compact

Remarque : ces objectifs sont contradictoires


invariance
compacit
capacit de
discrimination
Descripteurs

Descripteurs basiques

Descripteurs invariants la luminosit/rotation : invariants diffrentiels

Descripteurs base de moments couleurs affine-invariants

tat de lart : le descripteur SIFT

Descripteur CS-LBP

Descripteurs de rgions textures


Descripteur pixel

On range les pixels au voisinage du point dans un vecteur

Calcul simple

Volumineux (patch de 32x32 = vecteur de 1024 lments)

Invariance possible aux transfo affines de luminosit

Utilis comme baseline en classification


( )
descripteur local
Invariants diffrentiels (dbut)

Descripteurs de points (on ne part pas dun patch)

Bass sur des drives calcules en un point (x,y). Ide :

Normalisation pour tre invariant aux changements affines de luminosit


v ( x , y)=
|
I ( x , y )
I
x
( x , y)
I
y
( x , y)
I
xx
( x , y)
I
xy
( x , y)
I
yy
( x , y)


Invariants diffrentiels : interprtation

Approximation locale dune fonction par la srie de Taylor


lien avec le dtecteur Hessien

Le descripteur : les coefficients de cette srie tronque dcrivent le


voisinage dun point
( )
descripteur local
Invariants diffrentiels (suite)

Calcul stable des drives par convolution avec drives gaussiennes


o correspond un choix dchelle

fix si normalisation en chelle effectu avant, (invariants diffrentiels


dvelopps plus tt que la normalisation en chelle)

En pratique: pyramide dimages (convolution en O(


2
))
v ( x , y)=
|
I ( x , y )G(c)
I ( x , y)G
x
(c)
I ( x , y)G
y
(c)
I ( x , y)G
xx
(c)
I ( x , y)G
xy
(c)
I ( x , y)G
yy
(c)


Invariants diffrentiels : invariance la rotation

[Koen 87]

Invariant la rotation (redondant avec normalisation en orientation)


Invariance un changement
de luminosit affine :
Trace de la
matrice de Harris
Trace de la
matrice hessienne
|
I
x
I
x
+I
y
I
y
I
xx
I
x
I
x
+2 I
xy
I
x
I
y
+I
yy
I
x
I
x
I
xx
I
yy
I
xx
I
xx
+2 I
xy
I
xy
+I
yy
I
yy


|
I
xx
I
x
I
x
+2I
xy
I
x
I
y
+I
yy
I
x
I
x
( I
x
I
x
+I
y
I
y
)
3/ 2
I
xx
I
yy
( I
x
I
x
+I
y
I
y
)
1/ 2
I
xx
I
xx
+2 I
xy
I
xy
+I
yy
I
yy
I
x
I
x
+I
y
I
y


Invariants diffrentiels (fin)
Remarque: changement dchelle I
2
(x)= I
1
(s x) drives lies par

Aujourdhui, ces descripteurs sont encore utiliss (mais donnent en gnral


de moins bons rsultats que SIFT)

Taille typique du descripteur : 24


I
1
( x)G
i
1
i
n
(c)=s
n
I
2
( s x)G
i
1
i
n
(s c)
20 40 60 80 100 120 140 160
20
40
60
80
100
120
140
160
Autres descripteurs invariants la rotation

Calcul des moments en coordonnes polaires (0<k<1, l entier)

Une rotation correspond une transformation


Cette transformation influence la phase des m
k,l
, pas sur leur amplitude
Choix naturel pour la description invariante la rotation : les modules | m
k,l
|

La mise en correspondance des descripteurs seffectue en comparant ces


vecteurs de description

Remarque : approche a priori redondante avec la normalisation en


orientation (mais celle-ci peut tre imparfaite)
[Ref] J. Matas et al. Rotational Invariants for Wide-baseline Stereo. Research report of
CMP, 2003
20 40 60 80 100 120 140 160
20
40
60
80
100
120
140
160
m
kl
=

r
k
e
i 0 l
I ( r , 0)dr d 0
m
kl
-m
kl
e
i l o
Descripteurs moments couleurs invariants affines

Moments couleurs affine-invariants

Diffrentes combinaisons de ces moments sont invariantes des


transformations affines

Egalement invariantes des transformes photomtriques I a I + b


[Ref] F.Mindru et.al. Recognizing Color Patterns Irrespective of Viewpoint and
Illumination. CVPR99
m
pq
abc
=

region
x
p
y
q
R
a
( x , y)G
b
( x , y) B
c
( x , y) dx dy
SIFT (Scale invariant feature transform) [Lowe 04]

Calcul sur un patch dj normalis : chelle (ou affine) + en orientation

description dtaille au tableau

Cas particulier de Histogram of Oriented Gradients (HOG)


CS-LBP (Center-symmetric local binary pattern)

Description au tableau
Comparaison de descripteurs

On se donne des paires dimages pour lesquelles on connat les points qui
doivent tre apparis

Ex: base de Krystian Mikolajczyk

On fixe une distance et un seuil pour lequel on considre que deux


descripteurs p (dans I
1
) et q (dans I
2
) matchent :
dist (p,q) <

En faisant varier le seuil , on obtient une courbe precision/rappel qui


caractrise la qualit du descripteur
Rsultats de comparaison
A performance evaluation of local descriptors Krystian Mikolajczyk, Cordelia Schmid, PAMI,
Volume 27, Number 10 - 2005
Descripteurs : conclusion

Invariances : force des mthodes gnriques

normalisation affine de la rgion vers un patch de taille constante en


utilisant un detecteur affine invariant

normalisation affine en luminosit avant le calcul du descripteur pour


garantir linvariance affine

Utilisation dun descripteur de relativement grande dimension (128 pour


SIFT) pour obtenir une bonne capacit de discrimination
Description locale : plan

Extraction de points/rgions dintrt

Descripteurs locaux

Appariement de points
Appariemment de points

Problme : tant donn des points ou rgions dintrt et les descripteurs


associs, comment apparier de manire robuste les points de deux
images ?

Dans ce sous-chapitre : slection des meilleurs couples de points


Comparer directement deux rgions normalises

partir des dtecteurs uniquement : plusieurs distances

SSD (sum of square differences)

NSSD (normalized SSD)

ZNCC (zero-normalized cross-correlation)

Rle concurrent avec les descripteurs, pour lesquels la mesure de proximit


entre rgions donne une ressemblance entre celles-ci. On conserve le
couple si cette mesure de dissimilarit est infrieure un seuil :
d(p
1i
,p
2j
) < , avec p
1i
dans I
1
et p
2j
dans I
2

est fix partir de la courbe prcision/rappel du descripteur

Comparaison entre descripteurs est + rapide (vecteur plus court)


Slection des meilleurs couples
Hypothse : pour tout couple de points (p
1i
, p
2j
),

(p
1i
dans I
1
et p
2j
dans I
2
),
on a une mesure de similarit s
ij
entre rgions

Remarque: ambiguit

Diffrentes stratgies:

Winner-takes-all (symtrique ou sens unique)

Filtrage ultrieur par gomtrie


0.9
0.8
0.7
Vrification gomtrique par mise en correspondance dimages

Contraintes de voisinages

RANSAC

LO-RANSAC

Transforme de Hough
Problme : appariemments entre deux images
Vrification des contraintes de voisinage

ce stade, on na pas utilis dinformation gomtrique


seules les informations sur le point ont t utilises

Vrification des contraintes de voisinages

Motivation :

il y a beaucoup dappariemments dans un voisinage

Si les appariements du voisinage se trouvent la mme position


relative, il est probable que lappariemment considr soit correct

Ide

utilisation dun voisinage circulaire


calcul dun score entre voisinages (fonction des affinits s
ij
entre les
points des voisinages de p
1i
et p
2j
),
s ' ( p
1i
, p
2j
)=s
ij

n
1k
N ( p
1i
)
max
n
2l
N ( p
2j
)
s
kl
ddist (n
1k
p
1i
, n
2l
p
2j
)
Contraintes gomtriques : un peu plus loin

Pour cela : estimation robuste de la gomtrie pipolaire


prise en compte des contraintes gomtriques de 2 prises de vue

Rappel : coordonnes homognes

P=(x,y,z,w)

(x,y,z,w) et (x,y,z,w) reprsentent le mme point


ssi il existe tel que x=x, y=y, z=z et w=w
la correspondance point coordonnes nest pas bijective

Intrt : criture uniforme des transformations affines et de projection

Dans le cas de 2D, on se contente de P=(x,y,w)


Rappel : exploitation de la gomtrie pipolaire
Hypothse : I
1
et I
2
sont deux projections de la mme scne 3D
Deux points P
1
et P
2
des images I
1
et I
2
, sont en coordonnes homognes

Schma au tableau

DEFINITION : pipoles

DEFINITION : droites pipolaires

DEFINITION : matrice fondamentale

Dans le cas de scnes planaires, on simplifie le problme

Mise en correspondance directe par homographie


Estimation de paramtres: RANSAC

But : estimation robuste de la gomtrie pipolaire

Algorithme au tableau

Appariemment guid : utilisation de la matrice fondamentale pour


dterminer des appariements supplmentaires
99 inliers 89 outliers
Estimation de paramtres : LMS

LMS (Least Median of squares)

similaire RANSAC

Algorithme : rpter N fois

choix alatoire de 8 points concordant dans les deux images

calcul de la transformation

calcul de la mdiane des distances entre points observs et calculs

On retient alors F avec la plus petite mdiane

Avantage : pas besoin dun seuil (contrairement RANSAC)

Dsavantage : ne marche pas avec plus de 50% doutliers (pourquoi ?)


Sous-classes de transformations

Pour diminuer lincertitude et/ou en en fonction du problme, on rduit le


nombre de degr de liberts des transformations possibles

Ex: copyright

Le plus souvent, on se contente de transformes planaires

Exemple dutilisation dans un systme de recherche de scnes :


[6] Philbin, J. , Chum, O. , Isard, M. , Sivic, J. and Zisserman, A.
Object retrieval with large vocabularies and fast spatial matching
http://www.robots.ox.ac.uk/~vgg/publications/papers/philbin07.pdf
diffrentes classes de transformations, suppression de linvariance la rotation
Hirarchie des transformations planaires (2D 2D)
nombre de degr
de libert
invariants forme
translation 2 tout, sauf les positions
absolues
transforme
rigide
3 longueur, angle,
surface, courbure
similitude 4 angle, rapport
de longueur
transformation
affine
6 paralllisme, rapport de
surface, rapport de
longueur sur une droite,
coordonnes
barycentriques
Homographie 8 Birapport
|
X '
Y '

=
|
a b
c d

|
X
Y

+
|
t
X
t
Y

|
X '
Y '

=s
|
cos(0 ) sin(0 )
sin(0) cos (0)
|
X
Y

+
|
t
X
t
Y

|
X '
Y '

=
|
cos (0 ) sin(0 )
sin (0) cos (0)

|
X
Y

+
|
t
X
t
Y

|
X '
Y '

=
|
X
Y

+
|
t
X
t
Y

|
X '
Y '

=
1
h
31
X +h
32
Y +h
33
(
|
h
11
h
12
h
21
h
22

|
X
Y

+
|
h
13
h
23
)
LO-RANSAC

RANSAC (comme son nom ne lindique pas)

Ide: utiliser tous les couples de point qui matchent

estimation de la transformation partir des caractristiques des rgions


autour du point (position, orientation, forme de la rgion)

calculer le nombre de points qui satisfont cette transformation

Avantages

tous les appariemments possibles sont tests (+ grande robustesse)

efficace

Inconvnient

le nombre de degrs de libert possible pour la transforme est limit


par le nombre de paramtres fournis pour le point
O.Chum, J. Matas, S. Obdrzalek, Enhancing Ransac by generalized model optimization,
ACCV 2004
Transforme de Hough

Utilis initialement pour dtecter des segments/droites partir de points


dans les images

Chercher les droites possibles dans un espace de paramtre, (espace


de Hough)

Principe :

discrtiser lespace de paramtres en bins

Pour chaque observation, incrmenter le(s) bin(s) consistants avec


lobservation

Rsultat = le bin de le plus peupl

affinage possible avec Mean-shift

Difficult: dpendance la paramtrisation et la quantification

Dans le cas de la vrification gomtrique, le nombre de degr de libert


possibles doit tre petit (Pourquoi?)
Vrification gomtrique faible (WGC)

Version trs simplifie dun modle gomtrique applique au niveau point

Utilise les infos de normalisation en rotation/chelle

Rapide: appliqu sur les points indpendamment


WGC: en chelle
Description locale des images : rsum et commentaires
Extraction de points
ou rgions dintrt :
Dtecteur
Ensemble de
points/rgions dintrt
Image requte

Ensemble de descripteurs
locaux de limage
Calcul de signatures
locales : Descripteur
Bases de donnes
de signatures
locales
Requte avec les signatures
De limage dans la base de
signatures : Appariement
Fusion
Score pour un sous-ensemble
des images de la base
Description locale des images : rsum et commentaires

tapes

recherche de points/rgions dintrt

calcul des descripteurs pour chacune de ces rgions

vrification de la cohrence gomtrique

algorithme de vote

Commentaires:

problme en suspens : il faut apparier les descripteurs dune image avec


tous les descripteurs dune base dimage
cest trs lent !

la vrification de la cohrence gomtrique est relativement lente


on ne peut lutiliser que pour un sous-ensemble dimages a priori plus
pertinentes
Bases de donnes multimdia
VI Indexation rapide
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Indexation

Problme : rechercher efficacement des vecteurs de caractristique


(=descripteurs) proches au sein dune base de descripteurs
on voudrait viter de faire une comparaison exhaustive

Oprations supportes : recherche (critique), ajout/suppression (+ ou


critique) selon lapplication

Deux types de recherche

Recherche

Recherche des k plus proches voisins


objets complexes

vecteurs de caractristiques
de haute dimension
extraction de
descripteurs
ajout ou
requte
structure
dindexation
Plan

Prliminaires

Indexation mono-dimensionnelle

Indexation multi-dimensionnelle

Perspectives
Notations
base de n vecteurs : Y= { y
i

d
}
i=1..n

vecteur requte : q in
d
on note N(q) Y les voisins de q
les vecteurs similaires

Le voisinage est relatif une distance (ou une similarit/dissimilarit)


on se concentre sur la distance Euclidienne
d(x,y) = ||x-y||
2
Quest ce quun voisin ?

un vecteur qui rpond une proprit de proximit absolue ou relative


recherche recherche des k plus proches voisins
N

(q) = { y
i
Y : d(y
i
,q) < } N
k
(q) = k-arg-min
i
d(y
i
,q)
k=2
Remarque : le voisinage au sens des k-ppv nest pas symtrique
X= { x
i

d
}
i=1..n
on peut avoir x
j
N
k
(x
i
) et x
j
N
k
(x
i
)

Ex: une spirale chantillonne


x
i
x
j
Algorithme naif : complexit
Si la base Y nest pas organise (=indexe), calculer N
k
ou N

ncessite le
calcul de lensemble des distances d(q,y
i
)

O(nd)
Pour N
k
(q), il faut de plus trouver effectuer lopration k-arg-min
i
d(q,y
i
)

Exemple: on veut 3-argmin {1,3,9,4,6,2,10,5}

Mthode nave 1: trier ces distances O(n log n)

Mthode nave 2: maintenir un tableau des k-plus petits lments, mis


jour pour chaque nouvelle distance considre O(n k)

Intuitivement, on peut faire mieux


Max-heap

Binary max heap

structure darbre binaire quilibr

dernier niveau rempli de gauche droite

chaque noeud n on associe une valeur v(n)

proprit : si n
i
est un noeud fils de n
j
, alors v(n
i
) < v(n
j
)
Remarque : il admet une reprsentation linaire simple: n
i
a pour pre n
i/2
10
9 5
6 2 3 1
4
n
1
10
n
2
9
n
3
5
n
4
6
n
5
2
n
6
3
n
7
1
n
8
4
Max-heap : oprations lmentaires

heap_push: ajout inconditionnel dun lment dans le heap

ajouter le noeud k+1, et y placer le nouvel lment

mise jour (pour garder les proprits dordre) :

llment insr remonte : inversion avec son parent sil est plus grand

jusqu vrification de la relation dordre

complexit en O(log k) au pire, mais O(1) en pratique

heap_pop: suppression inconditionnelle de la plus grande valeur

on supprime le noeud racine et on le remplace par llment du noeud k

mise jour :

on descend llment : inversion avec le fils le plus grand

jusqu ce que la relation dordre soit vrifie


10
9 7
6 2 3 5
4
10
9
57
6 2 3 75
1
2
3
4
9
6 5
4 2 3 1
1
2
Algorithme: Max-heap pour chercher les k plus petites valeurs
Pb: on cherche k-argmin
i
{a
1
,a
i
,a
n
}

Initialisation du heap larbre vide

Pour i=1..n,

si larbre nest pas encore de taille k heap_push


si larbre est dj de taille k, on compare a
i
v(n
1
)
si a
i
v(n
1
) on passe llement suivant

sinon
heap_pop
heap_push

Exemple: 3-argmin {1,3,9,4,6,2,10,5}


Algorithme: Max-heap pour chercher les k plus petites valeurs

Complexit : O(n log k) au pire, bien meilleure en moyenne

un nouveau n
ime
lement doit tre plus grand que le noeud racine

probabilit de k/i de faire effectivement un push


dcroit rapidement

Peut tre utilis pour trier (algorithme heapsort).


Plan

Prliminaires

Indexation mono-dimensionnelle

Indexation multi-dimensionnelle

Perspectives
Indexation mono-dimensionnelle

Application phare : les bases de donnes (au sens classique du terme)

Diffrents types doprations de recherche

recherche dun point/vecteur : PAM (point access method)

recherche de structures spatiales plus complexes : SAM (spatial access


method)
Ex: recherche dune valeur dans un intervalle, ou du plus proche voisin
dune valeur

Les structures de rfrences :

Hashing

B+ tree

Fichier invers
Estimation de la performance

Les donnes sont supposes stockes sur des disques


(souvent pas le cas pour les algorithmes en vision)

Unit minimum pouvant tre transfre :

une page = b bytes,

qui correspond B enregistrements de donnes.

N enregistrements accds O(N/B) pages accder

La complexit, en base de donnes, est donne en nombre de pages

lments non pris en compte

Impact du cache

Proximit des donnes sur le disque (temps du fseek)


CPU mmoire
disque
Hashing (1)

Principe:

dfinir une fonction x k(x), appele cl de hachage

on ne se compare quaux lments ayant la mme cl

Une bonne cl de hachage rpartit uniformment les donnes sur les


diffrents pages (sinon, accumulation des donnes au mme endroit)

Utilis pour rechercher des valeurs identiques la requte


q
k
pages
k ( x)=((

i
r
i
x
i
) mod P) mod m
Hashing (2)

Excellent pour un accs de type point (PAM)


SELECT name FROM PERSON WHERE name = herve

Peu adapt aux requtes comparatives (type intervalle, donc SAM) du type
SELECT taille FROM PERSON WHERE taille > 1.70 and taille < 1.90
dans ce cas, complexit en O(n)

Typiquement, 1-2 I/O par requte pour les requtes PAM


B+ tree (dbut)

Driv du B-tree (diffrence souligne plus tard)

Utilisation dun ordre sur les lments

Pour requtes exactes ou requte sur des plages

Permet doptimiser les requtes du type


SELECT taille FROM PERSON WHERE taille > 1.70 and taille < 1.90

Mais permet galement un accs direct


SELECT name FROM PERSON WHERE name = herve

Dans ce cas, plus lent que le hashing


B+ tree : structure

Structure arborescente avec deux types de noeuds

Noeuds index (noeuds internes larbre)

contiennent des pointeurs vers dautres noeuds ou des feuilles

ces noeuds ordonnent les sous-noeuds par des valeurs de sparation

Les entres (valeurs de sparation) ne sont pas ncessairement remplies

Paramtres :

B : maximum dentres dans un noeud


B
m
: minimum
Usuellement B = 2 B
m
1
1
5
1
5
3
1
7
5
y
i
<115 115<y
i
<153 153<y
i
<175 y
i
>175
B+ tree : feuille

Feuilles : contiennent les valeurs (et non les valeurs de sparation)

La recherche dans un B+tree se fait par une descente dans larbre

en temps logarithmique
vers feuille
suivante
30 35
NULL: pas
encore rempli
hirarchie
de nuds
internes
chainage vers intervalle
suivant y
i
>52
optimisation de la
requte sur intervalle
25<y
i
<52

B+ tree : insertion

Trouver la feuille L descente dans larbre

Introduire la donne dans L

si L possde suffisamment de place, insertion

sinon, diviser L (en L et un nouveau noeud L2)

redistribuer les entres

insrer un index sur L2 dans le noeud parent P de L

si il y a la place, stop

Sinon, la division doit tre faite rcursivement sur les noeuds parents

les divisions de noeuds interne (sauf le noeud racine) largissent larbre

la division du noeud racine accrot sa hauteur

Remarque:

les feuilles sont toujours hauteur constante


B+ tree : exemple dinsertion

Insertion de 30

on cherche la feuille

on insre 30 (il y a de la place)

Insertion de 120

on cherche la feuille

elle est pleine

cration dune nouvelle feuille

redistribution

ajout de 120 dans le nouveau L

on lie L2 son parent

il y a de la place, arrt
9
9
28 50 115 153 175 200
2
3
30
28 30 50 115 120 175 200
1
153
9
9
1
5
3

B+ tree : suppression (par souci dexhaustivit)

Recherche de la feuille concerne

Suppression de lentre

si L demeure avec au moins d entre, aucune r-quilibrage


sinon, si L contient B
m
-1 entres, tentative de redistribution en prenant
des entres sur les noeuds adjacents.

en cas dchec (pas assez dentre sur les noeuds adjacents), fusion.

si fusion, destruction de lentre du noeud dans le parent de L

si ncessaire, propagation jusqu la racine

avec ventuellement rduction de la hauteur de larbre


B+ tree : proprits
Recherche dune valeur donne, {y
i
in Y : y
i
= a}

on cherche la feuille contenant la valeur

on se compare aux lments

Recherche sur intervalle [a,b]

recherche de L correspondant a

utilisation du chanage horizontal pour rcuprer toutes les entres


jusqu b

Complexit

insertion/suppression/recherche en temps logarithmique (amorti)


effectuer une recherche est en O (log + |N

(q)|)

Utilisation de lespace pagin :

50% au moins pour B=2B


m

67% pour des nombres alatoires (uniformes)


B-tree

Le B-tree original est presque identique

mais les noeuds internes sont aussi utiliss pour stocker des
enregistrements

pas de chanage horizontal


Fichier invers (inverted file)

Cette structure liste des lments qui ont une valeur donne pour un attribut

Bases de donnes: utilis pour les cls secondaires (doublons attendus)

Exemple courant dutilisation : requtes sur documents textuels (mails, )

La requte consiste rcuprer la liste des documents contenant le mot

cot proportionnel au nombre de documents rcuprer


mot 1
mots du dictionnaire (ou cl)
mot 2
mot i doc2 doc3 doc8 doc9
doc1 doc3 doc5
Parenthse : recherche de documents textuels (1)

Modle vectoriel

on dfinit un dictionnaire de mots de taille d


un document texte est reprsent par un vecteur f=(f
1
,,f
i
,f
d
)
d

chaque dimension i correspond un mot du dictionnaire


f
i
= frquence du mot dans le document

en pratique, on ne garde que les mots discriminants dans le dictionnaire

le, la, est, a, etc, sont supprims, car peu discriminants

Ces vecteurs sont creux

dictionnaire grand par rapport au nombre de mots utiliss


Parenthse : recherche de documents textuels (2)

Exemple

dictionnaire = {vlo, voiture, dplace, travail, cole, Rennes}

espace de reprsentation:
6

Rennes est une belle ville. Je me dplace vlo dans Rennes

f=(1/4,0,1/4,0,0,1/2)
t

Recherche de document = trouver les vecteurs les plus proches

au sens dune mesure de (dis-)similarit, en particulier le produit scalaire


1 0 0 0 5 0 0 0
0 0 1 0 0 0 2 0
0 0 0 0 0 0 1 1
y
1
y
2
y
3
2
3
y
2
1
y
1
1
y
2
5
y
1
2
y
3
1
y
3
1
0 2 0 0 3 0 0 0
q
Retour sur notre fichier invers : distances entre vecteurs creux

requte q et base Y: vecteurs creux


Fichier invers: calcul efficace du produit scalaire (en fait, toute distance L
p
)

Exemple pour le produit scalaire

Complexit : O(nC),

C : esprance du nombre de positions non nulles en commun, trs petit


(=d s
2
si uniforme et indpendant)
y
1
y
2
y
3
+15
15
0 0
Optimisation de requte

Lors de la cration dune table pour un SGDB (e.g., Oracle),

Un index doit tre cr pour tous les champs qui peuvent apparatre
dans les clauses WHERE

le type de structure dindex utilis peut (doit!) tre choisi en fonction du


type de requte effectu

Ce nest pas forcment possible dans tous les SGDB

MySQL ne supporte que les B-tree (Question : pourquoi ce choix ?)


http://dev.mysql.com/doc/refman/5.0/fr/mysql-indexes.html
Plan

Prliminaires

Indexation mono-dimensionnelle

Indexation multi-dimensionnelle

prliminaires

R-tree

KD-tree

la maldiction de la dimension

LSH (Locality-Sensitive Hashing)

Perspectives
Prliminaires

Pour d 2, on perd lordre total

compromet la recherche en temps logarithmique

Ncessit dorganiser lespace pour viter de se comparer tout les


vecteurs

Deux approches pour lorganisation des donnes

partir des donnes


(comme pour le B-tree)

pr-dfini
comme pour le hachage)
Organiser partir des donnes

Utilisation dhyper-rectangles ou dhyper-sphres enveloppants

Hyper-rectangles plus facile indexer, mais meilleure compacit des hyper-


sphres

la diagonale de lhyper-rectangle est gale 5.47 pour d=30 et un


volume de 1

le diamtre de lhyper-sphre est gale 2.86 filtrage plus efficace

Selon la mthode:

recouvrement autoris

ou non
Sur lutilisation de cellules

Bien moins de cellules que de descripteurs

trouver les cellules non vides les plus proches dun descripteur requte
est relativement efficace

donc ce pr-filtrage de la plus grande partie des donnes apporte a


priori un gros gain de performance

Peu de paramtres associer chaque cellule

hyper-rectangle englobant : deux points

sphre : centre et rayon

Quest-ce que lon exploite ?

lingalit triangulaire
Exemple dutilisation de cellules englobantes

Recherche des 4 plus proches voisins dune requte

on connat les rectangles

mais pas encore les points contenus dans ces rectangles


Exemple dutilisation de cellules englobantes
q
Dmin(q,C
1
)
Dmax(q,C
2
)

On peut rejeter C
1
sans analyser son contenu
Exemple
q
Dmin(q,C
3
)
Dmax(q,C
4
)
On ne peut rejeter C
3

On doit analyser son contenu

Il est prfrable de commencer par les cellules les plus proches

on obtient des distances des descripteurs, plus proches voisins


temporaires.

ces distances sont moins lches que celles dtermines par les bornes
des cellules.

cela permet dcarter davantage de cellules qui auraient pu tre pr-


slectionnes dans un premier temps
Premire structure de rfrence: R-Tree

Guttman, 1984, ACM SIGMOD

Extension des B/B+-Tree aux espaces multi-dimensionnels

arbre quilibr

chaque noeud reprsente un rectangle englobant les rectangles des fils

hirarchie de rectangle

Notation : REM = rectangle englobant minimum


(MBR=minimum bounding rectangle)

Arbre quilibr, rectangles englobant minima, hirarchie de rectangles

noeud interne : (rectangle englobant, ptr_child_node)*

feuille : (vector)*
R-Tree
(x1,y1;x2,y2) ; (x3,y3;x4,y4)
(x5,y5;x6,y6) ; (x7,y7;x8,y8)
; (xV,yV) ; (xJ,yJ) ; ; (xR,yR) ;
Un rectangle sur un niveau englobe les rectangles
des noeuds fils
(x
1
,y
1
)
(x
2
,y
2
)
R-Tree (suite)
(x1,y1;x2,y2) ; (x3,y3;x4,y4)
(x5,y5;x6,y6) ; (x7,y7;x8,y8)
; (xV,yV) ; (xJ,yJ) ;
La recherche procde en descendant larbre en
utilisant les coordonnes des rectangles
Mais la requte peut tomber dans plusieurs
rgions la fois (B+tree)
; (xR,yR) ;
(xq, yq)
R-Tree : insertion

Insertion dynamique de vecteurs

Les arbres sont traverss du noeud racine vers les feuilles


Pour linsertion, chaque niveau

v 1 REM aucun problme

v plusieurs REM : insertion dans le plus petit

v aucun REM : insertion le REM qui grossira le moins

Les noeuds et les feuilles ont une capacit daccueil constante

Ils doivent tre coups en cas de dpassement de capacit


Pb:
R-Tree : conclusion

La structure en arbre rend la descente thoriquement rapide (log)

mais peu efficace en grande dimension car autorisation de loverlapping :


peu de rectangles sont filtrs (parcours exhaustif de larbre)

Intressant pour les systmes


dinformation gographique
source: wikipedia
Kd-Tree

Technique (populaire) de partitionnement de lespace des vecteurs

Espace dcoup rcursivement en utilisant des hyperplans

parallles aux axes (base de reprsentation initiale du vecteur)

point de dcoupage = valeur mdiane sur laxe considr

choix du prochain axe : plus grande variance rsiduelle

mais plusieurs variantes


Kd-Tree : construction
Kd-Tree : construction
Kd-Tree : construction
Kd-Tree : construction
Kd-Tree

Cest une partition de lespace

toutes les cellules sont disjointes (pas de recouvrement)

cellules de tailles initialement quilibres (par construction)

mais se dsquilibrent si insertion de vecteurs additionnels

peu efficace en grande dimension (ne filtre que peu de cellules)


Kd-Tree : recherche du ppv

arbre de recherche

descente dans larbre (log) pour trouver la cellule ou tombe le point

on cherche le ppv dans la cellule


donne la meilleure distance r

recherche de lintersection entre lhypersphre de rayon r et lhyperplan


sparant la cellule

si non vide, analyse de lautre ct de lhyperplan

si un point plus proche est trouv, on met jour r

on analyse toutes les cellules de larbre quon lon ne peut filtrer

dans le pire des cas, parcours total de larbre


Kd-tree : variantes

Elles sont nombreuses

BSP Tree (Binary Space Partitioning)

la subdivision nest pas parallle au systme de coordonnes

Variations

o on coupe une dimension donne

quelle dimension est coupe

arbre quilibr ou non


Maldiction de la dimension!

ou flau de la dimension (The dimension curse)

Quelques proprits surprenantes

vanishing variance

phnomne de lespace vide

proximit des frontires


Vanishing variance

La distance entre paires de points tend tre identique quand d augmente

le plus proche voisin et le point le plus loign sont des distances qui
sont presque identiques

Consquence

le plus proche voisin devient trs instable

ingalit triangulaire peu efficace pour filtrer

Les jeux de donnes uniformes ne peuvent pas tre indexs efficacement

cest moins vrai pour des donnes naturelles (ouf !)


Phnomne de lespace vide

Cas dcole : partition de lespace selon le signe des composantes

d=100 1.26 10
30
cellules >> n

Trs peu de cellules sont remplies

pour une partition pourtant grossire

Ce phnomne est appel phnomne de lespace vide

difficult pour crer une partition

une bonne rpartition des points

avec une bonne compacit


Tout les vecteurs sont prs des frontires

Pour un partitionnement de lespace

les vecteurs sont trs proches des surfaces de sparation avec une trs
grande probabilit

le plus proche voisin dun point appartient une cellule diffrente avec
une grande probabilit
Tout les vecteurs sont prs des frontires
LSH (1999)

Constat dchec: pas dalgorithme de recherche de ppv efficace en grande


dimension

pour d>15, il vaut mieux faire une recherche exhaustive !

Nouvel objectif : trouver nos voisins en probabilit

que lon peut faire varier en fonction du compromis pertinence/cot


recherch

cest la recherche approximative de plus proches voisins

Cas dchec (attendu)

lorsque le plus proche voisin nest pas significativement plus proche


pas forcment grave en pratique

Explication au tableau
Euclidean Locality Sensitive Hashing (E2LSH)
1) Projection sur m directions alatoires
2) Construction de fonctions de hashage:
concatenation de k index h
i
par fonction
de hash
3) Pour chaque g
j
, calcul de deux valeurs
de hash
- fonctions de hash universelles: u
1
(.), u
2
(.)
- stockage de lidentifiant id du vecteur
dans une table de hashage
(1,0)
(2,0)
(3,0)
(0,0)
(3,1)
(2,1)
(1,1)
(0,1)
(0,-1)
(1,-1)
(2,-1)
bi
0
1
1
1
1
2
2
2
w
O
a
1
h
i
( x)=
x.a
i
b
i
w

g
j
( x)=( h
j1
, ... , h
jk
)

LSH marche correctement, mais pas trs grande chelle

ncessite beaucoup de hachages distincts de lespace

cot mmoire prohibitif en grande dimension

temps de recherche linaire avec le nombre de hachage

Utilisable jusqu (disons), 100x10


6
descripteurs (100000 images)

Le domaine de la recherche approximative est trs actif

outil de base dans de nombreux domaines/applications


Et la recherche dimages?
Rduction de la dimensionnalit

La dimension gagne toujours (Bill Triggs)

Rduisons la!

Approche la plus courante : analyse en composantes principales (ACP)

PCA en anglais : Principal Component Analysis


ACP

Analyse des relations statistiques entre les diffrentes composantes

Pour tre capable de reproduire la plus grande partie de lnergie dun


vecteur avec un nombre plus faible de dimension

limination des axes peu nergtiques


2d
1d
PCA
ACP

Il sagit dun changement de base

translation (centrage des donnes) + rotation

4 tapes (off-line)

centrage des vecteurs

calcul de la matrice de covariance

calcul des valeurs propres et vecteurs

choix des d composantes les plus nergtiques (+ grandes valeurs


propres)

Pour un vecteur, les nouvelles coordonnes sont obtenues par centrage et


multiplication du vecteur par la matrice d x d des vecteurs propres
conservs
ACP

Moins de dimensions, donc meilleur comportement des algorithmes de


recherche

Si la rduction prserve la plupart de lnergie

les distances sont prserves

donc le + proche voisin dans lespace transform est aussi le plus


proche voisin dans lespace initial

Limitations

utile seulement si la rduction est suffisamment rduite

lourdeur de mise jour de la base (choix fixe des vecteurs propres


prfrable)

peu adapt certains types de varits


Plan

Indexation mono-dimensionnelle

La maldiction de la dimension

Indexation multi-dimensionnelle

Perspectives
Bases de donnes multimdia
VII Video-Google
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Video-Google

LA rfrence :
Josef Sivic and Andrew Zisserman
Video Google: A Text Retrieval Approach to Object Matching in Videos
International Conference on Computer Vision, 2003 (ICCV2003)

Ide : calquer le fonctionnement dun moteur de recherche dimages sur


celui dun moteur de recherche de texte/page web

La plupart des systmes de recherche dimages/de vidos de ltat de lart


capable dindexer de trs gros volumes de donnes sont drivs de cette
approche

D. Nister and H. Stewenius : CVPR2006

H. Jegou, M. Douze and C. Schmid : ECCV2008


tapes

Description locale : dtecteurs + descripteurs

Filtrage spatial et temporel

Bag-of-words

Fichier invers pour la requte

Re-ranking aprs vrification de la cohrence spatiale


Video-Google : description locale

Extracteurs

MSER

Shape adapted (point dintrt + slection dchelle + forme elliptique)

Descripteurs SIFT (scale-invariant feature transform) [Lowe 04]


gradients
histogramme 3D

Imagette (patch)
y
x
Video-Google : filtrage spatial et temporel

Ide : obtenue par analogie avec Google

Google amliore le score des pages pour lesquelles les mots-cls se


retrouvent des positions proches dans le texte

Filtrage spatial

on ne garde un match que si ses voisins gomtriques matchent aussi

variante : vrification gomtrique plus forte (voir chapitre IV)


calcul de la transforme affine

Filtrage temporel (pour les vidos uniquement)

utilisation dun modle dynamique simple dune frame lautre

on ne garde une rgion de description que si elle est suffisamment


stable dune frame sur lautre
Video-Google : bag-of-words (dbut)

Lobjectif est dobtenir lquivalent des mots en requte textuelle

Pour cela, quantification vectorielle des descripteurs via un k-means

Algorithme du k-means au tableau

Exercice : montrer que cet algorithme minimise lerreur quadratique


moyenne des vecteurs d'apprentissage leur centroide
Video-Google : bag-of-words (suite)
Exercice : o sont
- MSER
- Harris
Video-Google : bag-of-words (fin)

Une fois le clustering dfini (une fois pour toutes), un document est
reprsent par un histogramme de ses mots visuels

Application dune pondration TFIDF aux composantes de cet


histogramme

objectif : donner plus dimportance aux mots visuels rares qu ceux qui
sont frquents

mme pondration que celle utilise en indexation de documents


textuels
t
i
=
n
id
n
d
log(
N
n
i
)
Nb d'occurrences de i
dans doc d
Nb de mots dans doc d
Nb de documents
dans la base
Nb d'occurrences de
i dans toute la base
Video-Google : fichier invers

Voir le cours sur cette structure dindexation

Utilis pour comparer les vecteurs de frquence

Mesure de similarit usuellement utilise : produit scalaire

Analogie avec le texte

description dun document

pondration des mots

utilisation de stoplists
Stoplists

On supprime 5% en haut, 10% en bas


Avec vocabulaire mieux quilibr

Obtenu avec plus de donnes


d'apprentissage pour k-means

Stoplist moins utile

Cas idal : rpartition uniforme.

complexit de la recherche en
fichier invers en O(d s
2
)
Variante 1 : mthode hirarchique de Nister et Stewnius

Motivation : rduire le cot dassignement des visual words

Comment : utilisation dun vocabulaire visuel hirarchique

Voir au tableau

Autre lments de la chane modifis :

modification de la mtrique de comparaison des mots visuels (L1)


Scalable Recognition with a Vocabulary Tree
David Nistr and Henrik Stewnius, CVPR 06
Variante 2 : Jgou, Douze et Schmid

Principales ides :

interprter le systme de sac-de-mots comme un systme de recherche


approximative de plus proche voisins

Augmenter la slectivit de celui-ci en rafinant la description du


descripteur

Utilisation de la Weak geometry consistency pour intgrer de


linformation spatiale

Mthode tat de lart en indexation image et vido

utilise dans la comptition de copyright vido Trecvid

voir expos spar dans le chapitre suivant sur lindexation vido


Bases de donnes multimdia
VIII indexation vido
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Plan

Spcificit du problme

Filtrage temporel

Dtecteur spatio-temporels

Aggrgation temporelle

Zoom sur deux mthodes dindexation vido

MPEG7

Quelques perspectives
Spcificit du problme (dbut)

Vido = suite dimages

Laxe temporel t est singulier

processus physique diffrent des axes x et y : mouvement de la camra


et des objets qui la composent

la nature des attaques est diffrente sur cet axe

Segmentation temporel en plans (au sens cinmatographique)

cest un problme en soi assez bien matris aujourdhui

indexation au niveau des plans plutt que des images composant la


vido

Avantage?
Spcificit du problme (fin)

Indexation de vidos = plusieurs problmes distincts


1) Requte vido (souvent un plan)

problme qui est le plus souvent considr


2) Requte image

asymtrie de la requte

plus difficile (car moins dinformation dans la requte, et pas de


description spatio-temporelle possible)

toutes les techniques ne sappliquent pas

Dans ltat de lart, deux classes dapproches

indexation des images composant la vido + intgration cohrence


temporelle

indexation spatio-temporelle (pas utilisable avec une requte image)


Plan

Spcificit du problme

Filtrage temporel

Dtecteur spatio-temporels

Aggrgation temporelle

Zoom sur deux mthodes dindexation vido

MPEG7

Quelques perspectives
Filtrage temporel

Ide [Sivic et Zisserman 2003]

indexation 2D usuelle

utilisation de la cohrence temporelle pour supprimer les descripteurs


non stables

Mthode

optionnellement, sous-chantillonnage (rgulier ou par slection


dimages cls) pour rduire le nombre dimages

gnration de descripteurs pour chacune des images

appariemment des descripteurs de limage t avec ceux des frames


voisines

calcul dun modle dynamique simple (non dtaill, plusieurs variantes


possibles) sur la position des descripteurs

suppression des descripteurs qui ne se reproduisent sur un voisinage


temporel suffisant ou dune manire non cohrente avec le modle
Dtecteur spatio-temporel

Dtecteur spatio-temporel [Laptev et Lindeberg 2003] :


Space-time Interest Points

Extension de Harris (x,y,t)


1) calcul de la matrice M dauto-corrlation 3x3 : utilisation des drives
gaussiennes avec une variance distincte pour laxe temporel
2) modification du critre de Harris :

Ce critre permet de dtecter les points qui prsentent de fortes variations


de luminosit en x, y et t (voir vido)

Comme pour les images, une slection automatique dchelle est possible
via une selection des maxima de loprateur de Laplace (tendu 3
dimensions)

Cette mthode donne le mme status laxe temporel et aux axes spatiaux
(sauf de drivation)
H=det Mk trace
3
M=\
1
\
2
\
3
k (\
1
+\
2
+\
3
)
3
Aggrgation temporelle (1)

La premire tape consiste usuellement considrer que la base de vidos


est une base dimages (= ensemble des frames extraites)

Chaque frame de la requte est soumise une base de frames qui


reprsentent lensemble des vidos indexer
produit un ensemble de couple de frames et le score associ (t
q
, b, t
b
, s)
t
q
position temporelle dans la vido requte
b numro de vido dans la base
t
b
position temporelle dans la vido de la base
s score obtenu par lalgorithme dappariemment dimage

Dans ce qui suit : mthode utilise lors de la comptition Trecvid


Aggrgation temporelle (2)
Problme : estimer une fonction entre t
q
et t
b

Modles possibles :
simple (dcalage temporel uniquement): t
q
= t
b
+ 6t
incluant des variations globale de vitesse (slow-motion): t
q
=a* t
b
+ 6t
complexe avec une table de dcalage: t
q
= t
b
+ shift [t
q
]

Mthodes destimation possibles

RANSAC

transforme de Hough

Dynamic Time Wrapping (DTW)


Aggrgation temporelle (3)

Exemple destimation (utilise pour la comptition Trecvid)

utilisation du modle simple de dcalage temporel

Estimation en utilisant la transforme de Hough (temporelle)

Bins de la transforme taille du mme ordre de grandeur que le pas


dchantillonage utilis
offre une tolrance aux changements modrs de vitesse ( 20 %)
video requte
video de la base b
6t
t
q
t
b
Aggrgation temporelle (4)

En sortie de lestimation: liste dhypothses. Chaque hypothse=

(b,6t) : video de la base et lestim du dcalage 6t


le groupe de frames apparies (t
q
, t
b
).

ce groupe doit tre compact (<1 minute), ou bien il est dcoup


segment based matching

un score aggrg calcul partir des scores des frames apparies


video requte
video de la base b
6t
t
q
t
b
Vrification spatio-temporelle (1)

Objectif : estimation dune transforme 2D entre la vido requte et la vido


de la base de donnes
extension des techniques utilises en image

Modles possibles :

Pour des camras diffrentes: gomtrie pipolaire

Pour le camcording : modle homographique

Modle affine 2D (affine complet, similitude, translation, etc)

Problmes

modles peuvent changer dans le temps (dune frame lautre)


Question : pourquoi ?

chantillonnage diffrent ct base et requte (voir exemple au Tableau)


Vrification spatio-temporelle (2)

Bon choix: modle affine 2D complet, avec paramtres fixs

Le modle est estim sur un groupe de frames apparies


cest--dire, prend en entre une hypothse gnre en sortie de
laggrgation

Avantage dun modle de paramtres suppos fixe

tous points de tous les couples dimages apparies sont utiliss


beaucoup plus de points pour lestimation que dans le cas image

Modle imparfait, mais pour lequel on peut obtenir une bonne estimation
Vrification spatio-temporelle (3)

Sortie pour chaque hypothse (si la vrifiation spatio-temporelle russit) :

un ensemble de paires de frames apparies et le score associ

la matrice de la transforme affine 2D


Video requte (camcording) Video de la base
t
q

=
1
9
2
0
t
q

=
2
1
2
0
t
b

=
3
1
5
2
3
t
b

=
3
1
8
3
3
Dynamic Time Wrapping (DTW)

Algorithme de calcul de distance entre deux squences

similaire la distance ddition

utilise pour comparer les squences sonores

Algorithme au tableau

Ncessit de normaliser les scores (typiquement, par la longueur de la


squence)

Question : quelle est la complexit de cet algorithme ?

Optimisation : techniques de pruning


Mthode utilise pour la comptition Trecvid : vision densemble
Exemple de requtes
Exemples de requtes
Indexation de gros volumes

Hypothses :

attaques faibles (pas/peu de dformation gomtrique)

volume lev (1000s dheures)

Mthode

slection dimages cls

calcul dune signature binaire de petite taille (DCT, 64 bits)

utilisation dune structure de hachage pour la requte : accs en O(1)

Xavier Naturel, Patrick Gros. A Fast Shot Matching Strategy for detecting
duplicate sequences in a television stream. CVDB'05.
Plan

Spcificit du problme

Filtrage temporel

Dtecteur spatio-temporels

Aggrgation temporelle

Zoom sur deux mthodes dindexation vido

MPEG7

Quelques perspectives
MPEG7

Standard pour la description du contenu multimdia, en XML

cadre de description des donnes audio-visuelles

ensemble de mthodes pour les diffrentes phases de la description des


documents multimdias

dfinit des descripteurs pour les diffrents indices visuels prsents dans
une vido

Norme : assurer linteroprabilit des systmes de gnration, gestion,


distribution des descriptions des contenus audio-visuels

lments dintrt pour lindexation par le contenu :

descripteurs dimage globaux (couleur, texture, forme) + fonctions de


comparaison associes

une mesure de pertinence (average normalized modified retrieved rank)


dune recherche
Plan

Spcificit du problme

Filtrage temporel

Dtecteur spatio-temporels

Aggrgation temporelle

Zoom sur une mthode dindexation ultra-rapide

MPEG7

Quelques perspectives
Problmes dintrt et perspectives

Descripteurs spatio-temporels : en mergence

drivs des invariants diffrentiels (Joly et al.)

Harris 3D (Laptev et al.)

en compression : mouvement = 30% du train binaire


info sous-utilise en indexation

En conclusion

domaine de recherche trs actif car rcent


les capacits de calcul des ordinateurs permettent depuis trs peu de
temps de traiter des grands volumes de donnes

Comptitions pour comparer les mthodes : Trecvid, VideOlympics


Bases de donnes multimdia
IX complments de cours
ENSIMAG
2009
Herv Jgou & Matthijs Douze
Plan

Expansion de requtes

Classification

Retour de pertinence

Data-Mining and Latent Semantic Indexing


Principe

Utile pour une requte populaire

c-a-d, beaucoup doccurrences de la scne dans la base dimages

permet de renvoyer toute les occurrences (augmentation du rappel)

Exemple:

trouver tous les points de vue


12 rsultats 41 rsultats
44 rsultats
Algorithmes: expansion transitive (TCE)
queue = [requte]
rsultats = vide
tant que queue non vide
requte2 = queue.pop()
rsultats2 = recherche(requte2)
pour image dans rsultats2
ajouter image rsultats
si image trs fiable, queue.push(image)
retourner rsultats
Total Recall: Automatic Query Expansion with a Generative Feature Model for Object Retrieval
O. Chum, J. Philbin, J. Sivic, M. Isard, A. Zisserman, ICCV 07
Algorithmes: expansion moyenne (AQE)
descripteurs = descripteurs_points_intrt(requte)
rsultats = vide
tant que descripteurs non stable
rsultats2 = recherche(descripteurs)
pour image dans rsultats2
ajouter image rsultats
si image trs fiable
dtran =
transfo(descripteurs_points_intrt(image))
ajouter dtran descripteurs
retourner rsultats
Plan

Expansion de requtes

Classification

Retour de pertinence

Data-Mining and Latent Semantic Indexing


Classification: objectif

On veut reconnatre

une classe dobjets (visages, pitons, montagnes, voiture, etc)

un objet (en tenant compte de ses diffrents aspects) : visages ??


Classification: objectif

est plus dur que rechercher des images de


contenu similaire une image requte

il requiert des informations smantiques

moins ambitieux en volume de donnes et


invariance
Classification : modle visuel

Modle visuel = description dimage + algorithme dapprentissage

Construction dun modle visuel : approche gnrique

partir dun ensemble dimages annotes

positif/ngatif

labels

description des images

descripteurs locaux/globaux, invariants aux transformations images

descripteurs discriminants pour les classes considres ou gnriques (SIFT)

variations dapparence : dterminer une fonction discriminante

Support Vector Machines (SVM)

rseaux neuronaux
Classification: descripteurs

Principe : plus de donnes cest mieux

Dtecteurs :

points dintrt : souvent trop peu de points, invariance inutile

dense : sliding window, multi-chelle

alatoires : paramtrage facile du nombre de fentres

Descripteurs :

SIFT ou gnralisation (HOG)

couleurs

souvent une combinaison


Classification: fonction discriminante

Modle = bote noire:

Apprentissage

Classification

Exemple : les SVM

classifie des vecteurs en n


dimensions

classificateur linaire (mais)

maximise la marge entre positifs


et ngatifs
exemples descripteurs positifs
exemples descripteurs ngatifs
modle en
construction
descripteur
modle
classe
marge
Classification: conclusion

Domaine en dveloppement

exemple: dtection de visages ok, reconnaissance, hum

ncessite puissance de calcul

peu dinvariance

classificateurs spcialiss (lettres, visages,)

Gnralisation la vido (cf. clip)


Plan

Expansion de requtes

Classification

Retour de pertinence

Data-Mining and Latent Semantic Indexing


Retour de pertinence

Motivation : la recherche dinformation multimdia par le contenu donne


souvent des rsultats dcevants

Plusieurs raisons cela

un document multimdia est trs riche

les primitives sont extraites partir dinformations brutes

deux utilisateurs nattendent pas la mme chose dune mme requte :


quels indices visuels exploiter ?
Retour de pertinence (suite)

Hirarchie de reprsentations, avec poids

O: objet (poids U)

P: primitive (poids V)

R: reprsentations (poids w)

Questions : Comment fixer les poids? Quest-ce quune bonne


reprsentation?

Premiers travaux : choix des poids la main par le dveloppeur.


Lutilisateur pouvait ensuite jouer sur les poids interaction et rsultats peu
satisfaisants

SOLUTION : utiliser linteraction avec lutilisateur

apprentissage des distances par ajustement des poids

lutilisateur indique de manire interactive les rsultats pertinents

mthodes IA, baysienne, de type recherche dinformation


Interface pour le retour de pertinence
Retour de pertinence (fin)

Dfinition de distances entre


reprsentations, indices et objets

Principe de linteraction
initialiser les poids U, V et W
boucler
calcul des distances entre Q et tous les objets de la base
classer les rponses et ne garder que N plus pertinentes
interaction: lutilisateur value la pertinence des rponses
mise jour de U, V et W en accord avec ces rponses

[REF] Relevance Feedback: A power tool for interactive Content-Based Image


Retrieval, Rui and al., in Storage and retrieval for image and video databases, 1998
Plan

Expansion de requtes

Classification

Retour de pertinence

Data-Mining and Latent Semantic Indexing


Latent Semantic Indexing (dbut)

Cest une technique de data-mining , c-a-d dinfrence automatique


dinformation partir de gros volumes de donnes

Latent Semantic Indexing (LSI)

trs efficace pour la recherche de documents textes , mais aussi


performante pour lanalyse dimage

construit de manire statistique les relations entre mots et documents

permet de dcouvrir les expressions clefs dun document

Traditionnellement, recherche des mots-cls de la requte dans les


documents

Mais : polysmie, synonymie

Avec LSI, la notion de mot est remplace par celle de concept


Latent Semantic Indexing (suite)

Hypothse : il existe une relation entre mots et documents qui est


gouverne par un paramtre cach : le sens

LSI

construction de la matrice mots/documents


calcul dune dcomposition SVD de la matrice termes/documents A={a
i,j
}
a
i,j
est la frquence du mot i dans le document j (le + souvent pondre)

lespace des sens sera lespace rduit des k premiers vecteurs propres
espace vectoriel smantique

documents et mots deviennent des points de cet espace

Une requte peut tre vue comme un pseudo-document et projete dans


cet espace recherche des voisins dans cet espace

Dans un contexte dimage, LSI sapplique en utilisant des mots visuels


FIN

Bonne chance pour la suite

Vous aimerez peut-être aussi