Multimedia Information
Retrieval
Enver Sangineto,
Dipartimento di Informatica
[email protected]
Problema

Nel Web e nei DB “locali” esiste molta informazione
non esclusivamente testuale:





audio (speech, musica…)
immagini,
video,
…
Come recuperare efficacemente materiale
multimediale?
p. 2
Esempi di applicazione

Web indexing:





Recupero di materiale multimediale dal Web,
Sistemi capaci di bloccare immagini pubblicitarie
oppure illegali/indesiderate
Trademark e copyright
Accesso ai musei
DB commerciali
p. 3
Esempi di applicazione [2]





Immagini satellitari (applicazioni militari,
government, …)
Immagini mediche
Entertainment
Criminal investigation
…
p. 4
Prima generazione di multimedia
information retrieval systems

Off-line: il materiale multimediale viene
associato con una descrizione testuale. Ese.:



Annotazione manuale (“content descriptive
metadata”)
Il testo che in una pagina Web circonda l’img
On-line: utilizzo di tecniche di IR testuali
basate sul “keyword match”
p. 5
p. 6
immagine presa da: A. Del Bimbo, Visual Information Retrieval
Limiti dell’approccio esclusivamente
testuale


L’annotazione manuale di grossi DB
multimediali è impensabile…
Non è facile descrivere verbalmente il
contenuto percettivo di un’immagine, di un
video o di un brano musicale…
p. 7
Esempi




Cercare una canzone conoscendone solo il
ritornello
Cercare una determinata azione in un video
sportivo
Cercare dipinti che hanno un determinato
dosaggio di colori
…
p. 8
Esempi [2]

Google Image può restituire fino ad un 85% di
documenti NON rilevanti anche per query semplici
(e.g., oggetti specifici) [1]

[1] Fergus, Fei-Fei, Perona, Zisserman, Learning Object Categories from
Google’s Image Search, ICCV 05
p. 9
Soluzioni in fase di ricerca…

Sistemi “Content Based”:

Si basano sul contenuto percettivo dell’oggetto
multimediale. Tipicamente:



utilizzano una query by example e
modellano direttamente la similitudine percettiva tra la
query e gli oggetti del DB
Sistemi di annotazione automatica:


Fase di pre-processing (“information extraction”):
viene estratta (in maniera automatica!)
informazione da elementi non testuali e
memorizzata sotto forma simbolica (e.g., testuale)
Il retrieval (on-line) avviene con tecniche
“tradizionali”
p. 10
Differenze rispetto all’IR Testuale…



Un problema comune a tutti i sistemi di
Multimedia IR è il trattamento di informazione
non simbolica
Un testo può essere visto come la
combinazione di elementi simbolici atomici (le
parole o token)
Un’immagine è una collezione di pixel e un
suono un’onda sonora…
p. 11
Cosa vedremo in queste tre lezioni…

Introduzione ai sistemi content based basati
su caratteristiche percettive quali:


Colore, movimento, suono, forma…
Sistemi di annotazione automatica
p. 12
Elementi tipici di un sistema di
Content Based Multimedia IR

Dal punto di vista dell’utente:



La query è un oggetto multimediale (e.g.,
un’immagine, un disegno, un elemento audio, …)
L’output è una lista di elementi ordinati in base
alla somiglianza percettiva con la query
Esistono strumenti opzionali di interazione per
visualizzare collezioni di immagini o fornire
feedback al sistema
p. 13
Esempio: query by image example
La query è
un particolare
p. 14
Query by image example [2]
Notate che query e
particolare possono
non essere identici.
Ad es. la query può
essere scelta da un’
immagine prima di
un restauro
p. 15
Query by image example (sketch)
[3]
p. 16
immagine presa da: A. Del Bimbo, Visual Information Retrieval
Elementi tipici di un sistema di
Content Based Multimedia IR [2]

Dal punto di vista del sistema:




Rappresentazione dell’oggetto multimediale (e.g.,
spazio delle feature)
Modellazione del concetto di similitudine
percettiva (e.g., attraverso appositi algoritmi di
matching)
Utilizzo di strutture dati particolari che permettano
un indexing efficiente dello spazio delle feature
Gestione dell’eventuale relevance feedback (non
verrà trattato…)
p. 17
Rappresentazione
p. 18
Rappresentazione tramite Feature di
un’immagine


Una feature è una rappresentazione, tramite
un vettore di valori numerici, di tutta o parte
dell’immagine
Se I' è una sottoparte dell’immagine I, allora
una feature f è t.c.:
f(I')  Rk,
f(I') = (v0, … vk-1)T,
k >= 1
p. 19
Feature per rappresentare
un’immagine [2]


In genere una feature è una caratteristica
facilmente misurabile dell’immagine
L’immagine in esame viene quindi descritta
usando i valori di un insieme di feature prescelte f1, …, fn
p. 20
Feature globali e locali

I' = I: feature globale
I'  I: feature locale

Feature locali:



È importante capire come selezionare le
sottoparti di I (I‘1, I‘2, …) da rappresentare
Più robuste ad occlusioni, parti mancanti,
separazione dal background
p. 21
Esempio: feature locale
fi(I')
I'
I
p. 22
immagine presa da: Tutorial CVPR 07
Alcuni semplici esempi di feature:
istogrammi dell’intensità di grigio

Istogramma dell’intensità dei pixel in I':




Divido il range [0, 255] in k bin
Assegno ogni pixel ad un bin: I(p) -> divk(I(p))
f(I') = (v0, …, vk-1)T, dove:
vi = # { p  I’ : divk(I(p)) = i}
p. 23
Alcuni semplici esempi di feature:
geometria facciale
f(I) = (d1 , d2 , d3 , d4)T
p. 24
Spazio delle Feature



Supponendo di utilizzare n features a valori in
R, I può essere rappresentata tramite il
vettore x(I) = (f1(I), …fn(I))T
x(I) è ottenuto concatenando il valore delle
singole feature
x(I) è un punto in Rn, detto spazio delle
feature
p. 25
Spazio delle Feature [2]

In generale, se:

allora: x(I) = (f1(I) T
Rn*k
fi(I)  Rk,
 … fn(I) T)T è un punto in
p. 26
Es.: Spazio delle Feature (R2)
p. 27
Spazio delle Feature [3]


E’ un concetto simile ma non identico allo
spazio vettoriale usato per rappresentare la
frequenza dei termini nei documenti testuali
E’ la rappresentazione dei dati più usata nei
vari sistemi content based (immagini, video,
audio) ma non è l’unica!
p. 28
Similitudine
p. 29
Similitudine percettiva



Nel text retrieval, la similitudine tra due
documenti può essere stimata in funzione dei
termini in comune
Ad esempio, rappresentando la frequenza dei
termini di un documento in un apposito spazio
vettoriale, la distanza tra punti in tale spazio
descrive la dissimilarità tra documenti
Lo spazio delle feature si comporta in maniera
analoga…
p. 30
Similitudine percettiva [2]


Nello spazio delle feature la differenza
percettiva tra I1 e I2 è proporzionale ad una
determinata misura di distanza (non
necessariamente Euclidea): dist(x(I1),x(I2))
Data la query Q, l’output del sistema è una
lista di immagini I1, I2, … ordinata
minimizzando:
I1 = minI dist(x(Q),x(I)), …
p. 31
Esempio (R2)
p. 32
Similitudine percettiva [3]

Altri algoritmi di matching fanno uso di
rappresentazioni più complesse o alternative
allo spazio delle feature e sono tipicamente
studiati ad hoc per il particolare sistema di
MIR
p. 33
Indexing
p. 34
Tecniche di Indexing


Problema: come indicizzare efficientemente
dei dati in uno spazio multidimensionale?
La maggior parte delle più comuni strutture
dati per la ricerca efficiente si basano su un
ordinamento totale dei valori rappresentati:



xi <= xj V xj <= xi (0 <= i,j <= N)
Ese.: nel caso delle keyword, l’ordine
alfabetico stabilisce un ordinamento totale del
vocabolario (e.g., negli inverted files)
In Rk ciò non è più vero
p. 35
Il k-d Tree


E’ una generalizzazione dell’albero di ricerca
binario in k dimensioni
Ad ogni livello dell’albero viene presa in
considerazione ciclicamente una delle k
feature
p. 36
Il k-d Tree [2]

Supponiamo di voler indicizzare un insieme di
punti multidimensionali:
P1, …, PN, Pi Rk, Pi =(xi1, …, xik)

Scelgo la prima dimensione (feature) e trovo il
valore L1, mediano rispetto a x11, …, xN1
p. 37
Il k-d Tree [3]




La radice dell’albero conterrà L1
Il sottoalbero sinistro (TL) conterrà i punti Pi
t.c. xi1 <= L1
Il sottoalbero destro (TR) gli altri
A livello 1 scelgo la seconda feature e,
separatamente per TL e TR, calcolo L2 e L3,
scelti in modo tale che:


L2 è mediano rispetto agli elementi xj12, xj22, …
di TL
L3 è mediano rispetto agli elementi di TR
p. 38
Il k-d Tree [4]


Dopo aver utilizzato la feature k-esima, ritorno
ciclicamente a considerare la prima feature
I punti sono associati alle foglie
p. 39
Esempio
p. 40
immagine presa da: Hemant M. Kakde, Range Searching using Kd Tree
Image, video e audio retrieval
p. 41
Retrieval by color: istogrammi di
colore

Istogramma dei colori di una parte
(eventualmente tutta) di immagine I':


Possibili rappresentazioni di un singolo pixel:
RGB, HSV, CIE LAB, …
Divido ogni canale in k bin:




f(I') = (r0,…, rk-1, g0, …, gk-1, b0, …, bk-1)T,
ri = # { p in I’: divk(R(p)) = i },
gi = # { p in I’: divk(G(p)) = i },
bi = # { p in I’: divk(B(p)) = i }
p. 42
Istogrammi di colore [2]

Oppure divido RGB in k3 bin:



f(I') = (z0,…, zh-1)T, h= k3
Se zi rappresenta i valori (i1, i2, i3), allora:
zi = # { p in I’: divk(R(p)) = i1 and divk(G(p)) = i2
and divk(B(p)) = i3 }
p. 43
Istogrammi di colore [3]: esempio
p. 44
immagine presa da: Wikipedia
Retrieval by texture
p. 45
Approccio statistico

Tamura features: analizzano la
distribuzione dell’intensità
locale dell’img al fine di
misurare caratteristiche
percettive della texture quali:
 Contrasto
 Granularità
 Direzionalità
p. 46
Esempio
field
residential
vegetation
p. 47
Approccio sintattico: grammatiche
visive

Ese. di regola di produzione per la
rappresentazione di texture (Rosenfeld):

Essa riassume le seguenti 4 regole:
p. 48
Video retrieval


Un video è semplicemente una sequenza di
molte immagini
Ogni immagine viene detta frame
p. 49
Componenti di un video


Frame: una singola immagine
Shot: Un sequenza di frame consecutivi
ripresi da una singola telecamera
 Scena: un insieme di shot consecutivi
che rispettano le 3 unità aristoteliche di
spazio, tempo e azione
p. 50
Segmentazione di una
videosequenza


Individuando gli “editing effects” (cuts,
dissolvenze, ….) tra uno shot e l’altro è
possibile suddividere (automaticamente) un
video in shot
Molto più difficile è individuare le scene
(concetto semantico)
p. 51
Tipi di ricerca per i video


I video possono essere rappresentati con dei
“key frame” rappresentativi di ogni shot
Un key frame è trattabile come una “still
image”:

Si applicano le tecniche viste per le immagini
(e.g., spazio delle feature, ricerca per colore,
texture, forma, ecc.)
p. 52
Tipi di ricerca per i video

Alternativamente, è possibile cercare in un
video informazione relativa al movimento
(e.g., una particolare traiettoria in un video
sportivo, …)
p. 53
Audio retrieval
Vari tipi di audio:
 Parlato:
 E’ possibile utilizzare tecniche di speech recognition per
trasformare l’audio in testo
 Suono:
 Un qualunque segnale audio con frequenze nel range
dell’udito umano (e.g., suoni prodotti da animali…)
 Musica:
 Si tiene conto dei diversi strumenti musicali utilizzati, dei
vari tipi di suoni prodotti, degli effetti musicali, ecc.
p. 54
Tipi di Query


Query by example: viene fornito/sintetizzato
un file audio chiedendo di recuperare audio
simili
Caso particolare, Query by humming:

l’utente accenna (vocalmente o anche
fischiando…) la melodia da cercare
p. 55
Rappresentazione e similitudine


Uno spazio delle feature può essere creato
utilizzando, ad ese., istogrammi ricavati dalla
rappresentazione spettrale del segnale
La similitudine percettiva in tal caso avviene
calcolando la distanza tra punti
multidimensionali come nel caso delle
immagini

Distanze tipiche: Euclidea, Mahalanobis, distanze
per istogrammi (Histogram Intersection, KullbackLeibler divergence, Chi-quadro, ecc.)
p. 56
Aspetti percettivi diversi possono essere combinati
p. 57
Alcuni riferimenti


A. Del Bimbo, Visual Information Retrieval,
Morgan Kaufmann Publishers, Inc. San
Francisco, California", 1999
Forsyth, Ponce, Computer Vision, a Modern
Approach 2003
p. 58
Alcuni riferimenti [2]

Smeulders et al., Content-Based Image Retrieval at
the End of Early Years, IEEE PAMI 2000
 Long et al., Fundamentals of Content-based Image
Retrieval, in: D. D. Feng, W. C. Siu, H. J. Zhang
(Ed.),Multimedia Information Retrieval &
Management-Technological Fundamentals and
Applications, Springer-Verlag, New York(2003)
 Foote et al., An Overview of Audio Information
Retrieval, ACM Multimedia Systems, 1998
 Hemant M. Kakde, Range Searching using Kd Tree,
2005
p. 59
Domande…
p. 60
Scarica

I(p) -> div k