master-degree-notes/Biometric Systems/notes/3. Recognition Reliability.md

157 lines
No EOL
9.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

- identification is much more than verification
- decidability (aggiungere parte mancante)
> [!PDF|yellow] [[LEZIONE3_Affidabilita_del_riconoscimento.pdf#page=3&selection=0,0,1,1&color=yellow|LEZIONE3_Affidabilita_del_riconoscimento, p.3]]
> > Extending
>
> decidability
- misure come FAR, FRR, CMS ecc. non sono abbastanza per avere una solida valutazione dei sistemi
- se il dataset è limitato
- la prestazione di un sistema biometrico è molto sensibile al contesto in cui viene utilizzato, se ad es. viene usato in europa o in asia ecc.
- per una comparazione affidabile bisogna considerare
- numero e caratteristiche del dataset usato
- dimensione delle immagini
- dimensione di probe e gallery
- quantità e qualità
- cross-dataset evaluation: training on a dataset but testing on a different one
- performance may even halve, if not worse.
## Metrics
Una **metrica** su un insieme X è una funzione (detta distance function o distance)
$d: XxX -> R$ (R è l'insieme dei numeri reali)
Una metrica deve soddisfare le seguenti condizioni:
- $d(x,y) >= 0$ (non negatività / separazione)
- $d(x,y) = 0$ se e solo se $x=y$ (identità indiscernibili / coincidence)
- $d(x, y) = d(y, x)$ (simmetria)
- $d(x, z) <= d(x,y)+d(y,z)$ (subadditività / triangle inequality)
Una **semimetrica** soddisfa solo i primi 3, ma non necessariamente l'ultimo.
- se una misura non è simmetrica possiamo fare la media
A partire dalla matrice di distanza DM si possono calcolare diverse metriche, spesso chiamate Figures or Merit (FoMs)
## Doddington zoo
Doddington ha definito alcune similitudini con le classi animali per quanto
riguarda la voice recognition
- Pecora: produce tratti biometrici che matchano bene con altri template di se stesso e male con quelli di altri soggetti (classe media)
- Capra: produce tratti biometrici che matchano poco con altri template di se stesso, aumentando cosı̀ i casi di FR
- Agnello: produce tratti biometrici che sono facilmente riproducibili da altri, aumentando cosı̀ i casi di FA nei suoi confronti
- Lupo: produce un matching score più alto rispetto alla media quando viene confrontato con template diversi dal suo, aumentando così i FA.
La differenza è che gli agnelli sono facili da impersonare, i lupi sono forti a impersonare gli altri. Gli agnelli sono dal lato del gallery, i lupi dal lato del probe.
> [!PDF|yellow] [[LEZIONE3_Affidabilita_del_riconoscimento.pdf#page=14&selection=0,9,4,9&color=yellow|LEZIONE3_Affidabilita_del_riconoscimento, p.14]]
> > Extending the managerie
>
> integrare questo
Successivamente Yager ha individuato altre 4 classi, prendendo però in con-
siderazione sia score genuini (Gk) che score impostori (Ik), al contrario di Dod-
dington che invece prendeva in considerazione solo uno dei due. Ha individuato
quindi:
- Camaleonte: ha sia Gk che Ik alti, quindi riesce facilmente ad apparire simile ad altri. Può produrre tanti FA ma pochi FR
- ad es. possiede delle caratteristiche a cui il sistema biometrico dà molto peso
- Fantasma: ha sia Gk che Ik bassi, quindi causa tanti FR
- Colomba: è unestensione della pecora di Doddington, ha Gk alto e Ik basso, quindi è lutente ideale
- Verme: avendo Gk basso e Ik alto è il peggiore utente che si possa avere
- difficili da riconoscere ma impersonano facilmente
I sample presi in input possono avere una qualità diversa (per diversi motivi, es.:
qualità sensore, tempo, ombre, etc..), possiamo quindi definire delle misure di
affidabilità del riconoscimento che ci aprono ulteriori opzioni come ad esempio
il richiedere allutente di ripetere la cattura del sample.
![[Pasted image 20241016141746.png]]
During enrollment we usually have good quality samples because the user is guided (controlled system)
We should not only compare good quality samples with good quality, bad quality wiith bad quality...
e.g. if an image is perfect but not the other one, we may have a bad result.
##### Qualità dell'immagine
Una possibile misura di qualità è tramite la stima della qualità dellimmagine.
Questa può essere effettuata in diversi modi:
- Prendendo tutte le immagini in TR e calcolando un template medio da utilizzare come riferimento.
- Stimando la nitidezza dellimmagine andando a visualizzare listogramma delle frequenze; una mancanza di alte frequenze significa una bassa nitidezza (immagine sfocata)
![[Pasted image 20241016143112.png]]
un modo per calcolarli è misurare le distanze tra gli elementi della faccia, l'angolo della retta che collega gli occhi ecc.
- SP per misurare la distorsione rispetto a una posa frontale, misuriamo quindi dei disallineamenti sui vari assi di rotazione
- $SP = α(1 roll) + β(1 yaw) + γ(1 pitch)$
- SI per misurare lomogeneità dei livelli di grigio in alcune zone predeterminate della faccia, utile per vedere se ci sono ombre nette in alcuni punti
- $SI = 1 F (std(mc))$
- SY per misurare la simmetria della faccia
- $SY = \sum_{(i,j) \in X}{sym(Pi, Pj)}$
Visualizzando la distribuzione di un dataset rispetto alle misure proposte/scelte è possibile decidere quali sample scartare (possibilmente soloquelli che presentano gravi distorsioni), sapendo a priori quanto questo inciderà sulla grandezza finale del dataset. Per valutare le performance di una misura
di qualità possiamo verificare laumento o la diminuzione delle performance
del modello finale (EER): una buona misura di qualità dovrebbe aumentare
lefficacia del modello sui sample con score alti
vedere slide per integrare formule
- **Universal Image Quality Index (UIQI):** any image distortion as a combination of three factors: loss of correlation, luminance distortion, and contrast distortion
- x = {xi | i = 1...N} immagine originale
- y = {yi | i = 1...N} immagine di test
- the index is defined as $$Q=\frac{4 \sigma_{xy} \overline{x}\overline{y}}{(\sigma^{2}_{x} + \sigma^{2}_{y})[(\overline{x}^{2})+(\overline{y}^{2})]}$$
![[Pasted image 20241016174120.png]]
- $\sigma^2$ rappresenta la varianza, $\sigma_{xy}$ la covarianza
- **Sharpness Estimation Quality Index:** In order to estimate the sharpness of an image I of x\*y pixels, we compute the mean of intensity differences between adjacent pixels, taken in both the vertical and horizontal directions![[Pasted image 20241016174417.png]]
**alcuni dataset per face recognition:**
- **FERET:** first 250 images of the fa (frontal) group, corresponding to 116 subject
- **LFW:** (Labeled Face in the Wild): 480 images, the first 6 of the first 80 subjects
- **Scface:** 650 images of 130 subjects, corresponding to groups cam1-5 (visible light) of the subgroup dist3 (greater distance).
#### Misurare la qualità di una misura di qualità
- bisogna effettuare le misure di qualità sul dataset, e vedere come i valori sono distribuiti
- in questo modo possiamo capire il livello medio di qualità del dataset per ogni specifica misura
- possiamo comparare due o più misure calcolando il livello di correlazione tra i valori restituiti
- possiamo così scartare immagini troppo distorte a priori
- variando la tolleranza possiamo vedere come varia l'ERR del sistema
- bisogna ridurre il più possibile gli errori del sistema scartando il minor numero di campioni possibili dal dataset
#### Margine
Un altro approccio è tramite il concetto di “margine”, che viene calcolato
nel seguente modo: $M(t) = |FAR(t) FRR(t)|$
notare in corrispondenza dell'ERR, si ha $M(t) = 0$
### SRR
Cè una netta differenza tra misurare la qualità di unimmagine in input rispetto
al misurare laffidabilità di una risposta da parte del sistema.
Questultimo approccio viene chiamato indice SRR, ovvero un valore nel range [0, 1] che fornisce una misura di quanto un sistema, in fase di identificazione, riesce a separare bene soggetti genuini da soggetti impostori sulla base di un singolo probe.
Questo sistema utilizza una funzione φ che misura la quantità di “confusione” tra i possibili candidati.
Definiamo due funzioni φ
- relative distance
- density ratio
Presa la lista data in output da una fase di identificazione, si guarda nellintorno del risultato a rango 1. Se i soggetti a ranghi più bassi sono molto vicini, avremo una risposta poco affidabile, altrimenti se cè una buona distanza avremo una risposta affidabile.
Possibili esempi di φ sono:
- Relative distance
![[Pasted image 20241017083255.png]]
$$φ(p) = \frac{F (d(p, g1 )) F (d(p, g2))}{F (d(p, g|G| ))}$$
- Density ratio![[Pasted image 20241017083506.png]]
- questa funzione è meno sensibile agli "outlier", ovvero template con distanza anomalamente molto alta dal probe, e infatti performa meglio della funzione precedente
Definiamo poi φk , come quel valore che minimizza gli errori di φ(p), ovvero
i casi in cui, probe impostori hanno φ(pI) > φk e probe genuini hanno φ(pG) ≤
φk . Valori φ(p) molti distanti da φk avranno un SRR maggiore, quindi:
![[Pasted image 20241017083943.png]]
#### Template Updating
Un altro modo per aumentare la qualità e laffidabilità di un sistema è quella tramite laggiornamento dei template (evitando problemi come linvecchiamento).
Si può prendere un probe e aggiungerlo al gallery.
Questa operazione per una maggiore sicurezza deve essere fatta in soli due possibili modi:
- Supervisionata (supervised)
- Semi-supervisionata (semi-supervised)