recherche d
recherche d ’ ’ information dans une grande base information dans une grande base de donn
de donn é é es d es d ’ ’ images images
Travail de th
Travail de th è è se de Nguyen se de Nguyen - - Khang Khang PHAM PHAM pr pr é é sent sent é é par A Morin par A Morin
3 novembre 2010
3 novembre 2010- - GDR 13 GDR 13
Équipe
n Recherche d’images par le contenu
o Analyse factorielle des correspondances (AFC) pour l’indexation et la recherche d’images
p Accélération de recherche par la catégorisation q Calcul incrémental et parallèle de l’AFC
r Visualisation
Description du contenu visuel
∈ R
1282. Descripteur SIFT (Scale-invariant
feature transform) [Lowe, 2004]
1. Détecteur des points d’intérêts Hessien-affine [Mikolajczyk &
Schmid, 2004]
≡
Formation des mots visuels
…
R
128R
128SIFT
Mots visuels
Clustering
(par ex., k-means)
Description du contenu visuel
Tableau de contingence
Base d’images
L’élément x ij désigne :
– le nombre de SIFT de l’image i qui sont dans le mot visuel j
– le nombre de fois où le mot visuel j apparait dans l’image i
mot visuel j
x ij
image i
n Recherche d’images par le contenu
o Analyse factorielle des correspondances (AFC) pour l’indexation et la recherche d’images
– AFC
– Indexation et recherche d’images par l’AFC
p Accélération de recherche par la catégorisation q Calcul incrémentale et parallèle de l’AFC
r Visualisation
Analyse factorielle des correspondances
• L’AFC est une double analyse en composantes principales particulière (ACP)
– une ACP sur les lignes
– une ACP (duale) sur les colonnes
• Représentation simultanée des images et des mots visuels
dans un espace de dimension réduite
mot visuel j
image i
Tableau de contingence (M images et N mots visuels)
x ij
Analyse factorielle des correspondances
mot visuel j
image i
x ij
p
iq
jmot visuel j
image i
i ij
p
x ACP ACP
- Distance χ2 - Pondération par
p
iα
z i
axe α
Tableau de profils-lignes Tableau de contingence
(M images et N mots visuels)
Analyse factorielle des correspondances
mot visuel j
image i
x ij
p
iq
jmot visuel j
image i
i ij
p
x ACP ACP
- Distance χ2
- Pondération par
p
imot visuel j
image i
ACP ACP
- Distance χ2
- Pondération par
q j
α
z i
axe α
α
w j
axe α
j ij
q x
Tableau de contingence (M images et N mots visuels)
Analyse factorielle des correspondances
Analyse factorielle des correspondances
Image avec tous les mots visuels
Les mots visuels qui caractérisent bien l’image
mots visuels images
Indicateurs de l’AFC
• Contribution de chacun des éléments à l’inertie d’un axe
– Les éléments ayant une forte contribution fixent la direction de l’axe.
• Qualité de représentation de chaque élément sur un axe
– cosinus carré
distance
2masse inertie = ×
axe β
axe α masse
distance
i’
0 i
) (i' cos
α2≈
1 (i)
cos
α2≈
α
z
ip
iIndexation d’images par l’AFC
AFC AFC
) ,
cos(
) , (
similarité r i = z ( r ) z i
image i
mot visuel j
image i
axe α
α
z i
requête
x ij
r j z α (r )
requête
Résultats expérimentaux
• Bases d’images
– Caltech-4 (4090 images, 5 catégories)
– Caltech-101 (8709 images, 102 catégories)
– Nistér (10200 images, 2550 catégories)
• Vocabulaire visuel
– Détecteur Hessien-affine – Descripteur SIFT
– Notre implémentation de k- means sur GPU
– 5000 mots visuels
• Architecture
– Machine Intel Xeon bi- processeurs Quad core, 3.2 GHz, 8Go
– Carte graphique NVIDIA GeForce GTX 280, 1Go de mémoire
– Librairies: ATLAS,
LAPACK, CUBLAS, CUDA
Résultats expérimentaux
Résultats expérimentaux
Caltech-101
Nistér-Stewénius Caltech-4
Recherche
exhaustive
n Recherche d’images par le contenu
o Analyse factorielle des correspondances (AFC) pour l’indexation et la recherche d’images
p Accélération de recherche par la catégorisation
– Fichiers inversés basés sur les indicateurs de l’AFC – Recherche approximative basée sur les fichiers
inversés
q Calcul incrémentale et parallèle de l’AFC r Visualisation
s Conclusion et perspectives
images
• Utilisation des indicateurs de l’AFC pour
accélérer la recherche sans trop dégrader la qualité des résultats
– Réduire le nombre d’images à comparer avec la
requête
images
images
images
• Un axe factoriel Ù deux thèmes antagonistes
• Une image peut appartenir à plusieurs thèmes
• Détermination des thèmes:
– Contribution à l’inertie d’un axe
– Qualité de représentation sur un axe
Fichiers inversés
0 1
0
0 1
1
1
0
1 image 1
image 2
image 4 image 5
1
0 image 3 0
F
1+F
1-F
2+F
2-0
0 0
Détermination des thèmes
…
Fichiers inversés
Coordonnées des images dans l’espace factoriel
1
4 5
4
1
…
3
2 2
Thèmes
0 axe α
α
z i
1
image i
1
1
5
0
Recherche accélérée par fichiers inversés
• Filtrage des images non pertinentes
– Utiliser des fichiers inversés pour filtrer les images qui partagent peu de thèmes avec la requête
• Raffinement
– Effectuer une recherche séquentielle dans la liste
d’images candidates
Filtrage des images non pertinentes
1 5
n
o
p
1. Déterminer des thèmes et prendre les fichiers inversés correspondants
requête
2 3
5 1
4
0 1
2 2
1
freq(i)
freq(i) > seuil
0
1 0 1
Fichiers inversés
4 5
4
1 3
2 2
1
5 2. Fusionner les fichiers
inversés et calculer la fréquence des images, freq(i)
3. Rejeter les images ayant
une petite freq(i) pour
former la liste d’images
candidates
Résultats expérimentaux
• Recherche approximative à l’aide des fichiers inversés
– Méthode approximative 1:
• fichiers inversés basés sur la contribution – Méthode approximative 2:
• fichiers inversés basés sur la qualité de représentation
• Recherche exhaustive
Rapidité
Méthodes Gain d’accélération
min max moyen
Fichiers inversés basés sur
la contribution 2.7 17.3 6.9
Fichiers inversés basés sur
la qualité de représentation 3.2 13.8 6.6
Pertinence des résultats
n Recherche d’images par le contenu
o Analyse factorielle des correspondances (AFC) pour l’indexation et la recherche d’images
p Accélération de recherche par la catégorisation q Calcul incrémental et parallèle de l’AFC
– AFC incrémentale et parallèle – Parallélisation de la recherche
r Visualisation
s Conclusion et perspectives
AFC (revisitée)
• Décomposition en valeurs propres et vecteurs propres de la matrice
images
mots visuels
Σ
Σ
P Q
X
1
1 −
= X P − XQ
A T
0
0
p
ip
iq
jq
j0
0
AFC incrémental et parallèle
1. Calcul incrémental par découper X en B blocs
X
Tp
i1
iq
X
[1]1
X
[2]X
[B]X
X
T[1]X
T[2]X
T[B]−1
P Q
−1A =
X
[1]Σ Σ
X P
X
C = T − 1 q
X
[2]X
[B]2. Calcul parallèle sur GPU en utilisant CUBLAS
CUBLAS
AFC incrémental et parallèle
• Calcul parallèle
– Quand toute la base est disponible
• Traitement « pipe-line »
– Quand les images arrivent les unes après les autres
• Mise à jour facile
– Quand la base est modifiée C = C ± C
[mise à jour]Affectation (bloc X[1] )
Affectation (bloc X[2] )
Affectation (bloc X[3] )
Calcul du C[1]
Calcul du C[2]
Calcul du C[3]