presentazione Sviluppo e studio di un algoritmo genetico per la ricerca di un...
Bruno Bertini - Studio e sviluppo di una tecnica per l’identificazione blind di dispositivi di acquisizione di immagini digitali
1. Studio e sviluppo di una
tecnica per l’identificazione blind
di dispositivi di acquisizione
di immagini digitali
Bruno Bertini
Relatori:
Firenze, 12/10/2012 Prof. Alberto Del Bimbo
Dott. Roberto Caldelli
Dott. Irene Amerini
2. Sommario
Digital Forensics → Image Forensics
Metodologia
o Estrazione feature
o Classificazione Blind → Spectral Clustering
Risultati sperimentali
Conclusioni e sviluppi futuri
3. Digital Forensics
Il Digital Forensics è la scienza che permette attraverso l'analisi di
prove digitali di ricostruire eventi collegati ad azioni illegali.
Prova digitale: Qualsiasi informazione, con valore
probatorio, memorizzata in formato digitale.
Image Forensics
Tampering detection
Source identification
6. Classificazione Blind
non-Blind
Estrazione Addestramento
Training-Set Classe 1
Feature
Estrazione Algoritmo
Test-Set Classificatore Classe 2
Feature Blind
Classe 3
Classe n
8. Estrazione delle feature
Tre tecniche distinte per estrarre feature:
1. Denoising dell’immagine
2. Analisi trasformata Wavelet
3. Predizione lineare
𝑣𝑣𝑣𝑣𝑣𝑣𝑣 𝑓𝑓𝑓𝑓𝑓𝑓𝑓 = [37 𝑒𝑒𝑒𝑒𝑒𝑒𝑒𝑒 ]
X
3 bande
𝒗𝒗𝒗𝒗𝒗𝒗𝒗 𝒇𝒇𝒇𝒇𝒇𝒇𝒇 = [𝟏𝟏𝟏 𝒆𝒆𝒆𝒆𝒆𝒆𝒆𝒆 ]
9. Denoising dell’immagine
𝒇𝒇𝒇𝒇𝒇𝒇𝒇 𝟏 → 𝟏𝟏 𝑭𝑭𝑭𝑭𝑭𝑭 𝒅𝒅 𝑴𝑴𝑴𝑴𝑴𝑴
𝑓𝑓𝑓𝑓𝑓𝑓𝑓 [ 1 → 8 ]
D
𝑓𝑓𝑓𝑓𝑓𝑓𝑓 [ 9 → 14 ]
Media
4 momenti statistici per Media Col. e Media Rig.
Colonne
∑ 𝑐𝑐𝑐𝑐 𝑐𝑐𝑐
3 momenti statistici per Corr. Righe e Corr. Colonne
𝑓 15 = 1 − ∗ 100
Media Righe
∑ 𝑐𝑐𝑐𝑐 𝑟𝑟𝑟
𝒇𝒇𝒇𝒇𝒇𝒇𝒇 𝟏𝟏 → 𝟐𝟐 𝟔 𝒇𝒇𝒇𝒇𝒇𝒇
1. Filtro Mihcak 4. Filtro Gaussiano 3x3
2. Filtro Media 3x3 5. Filtro Wiener 3x3
3. Filtro Mediana 3x3 6. Filtro Wienere 5x5
Media e deviazione standard
delle 6 versioni del rumore
10. Analisi trasformata Wavelet
𝒇𝒇𝒇𝒇𝒇𝒇𝒇 𝟐𝟐 → 𝟑𝟑
Deviazione Standard per ciascuna
delle 3 sottobande HL, HH e LH
𝒇𝒇𝒇𝒇𝒇𝒇𝒇 [ 𝟑𝟑 → 𝟑𝟑 ]
Per ogni sottobanda confronto della
distribuzione gaussiana p(y) con la
distribuzione q(y) dei coefficienti della
sottobanda stessa.
q(y)
p(y) 𝛿 = � 𝑝 𝑦 − 𝑞(𝑦) 𝑑𝑑
11. Predizione lineare
1. Identificazione zone lisce mediante
segmentazione con filtro di Prewitt
2. ‘’Zone lisce chiare’’ e ‘’zone lisce scure’’
mediante soglia di intensità luminosa
3. In ciascuna zona predizione
pixel bi mediante pixel limitrofi
∆𝑏 = 𝑏′ − 𝑏
ai,1 ai,4 ai,6 4. Confronto tra pixel predetti b’ e pixel reali b
ai,2 bi ai,7
𝒇𝒇𝒇𝒇𝒇𝒇𝒇 𝟑𝟑 → 𝟑𝟑
ai,3 ai,5 ai,8
Media e Deviazione Standard di ∆𝑏 per le 2 zone
12. Classificazione Blind
Algoritmo di Spectral Clustering [Shi et al. 2000]
Tecnica basata su Teoria dei Grafi
o Nodi = Dati da partizionare
o Archi = Matrice di similarità
Algoritmo Top-Down
N immagini Cluster Iniziale Si parte con la totalità delle N immagini
Ad ogni iterazione il grafo viene
bipartizionato o meno in base al
Cluster 1 Cluster 2 coefficiente di aggregazione
Condizione di stop: coefficiente di
aggregazione supera una soglia TH
predefinita
Cluster 1.1 Cluster 1.2
[Shi et al. 2000] - J. Shi and J. Malik, ‘’Normalized cuts and image segmentation’’, Pattern
Analysis and Machine Intelligence, IEEE Transactions on, vol. 22, no. 8, pp. 888-905, aug 2000.
13. Spectral Clustering
Matrice delle similarità: Correlazione tra i vettori delle feature.
Cluster 1
Matrice delle Matrice delle Spectral Cluster 2
Feature (Nx111) Similarità (NxN) Clustering
Cluster k
Valore soglia TH
14. Risultati sperimentali
Esperimenti:
1. Scelta valore soglia TH
2. Classificazione Spectral Clustering
3. Confronto Spectral Clustering con algoritmo K-means
4. Confronto Spectral Clustering con stato dell’arte
Database 300 immagini: 100 immagini per ciascuna delle 3 sorgenti.
Camera CG Scanner
70 40 100 Dataset 1
40 50 90 Dataset 2
Combinate in 63 dataset
90 60 80 Dataset 3
… … … ...
… … … Dataset 63
15. Risultati 1: scelta valore soglia TH
Curve ROC: True Positive Rate e False Positive Rate (TPR/FPR)
Intervallo valori soglia [0.82 – 0.95] con incremento di 0.01
16. Risultati 1: scelta valore soglia TH
Media
Valore
distanza
Soglia TH
Euclidea
0,82 0,9058
TH=0.85 0,83 0,903
0,84 0,9139
0,85 0,7779
0,86 0,9918
17. Risultati 2: Spectral Clustering
Camera CG Scanner
Media su 63 esperimenti
Camera 86% 1.9% 12.1%
Valore soglia TH = 0.85
CG 7.8% 83.8% 8.4%
Scanner 10.6% 17.1% 72.3%
19. Risultati 3: confronto con K-means
K-means: algoritmo di clustering
E’ imposta la scelta iniziale del numero K di cluster da cercare
Calcolo coefficiente di silhouette per ogni K = [2 - 30]
𝑏𝑖 − 𝑎 𝑖
𝑆𝑆𝑆. 𝐶𝐶𝐶𝐶𝐶. = = [−1 , 1]
𝑚𝑚𝑚 𝑎 𝑖 , 𝑏 𝑖
𝑎 𝑖 : 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐 𝑏 𝑖 : 𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠
𝐚𝐚𝐚𝐚𝐚𝐚 𝑺𝑺𝑺. 𝑪𝑪𝑪𝑪𝑪.
𝒌
20. Risultati 3: confronto con K-means
K-means
Spectral Clustering Camera CG
Camera 96.5% 3.5%
Camera CG Scanner K=2
CG 4.2% 95.8%
Scanner 52.5% 47.5%
Camera 86% 1.9% 12.1%
CG 7.8% 83.8% 8.4% Camera CG Scanner
Scanner 10,6% 17.1% 72.3% Camera 90.2% 2.6% 7.2%
K=3
CG 4.1% 93% 2.9%
Scanner 3.6% 11.6% 84.8%
Singola sorgente (100 camera)
Camera CG Scanner Camera CG Scanner
K=3
Camera 90% 4% 6% Camera 60% 19% 21%
21. Risultati 4: confronto con stato dell’arte
Confronto con due metodologie non-Blind: [Delp et al. 2008] e [McKay et al. 2008]
240 (80 x sorgente) Addestramento SVM
Database
300
immagini
SVM
60 (20xsorgente)
Spectral Clustering
[McKay et al. 2008] - C. McKay, A. Swaminathan, H. Gou, and M. Wu, ‘’Image acquisition foren-
sics: Forensic analysis to identify imaging source’’, in ICASSP'08, 2008, pp.1657-1660.
[Delp et al. 2008] - N. Khanna, G.-C. Chiu, J. Allebach, and E. Delp, ‘’Forensic techniques for classifying scanner,
computer generated and digital camera images’’. in Acoustics, Speech and Signal Processing, 2008. ICASSP 2008.
IEEE International Conference on, 31 2008-april 4 2008, pp. 1653-1656.
22. Risultati 4: confronto con stato dell’arte
[Delp et al. 2008] [McKay et al. 2008]
Camera CG Scanner Camera CG Scanner
Camera 74.4% 17.8% 7.8% Camera 97.1% 2.9% 0%
CG 4.6% 81% 14.4% CG 14.2% 85.4% 4%
Scanner 6% 20% 74% Scanner 7% 1% 92%
Spectral Clustering
Camera CG Scanner Altro
Camera 83.6% 1.8% 9.4% 5.2%
CG 3.6% 80.1% 8.8% 7.5%
Scanner 13.8% 8.4% 72% 5.8%
23. Conclusioni
Estrazione feature basate su rumore
Scelta Spectral Clustering per classificazione Blind
Test Spectral Clustering e confronti con altri algoritmi e metodologie non-Blind
Vantaggi
o Corretta identificazione della sorgente nel 80% dei casi
o Migliore del K-means in ambiente Blind
o Risultati paragonabili con lo stato dell’arte (non-Blind)
Svantaggi
o Minor robustezza rispetto al caso non-Blind
o Dipendenza dalla numerosità del dataset
Sviluppi Futuri Definizione di un nuovo coefficiente di aggregazione