1 similarity-based matching for face authentication christophe rosenberger luc brun icpr 2008

22
1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Upload: winfred-webb

Post on 13-Dec-2015

223 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

1

Similarity-based matching for face authentication

Christophe Rosenberger

Luc Brun

ICPR 2008

Page 2: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

2

outline

Introduction Image description Dissimilarity measure Pattern modeling Experimental results

Page 3: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Introduction

Propose in this paper a face authentication method based on a similarity measure

Find interest key points SIFT descriptor is used

A graph is then built where nodes correspond to these keypoints Model the authentication problem as a graph matching process

3

Page 4: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

4

Image description

SIFT (Scale Invariant Feature Transform) Applied locally on key-points Based upon the image gradients in a local neighborhood SIFT detector

Scale-space extrema detection Keypoint localization

SIFT descriptor Orientation assignment Keypoint descriptor

Page 5: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

5

SIFT detector

Detection of scale-space extrema DoG(Difference-of-Gaussian) filter for scale space

Keypoint localization (local extrema)

X is selected if it is larger or smaller than all 26 neighbors

Page 6: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Gradient orientation

Gradient magnitude

6

SIFT detector & descriptor Accurate keypoint localization

Reject points with low contrast (flat) Elimination edge responses

Orientation assignment To make the feature

invariant to rotation Find local major

orientation Orientation histogram for a window size

Local image descriptor 16x16 array of locations in scale space Create array of orientation histograms 8 orientations x 4x4 histogram array (128D)

Page 7: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Dissimilarity measure

Each individual is described by a set of invariant features Y (I) = {ki = (si, xi, yi)}, i = 1 : N(I) Si is the SIFT invariant descriptor

(xi, yi) its position in the original image I N(I) the number of detected keypoints in the image I

Database image {Y (Ii), i = 1 : M}

Dissimilarity between two sets of points such as Y (I1) and Y (I2) Often modeled as a weighted bipartite graph matching problem

Greedy algorithm Hungarian method Hybrid method

7

Page 8: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Greedy algorithm Weighted bipartite graph G(U,V,E,W) Given the graph G , scan the set of edges and find an edge (u,v)

with the smallest weight Match u with v and remove the edges incident on u and those

incident on v Repeat the above step until every node in U is matched to some

node in V

8

105

25

2012

3

49

6

3

4

5

Page 9: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Greedy algorithm

The greedy algorithm does not always produce a matching of minimum weight

Hungarian method A well-known algorithm for finding a minimum weight matching in

a bipartite graph Node in U by u1, u2,… un

In V by v1, v2,… vn

x ij = 1 if ui is matched with vj and 0 otherwise

subject to constraints

9

1

16

0

2

n

i

n

jijijxwMin

1 1

nixn

jij 2,1,1

1

njxn

iij 2,1,1

1

Each node in U ismatched to exactly one node in V and vice versa

A

B D

C 16

0

A

B

C

D

Page 10: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Hungarian method - ExampleR1 R2 R3 R4

B1 8 17 3 23

B2 39 4 11 20

B3 13 2 41 6

B4 22 8 9 2

10

R1 R2 R3 R4

B1 8 17 3 23 -3

B2 39 4 11 20 -4

B3 13 2 41 6 -2

B4 22 8 9 2 -2

Step 1First for each row we subtract the row

minimum from the rest of the rowR1 R2 R3 R4

B1 5 14 0 20

B2 35 0 7 16

B3 11 0 39 4

B4 20 6 7 0

-5 -0 -0 -0

Step 2Then for each column we subtract the

column minimum from the rest of the column

R2

B1

B2

B3

B4

R1

R3

R4

Page 11: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Hungarian method - Example

11

R1 R2 R3 R4

B1 0 20 0 26

B2 24 0 1 16

B3 0 0 33 4

B4 9 6 1 0

R1 R2 R3 R4

B1 0 14 0 20

B2 30 0 7 16

B3 6 0 39 4

B4 15 6 7 0

Step 3Cover the min number of rows or columns required to cover all of the zeros in the matrix

If the # of line = the # of rows/columns in the matrix then we are finished

Otherwise, we have to go to the next step

Step 41.Find the min value not covered (B3-R1) 2.subtracted from each uncovered entry and added to each entry covered by both a vertical and horizontal line (B1-R2 & B1-R4)3. Step 3 is then repeated

Result:Blue1 - Red3Blue2 - Red2Blue3 - Red1Blue4 – Red4

R2

B1

B2

B3

B4

R1

R3

R4

3

4

13

2

R1 R2 R3 R4

B1 0 14 0 20

B2 30 0 7 16

B3 6 0 39 4

B4 15 6 7 0

R1 R2 R3 R4

B1 0 14 0 20

B2 30 0 7 16

B3 6 0 39 4

B4 15 6 7 0

Page 12: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Hybrid method

12

We formulated the point matching problem in terms of minimum weight matching in a bipartite graph

In a real world situation, this is not always appropriate Feature points extracted from two corresponding images First image are denoted by a and b Second image are denoted by c and d

One might argue that since b and c both have the same feature value of 100,we should match them together and completely ignore a and d

Page 13: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Hybrid method

Feature points forming tight clusters in the feature space can be avoided by a simple combination of the greedy method and the Hungarian method

Combined algorithm We first apply the Hungarian method to get a matching M1

Apply the greedy algorithm to get a matching M2

form their intersection M=M1∩M2

13A bipartite graph Hungarian method Greedy algorithm Combinedmatching

Page 14: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Dissimilarity measure

Such a weighted bipartite graph matching method Optimizes a global matching score May thus be sensible to outliers

We thus rather use the following matching method Given two points and , we say that x is

associated to y iff :

C is an arbitrary threshold d(., .) denotes the Euclidean distance between SIFT descriptors y’ denotes any point of Y (I2) whose distance to x is minimal but greater

than d(x,y) 14

1IYx 2IYy

yxCdyxdandzxdyxd IYz ,,,min,2

zxdyxd yxdzxdIYz ,min, ),(),(,2

Page 15: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Dissimilarity measure The significance of the necessary gap between d(x, y) and d(x, y’) is

encoded by the constant C y is associated to x

x is the closest point from y among Y (I1) second smallest value of this distance d(y, x’) satisfies d(y, x) < Cd(y, x’)

X is matched to Y iff x is associated to y and y is associated to x

If Y (I1) and Y (I2) do not define any matching point Both sets have an infinite distance

Otherwise The set of matching points M1 of Y1 and M2 of Y2 may be computed

sequentially If we cannot find two couples of points within Y (I1) × Y (I2) with a

similar distance, the relationship “is matched to “ induces a bijective mapping Φ from M1 to M2

15

Page 16: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Dissimilarity measure

First step The above procedure classify both sets Y (I1) and Y (I2)

Dissimilar (case M1 = M2 =ø) A set of N = |M1| = |M2| couples (x, Φ(x)) of matched points

Second step Take into account the spatial relationship of the points among M1 & M2

Use one of the four pattern representations Using the locations of each matched keypoint Weighted graph

Edges are weighted by the similarity of the adjacent points

The matching between M1 and M2 being encoded by the application Φ Encode the adjacency matrices of both graphs A line or a column encoding the adjacency relationships

Point x of the first matrix Φ(x) in the second matrix 16

Graph Adjacency matrix

Page 17: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Pattern modeling

Spatial relationship between keypoints Using graph representations Connect keypoints by considering their ”local neighborhoods” Each keypoint corresponds to a vertex in the neighborhood

graph which connects “close” vertices Epsilon-neighborhood graph (ENG)

Two vertices are connected if the distance of the corresponding keypoints is less than epsilon

A completely connected graph (CCG) epsilon greater than the maximal distance between keypoints.

17

Page 18: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Pattern modeling Symmetric k-nearest neighbor graph (SKNG)

Two vertices V1, V2 are connected if V1 is among the k-nearest neighbors of V2 or vice versa

Mutual k-nearest neighbor graph (MKNG) Two vertices V1, V2 are connected if V1 is among the k-nearest

neighbors of V2 and vice versa

Given both adjacency matrices The quality of the match is estimated

using the squared Euclidean

distance which provides a global

measure of the dissimilarity between both graphs

18

Page 19: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Experimental results

Database AR face database This face database was created by Aleix Martinez and Robert

Benavente in the Computer Vision Center (CVC) at the U.A.B It contains over 4,000 color images 126 people's faces (70 men and 56 women)

26 image per individual

Images feature frontal view faces Different facial expressions, illumination conditions, and occlusions (sun

glasses and scarf).

19

Page 20: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Experimental results

Tested the four graph representations Two parameters have to be set

C is used in the first step of the keypoints matching C induce a restrictive selection of matching points

K for the three graph representations It corresponds to the number of neighbors considered in the graph

definition

The dissimilarity measure gives a coefficient that can be interpreted as a confidence criterion on the fact that two faces belong to different individuals

Gives the experimental results on the AR face database

on a ROC curve20

Page 21: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Experimental results

We use the FAR (False Acceptance Rate) and FRR (False Rejection Rate) criteria to analyse the behavior of an algorithm

21

The representation based on a Completely connected graph (CCG) gives the worst resultThis means that the selection of edges is necessary

Mutual k-nearest neighbor graph (MKNG) with k=5 and C=0.8 provides

Page 22: 1 Similarity-based matching for face authentication Christophe Rosenberger Luc Brun ICPR 2008

Conclusion

We proposed in this paper a face authentication method based on a similarity measure

A graph representation based on SIFT invariant keypoints is used

The graph definition allows us to take into account their spatial relationships

22