Upload
drmarlem
View
592
Download
1
Embed Size (px)
Citation preview
Università degli Studi di NapoliFacoltà di Ingegneria
Corso di Laurea in Ingegneria Informatica
Candidato
Marco Lembo
Matricola 041/3151
Anno Accademico 2004/2005Anno Accademico 2004/2005
Algoritmi per la classificazione di shot Algoritmi per la classificazione di shot in filmati di telegiornale basati in filmati di telegiornale basati sull’informazione audio e videosull’informazione audio e videoRelatore
Ch.mo Prof. Carlo Sansone
Co-relatore
Ing. Gennaro Percannella
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video2
News Video Segmentation
Applicazione: Content based retrievalnecessità di indicizzare i filmati
Attività di interesse per… Analisti governativi Fornitori di informazione (ANSA..) Utenti finali
Alcuni esempi:
Obiettivo: indicizzazione automatica dei videogiornali Il primo passo è la News video segmentationUn modo per segmentare in notizie:
Anchor shot detection
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video3
Anchor shot detection…..a partire da un filmato suddiviso in shot (Shot
segmentation) li classifica (Shot Classification) sulla base del loro contenuto in: Anchorperson-Shot e Newsreport-Shot.Anchor shot: Anchor shot:
shot contenente l’anchor–person che introduce “a shot contenente l’anchor–person che introduce “a voce” la notiziavoce” la notizia
News-ReportNews-Report: : shot componenti la notizia in “senso stretto”shot componenti la notizia in “senso stretto”
Struttura tipica di un videogiornaleStruttura tipica di un videogiornale Idea inizialeIdea iniziale: ogni News story inizia con un anchor : ogni News story inizia con un anchor
shot….shot….
VideoVideo
NewsNews
ShotShot
FrameFrame
> 96%> 96%
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video4
Stato dell’arteApprocci esistenti “Model-based” (Video)
“Supervised”, non generali.. “Unsupervised” (Video)
solo informazione video, soglie da determinare.. “Unsupervised” (Audio/Video)
Non sempre automatici, difficile combinare audio e video
Soluzioni proposte Unsupervised (assenza di addestramento) Model Free (non prevede un modello fissato di TG) Automatici (assenza di soglie da determinare) Audio e Video combinato
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video5
I sistemi propostiArchitettura del primo sistemaArchitettura del primo sistema:: ClusteringClustering degli shot basato su più tipi di informazione: degli shot basato su più tipi di informazione:
AUDIO, VIDEO e DURATA dello shotAUDIO, VIDEO e DURATA dello shot
Architettura del secondo sistemaArchitettura del secondo sistema: Modulo di Clustering
shot cromaticamente simili raggruppati in cluster Modulo di Pruning basato sul Lifetime
elimina i cluster che non rispettano di una particolare caratteristica temporale richiesta: “lifetime” elevato
Modulo di Pruning basato sulla Face Detectionelimina i cluster che non rispettano una condizione dipendente dalla presenza o meno di volti
Modulo di Recoverycerca di “recuperare” anchor shot erroneamente classificatibasato fondamentalmente sull’informazione AUDIO
Clustering
Lifetime
Face Detector
Recovery
Shot Esito0 AS1 NR2 NR
Clustering(su più feature)
Shot Esito0 AS1 NR2 NR
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video7
Scelta delle FeatureDa una lunga ed attenta osservazione dei filmati abbiamo selezionato le seguenti “feature”…. Feature Video
Volti Dimensione media X media punto centrale Y media punto centrale
“Cloth” color: Hue e SaturationSfondo: limiti dell’intervallo di colori maggiormente stabile nei frame dello shotStazionarietà: rapporto tra numero di pixel con maggiore variazione di colore e totale pixel nell’immagine
Feature Audio F0 media per le porzioni VOICED F0 devStandard per le porzioni VOICED En media per le porzioni UNVOICED En devStandard per le porzioni UNVOICED NSR (non silent ratio): rapporto tra frame silenti e totale frame LTAS (long-term average spectrum) sulle sole porzioni VOICED:
Feature Temporali D: durata in secondi dello shot
Rumori di sottofondo
Frequenza fondamentale (Voce)
SilenziVoce
Moto camera e/o oggetti
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video8
Feature Video
Anchor ClothMaschera B/N
“Hue” (UB region)Faccia
ThresholdingCloth Color
Stazionarietà
Maschera
Stationary Region
TOT
SR
pixel
pixel
#
#
Ist. “Saturation” medio Sfondo
Sfondo
rangeR
rangeL
- Differenza + Binarizzazione
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video9
Feature AudioClassificazione
volume-based (EnmediaUV e Eσ
UV, NSR): basate su valutazione dell’energia quadratica media (RMS)
pitch-based (F0mediaV e F0disp
V): basati sulla stima della frequenza fondamentale umana frequency-based (LTAS – primi tre minimi globali e le relative larghezze di banda): basata
sul calcolo della DFT (mediante FFT)Stima della F0 mediante ACF (f. di autocorrelazione)
Calcolo Energia:
Calcolo LTAS
ACF (VOICED) ACF (UNVOICED)
LTAS (512 bin)
0
0.005
0.01
0.015
0.02
0.025
0.03
0.035
0.04
0 20 40 60 80 100
120
140
160
180
200
220
240
260
280
300
320
340
360
380
400
420
440
460
480
500
Primi tre massimi
globali: • # bin del picco• ampiezza picco
F0 = 0
Frame Silente se...EUV < 0.3 Emedia
UVCalcolo NSR
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video10
ClassificazioneAlgoritmo “K-Means” Step1. Scelta del valore di K Step2. Scelta casuale di K punti
dello spazio (centroidi) ed assegnazione casuale dei campioni ai centroidi
Step3. Per ogni campione calcolo della distanza da tutti i centroidi. Se un campione non apparteneva al cluster cui è risultato essere più vicino allora si modifica l’assegnazione e si ricalcola la posizione dei centroidi coinvolti nella modifica.
Step4. ripetizione dello step3 finché la convergenza non è stata raggiunta, cioè finché non si verificano più nuove assegnazioni.
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video12
Clustering: Graph-Theoretical Cluster AnalysisClustering: Graph-Theoretical Cluster AnalysisGTC
CUT EDGES
MinimumSpanning
Tree
Fase di“Cut Edge”
Metrica “locale a blocchi” utilizzata per il calcolo delle distanze tra k-frame nello spazio delle feature: Somma delle differenze di
istogrammi RGB delle 8 (di 16) regioni più simili tra loro
Creazione dell’MST che collega tutti i nodi dell’alberoScelta del “Cut Edge” in modo automatico mediante clustering “Fuzzy C-means”; e…Rimozione degli archi dell’albero i cui pesi superano tale sogliaDeterminazione di sotto-alberi (cluster di shot simili)
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video13
Modulo per il calcolo del “Lifetime”Modulo per il calcolo del “Lifetime”Video Shot
Lifetime
• “Lifetime” Il più breve Intervallo di tempo che include tutte le occorrenze degli shot appartenenti allo stesso cluster
• Un cluster di Anchor - Shot ha un tempo di vita elevato a differenza di un cluster di News-Report shot erroneamente individuato dal modulo precedente
• Il parametro di lifetime fissato “una tantum” è 4000 (160 s) per le edizioni lunghe (> 15 m) e 3000 (120 s) per quelle brevi (< 15 m).
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video14
Face Detector
Face Detector: proposto da Viola&Jones - 2001 basato su caratteristiche strutturali
dei volti
Modifiche introdotte: Filtro posizione volti
Principio: si può assumere, con ragionevolezza, che un volto di anchor person non possa essere localizzato totalmente al di sotto della metà dell’immagine (il camera-man tende ad inquadrare l’AP centrato verticalmente)
Filtro “colore pelle” – Skin FilterVerifica posizione delle componenti del “dominant color” del volto nello spazio RGB
Volto "Candidato"
Estrazione "Dominant Color"
"Skin" color ?
Falso Volto Volto Reale
(R,G,B) è classificato come pelle se:R > 95 e G > 40 e B > 20 emax{R,G,B} - min{R,G,B} > 15 e|R - G| > 15 e R > G e R > B
(Peer 2003)
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video15
Face Detection (Extra-Cluster)Definizioni
NN numero totale di key-frame del cluster (n * #shot del cluster)numero totale di key-frame del cluster (n * #shot del cluster)
II (intercepted): numero di key-frame del cluster per cui è stato rilevato almeno un volto(intercepted): numero di key-frame del cluster per cui è stato rilevato almeno un volto
NINI (not intercepted): numero di key-frame del cluster per cui non è stato rilevato nessun volto(not intercepted): numero di key-frame del cluster per cui non è stato rilevato nessun volto
FunzioniFunzioni
Stima delle distribuzioni di probabilitàStima delle distribuzioni di probabilità Mediante analisi KDE (finestre di Parzen)
Determinazione della sogliaDeterminazione della soglia
Pruning dei clusterPruning dei clusterReportShotNewsdiCluster
N
I
AnchorShotdiClusterN
I
−⇒≥
⇒<
85.0
85.0
N
I NII −N
NII −N
NII −
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video16
Face Detection (Intra-Cluster)Idea semplice ma Idea semplice ma efficace!efficace! Se inSe in almeno due
key-frame su tre si si rileva un volto, rileva un volto, allora, lo shot viene allora, lo shot viene lasciato nel cluster lasciato nel cluster di appartenenza.di appartenenza.
Nuova verifica delNuova verifica del “Lifetime”“Lifetime”
Elimina shot dal cluster
News-Report Shot
News-Report Cluster
News-Report ClusterAnchor Cluster
SI
NO
SI
NO
SI
Fine Cluster ?
Face Detection
”2 k-fr. su 3”?
Dimensione Cluster =
1?
Lifetime ?
Estrazione tre Key-Frame
Shot
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video17
RecoveryTentativo di recupero di anchor shot
Errori introdotti dal modulo clustering Errori introdotti dal modulo lifetime
Selezione Anchor shot “Certi”: shot classificati come
“Anchor” a valle del modulo di pruning Anchor shot “Candidati”: shot classificati
come “News-report” a valle del modulo di pruning
Estrazione matrice delle distanze Metrica di similitudine globale e
spaziale basata su: “Color Adjacency Histogram” “Color Vector angle Histogram”
Selezione migliori tre candidatiVerifica basata su: AUDIO FACE DETECTION
Classificazione shot candidati (AND)
Selezione Anchor shot "Certi"
Selezione Anchor shot “Candidati”
Confronto tra AS "certi" e “candidati”
Lista “migliori candidati”
Analisi basata
sull’Audio
Analisi basata su
Face Detection
AND
uscita Finale
best 3 best 3
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video18
Recovery: Analisi Audio
Anchor shot se:
Le feature sono estratte su frame audio di 1024 campioni (23 ms)
LPCC (14): ricavati da un modello di predizione lineare PF (14): ricavati mediante interpolazione dei LPCC MFCC (20): ricavati dalla trasformata inversa del
logaritmo della DFT del segnale d’ingresso
Classificazione in audio degli shot : Indice di similitudine audio scelto: D
Ulteriore possibilità Mascheramento: filtraggio delle porzioni di
audio non vocaliche (unvoiced)
max,
),(1
d
kmdD km −=),(max
;,max kmdd
kmAScertikm ≠∈=
maxdD <
∑∈
=AScertik
kmm DAScerti
D ,#
1
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video19
Fattori Prestazionali: Precision, Recall e Figura di Merito F
allarmifalsitiidentificantecorrettame
tiidentificantecorrettameecision
__
_Pr
+=
persezioniidentificatiidentificantecorrettame
tiidentificantecorrettamecall
__
_Re
+=
callecision
callecisionF
RePr
Re*Pr*2
+=
Precision e Recall permettono di studiare il legame tra Hit (numero di Anchor - Shot classificati correttamente) e False (numero di falsi Anchor - Shot rilevati); hit e Missed (numero di Anchor - Shot classificati erroneamente).La Figura di Merito F è un parametro che tiene conto contemporaneamente della Precision e della Recall.
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video20
Database SperimentaleIlIl database di filmatidatabase di filmati utilizzato nelle sperimentazioni è costituito da filmati di edizioni dei TG delle due emittenti televisive italiane Rai1 e Canale 5
Per l’emittente televisiva Rai 1:28 TG tra edizioni delle 00:00, 11:30, 13:30, 17:00, 20:00, 22:50
Per l’emittente televisiva C5:17 TG di durata maggiore di 15 min. tra edizioni delle 01:00, 13:00, 20:00
Numero complessivo di ore: 17
Durata media per filmato: 22.31 min
Numero medio di shot: 197
Numero medio di Anchor-Shot: 14Tempo impiegato dal Sistema 1: ~18 h
Tempo impiegato dal Sistema 2: ~ 50 h
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video21
Risultati Sperimentali
0.2820.9780.165511452263979229K-Means
0.9410.9430.93913142163979229Recovery
0.9340.8910.9672572043979229Face Detection
0.8150.8910.76425632043979229Lifetime
0.6230.9340.477152352143979229Clustering
FRecallPrecisionMissedFalseHitNews-ReportAnchor Canale 5
0.4390.9760.28388403324004340K-Means
0.9750.9790.9717103334004340Recovery
0.9570.9240.9942623144004340Face Detection
0.9150.9240.91326303144004340Lifetime
0.8120.9350.723221223184004340Clustering
FRecallPrecisionMissedFalseHitNews-ReportAnchor RAI1
Secondo Sistema
Primo sistema
Secondo Sistema
Primo sistema
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video22
Confronto con altri algoritmi Video…(sullo stesso dataset)
0.9750.9790.9717103334004340Nostro sistema
(Multi-Layer)
0.7680.6440.952121112194004340Hanjalic (1999)
0.8680.8410.89880242604004340Gao (2002)
0.8880.8190.96867103044004340Bertini (2001)
FRecallPrecisionMissedFalseHitNews-ReportAnchorAlgoritmo
RAI1
0.9410.9430.93913142163979229Nostro sistema
(Multi-Layer)
0.6930.5680.89299161303979229Hanjalic (1999)
0.7450.8910.641251142043979229Gao (2002)
0.8690.8340.90815222143979229Bertini (2001)
FRecallPrecisionMissedFalseHitNews-ReportAnchorAlgoritmo
C5
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video23
Confronto con altri algoritmi Audio/Video(su dataset diversi)
~ 17 h245 0.960.970.96Nostro sistema
(Multi-Layer)
~ 2 h140.840.750.95NAG (1991)
~ 1.5 h130.920.870.98CHA (2003)
~ 0.5 h110.940.930.95EIC (1999)
~ 64 h21180.690.650.74KDDI Lab (2004)
Lunghezza totale (h)
Emittenti
Video
FPrecisio
nRecal
l
DatasetPerformanceAlgoritmo
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video24
Conclusioni
Materiale software utilizzato:
OpenCV http://sourceforge.net/projects/opencvlibrary/ ActiveX Windows Media Player 1.0
C++ builder 6.0 Cool Edit Pro VirtualDub
Feature Extractor AV-Ex
E’ più efficiente sfruttare l’informazione a vari livelli di elaborazioneL’utilizzo dell’audio permette di migliorare le prestazioni rispetto al solo utilizzo del video
Sviluppi futuri… Allargamento del dataset Riutilizzo di informazioni del primo sistema
A.A. 2004/2005 Algoritmi per la classificazione di shot in filmati di telegiornale basati sull'informazione audio e video25
Estrazione Feature
Recovery – Multi-LayerRecovery – Multi-Layer
Estrazione feature File feature.feat
Av-ex.exeFile CUT
.TXT
File video.MPG
+
Durata Info Volti Dinamicità
Av-ex.exe
Sfondo Audio Feature Extractor
Cloth color
Feature extractor
File delle feature
Mixer
File di feature con ground-truth
Ground-truth
File audio(.wav)
File di feature mascherato
MaskFile di maschera
Suvmain
Single-Layer