53
Face Recognition Using a Line Edge Map Yongsheng Gao and Maylor K.H. Leung at Nanyang Tech. University IEEE Pattern Analysis and Machine Intelligence 2002 Slides by David Anthony Torres Computer Science and Engineering — University of California at San Diego

Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Recognition Using a Line Edge Map

Yongsheng Gao and Maylor K.H. Leung at Nanyang Tech. University

IEEE Pattern Analysis and Machine Intelligence 2002

Slides by David Anthony TorresComputer Science and Engineering — University of California at San Diego

Page 2: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Interest Points Vs. Edge Maps

� Interest point detectors are popular!SIFT, Harris/Forstner

� What about edge information?!Can carry distinguishing info too.! Interest points don’t capture this info

Page 3: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line Edge Map

� Humans recognize line drawings well.!Maybe computer algorithms can too.

� Benefits of using edge information:!Advantages of template matching and geometrical

feature matching:" Partially illumination-invariant" Low memory requirement" Recognition performance of template matching

Page 4: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line Edge Map

� Takács (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use Hausdorff distance to measure the similarity

between two sets of points I1 and I2.

Page 5: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Hausdorff Distance

� i and j are edge pixel positions (x,y).� For each pixel i in I1

Find the closest corresponding pixel j in I2Take the average of all these distances ||i-j||.

� Calculated without explicitly pairing the sets of points.

� Achieved a 92% accuracy in their experiments.

211 2

1

1( , ) min || ||| | j Ii I

h I I i jI ∈∈

= −∑

Page 6: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line Edge Map

� Takács Edge Map doesn�t consider local structure.

� Authors introduce the Line Edge Map (LEM)

� Groups edge pixels into line segments.!Apply polygonal line fitting to a

thinned edge map

Page 7: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line Edge Map

� LEM is a series of line segments.!LEM records only the endpoints

of lines.!Further reduces storage

requirements.

Page 8: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line-Segment Hausdorff Distance (LHD)� Need a new distance measure between sets of

line segments.� Expect it to be better because it uses line-

orientation. � First we�ll see an initial model�� Add to the model to make it more robust

!Encourage one-one mapping of lines!Encourage mapping of “similar” lines.

Page 9: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line-Segment Hausdorff Distance

� Given two LEMs S=(s1,s2,�sp) and T=(t1,t2,�sq)� The LHD is built on the vector d(si,tj)

!d() represents the distance between two lines segments

Page 10: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line-Segment Hausdorff Distance

smallest intersecting angle

Page 11: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line-Segment Hausdorff Distance

� f() is a penalty function: f(θ) = θ2/W!Higher penalty on large deviation

� W is determined in training.

Page 12: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line-Segment Hausdorff Distance

min

Page 13: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line-Segment Hausdorff Distance

�In general lines will not be parallel�So rotate the shortest line

Page 14: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Line-Segment Hausdorff Distance� Finally,

� Primary line-segment Hausdorff Distance (LHD)

( , ) max( ( , ), ( , ))H I J h I J h J I=where

1( , ) || || min ( , )|| || j Ji I

i I

h I J i d i ji ∈∈

= ⋅∑∑

Page 15: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Some Problems�

� Say T is an input LEM, M is its matching model LEM, and N is some other non-matching model.

� Due to segmentation problems it could be the case that

H(T,M) >> H(T,N)� Keeping track of matched line-pairs could

help.

Page 16: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Neighborhoods

� Positional neighborhood Np

� Angular neighborhood Na

� Heuristic: lines that fall within the neighborhood are probably matches.

Θ-neighborhood

Line Segment in I

Matching Line-segmentin J

Page 17: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Neighborhoods

� If ≥1 line falls into the neighborhoods we call the original line segment I, a high confidence line.

Θ-neighborhood

Line Segment in Iis a High Confidence Line

Matching Line-segmentin J

Page 18: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

High Confidence Ratio

� Nhc is the num. of high confidence lines in a LEM.

� Ntotal is the total num. of lines in a LEM.

Input Model

Page 19: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

New Hausdorff Distance

� Wn is a weight. � Dn is the average number of lines (across input and

model) that are not confidently-matched, i.e.

2 2'( , ) ( , ) ( )n nH T M H T M W D= +

RT and RM are the high confidence ratios for input and model respectively

Page 20: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Summary

� Start with to LEM�s

� Calculate Hausdorff Distance

Input Model

( , ) max( ( , ), ( , ))H I J h I J h J I=

1( , ) || || min ( , )|| || j Ji I

i I

h I J i d i ji ∈∈

= ⋅∑∑

Page 21: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Summary

Page 22: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Summary

� Finally we take into account the effect of neighborhoods

2 2'( , ) ( , ) ( )n nH T M H T M W D= +

Page 23: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Free Parameters

� We have four free parameters to fix!(W, Wn, Np, Na)

" θ2/W = f(θ) = dθ"

"Neighborhoods Np, Na

� Use simulated annealing to estimate!With probability

2 2'( , ) ( , ) ( )n nH T M H T M W D= +

Page 24: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Results

Page 25: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Recognition under Controlled Conditions

Bern Database

AR Database

Page 26: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Recognition under Controlled Conditions

Page 27: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Recognition under Controlled Conditions

Page 28: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Recognition under Controlled Conditions

w/o neighborhood heuristic

Page 29: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Sensitivity to Size Variation

� Used the AR data base.� Applied a random scaling factor of ±10%

Page 30: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Recognition Under Varying Lighting

Page 31: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use
Page 32: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Recognition Under Facial Expression Changes

Page 33: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use
Page 34: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

View Based Identification � �Leave One Out� Experiment.

Page 35: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Recognition Under Varying Pose

Page 36: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use
Page 37: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Additional Material�

Page 38: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Matching Time for LEM

� LEM takes longer than eigenface! Time O(Nn) > O(Nm)

" N is # of faces" n is avg. # LEM-features" m is # eigenvectors

� Authors propose a face pre-filtering scheme!Idea: filter out faces before performing

matching.

Page 39: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Prefiltering

� Quantize an LEM into :

� Where Γ is the sum of line segment lengths

where υ is the angle if the angle is <90 degrees.

Page 40: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Pre-filtering

Page 41: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Pre-filtering

Page 42: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Pre-filtering

Page 43: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Pre-filtering

Page 44: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Pre-filtering

Page 45: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Pre-filtering

Page 46: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face Pre-filtering

Page 47: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Face -Prefiltering

Page 48: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Now for some hand-waving action... � Rotate the Gaussian so that its axis aligned� Perform a change of coordinates into a polar system

Page 49: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

To summarize

� Given a probability F(d) we can obtain a constant density ellipse of the form:

� where

Page 50: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

To summarize

� So if the error vector satisfies:

� then the model is classified as a potential face.

Page 51: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use

Pre-Filtering Results

� Train to find parameter above.� Small rho indicates vector components are nearly independent.

Page 52: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use
Page 53: Face Recognition Using a Line Edge Map · Ł TakÆcs (1998) used edge maps for face recognition.!Apply edge-detector to get a binary input image I! I is a set of edge points.!Use