Fast Face Detection Sami Romdhani Phil Torr Bernhard Sch ölkopf Andrew Blake Mike Tipping

27
Fast Face Detection Sami Romdhani Phil Torr Bernhard Schölkopf Andrew Blake Mike Tipping

description

Fast Face Detection Sami Romdhani Phil Torr Bernhard Sch ölkopf Andrew Blake Mike Tipping. Menu. Previous Work Support Vector Machine Sequential Evaluation Incremental Training Results Conclusion. 1. Classification Machine. Face Non-face. 2. Search.  825,880 patches - PowerPoint PPT Presentation

Transcript of Fast Face Detection Sami Romdhani Phil Torr Bernhard Sch ölkopf Andrew Blake Mike Tipping

Fast Face Detection

Sami Romdhani Phil Torr

Bernhard SchölkopfAndrew BlakeMike Tipping

Menu

Previous Work

Support Vector Machine

Sequential Evaluation

Incremental Training

Results

Conclusion

2. Search

Face detection = localising faces in imagesis possible, but slow

Rowley

ClassificationMachine Face

Non-face

1.

825,880 patchesComputationally intensive

7

1

)1(27.0450600l

l

Improving Speed : Rowley’s way

Instead of :

Learn on :

Rowley’s Detection rate decreases to 75%, speed : 5 to 7 s.

20

20

30

30

Improving Speed : our way

Idea : most of the patches can be easily discriminated For these, classification must be fast

Hence, classification complexity must be variable :classifier = set of cheap filters of increasing complexity

Support Vector Machines (Vapnik, 1995)

Support Vectors :

SVM Training

1 2 3 4 5 i 1i 2i 3i

Training

1 2 3 4 5 i 1i 2i 3i

D D D D D D D D D

Output

2. ClassificationIs this path a face ?

Support Vector Machines (Vapnik, 1995)

> T Face<= T Non-Face

Reduced Set Vector Post-Processing

xN

iii xw

1

)(

zN

iii zw

1

)(* xz NN with

2

,*min ww

iiz

by an iterative procedure

Find which minimise11, z2

11 )(zw

Find which minimise22 , z 2

2211 )()( zzw

… (Schölkopf et al. 1999):

Reduced Set Vectors :

Sequential Evaluation

Is patch a face ?

)( 111 zw 1111 ),( Txzky < 0 classified as a non-face>= 0 continue

)()( 22112 zzw 222112 ),(),( Txzkxzky < 0 classified as a non-face>= 0 continue

x

100

1100 )(

iii zw

100

100100 ),(i

ii Txzky

< 0 classified as a non-face>= 0 use the full SVM

xN

iii bxxky ),(

< 0 classified as a non-face>= 0 classified as a face

Sequential Evaluation Example: Original SVM

0 % training error, 31 Support Vectors

Sequential Evaluation Example

41.7 % training error, 1 Reduced Vectors

Sequential Evaluation Example

36.7 % training error, 2 Reduced Vectors

Sequential Evaluation Example

21.7 % training error, 3 Reduced Vectors

Sequential Evaluation Example

5 % training error, 4 Reduced Vectors

Sequential Evaluation Example

0 % training error, 9 Reduced Vectors

Sequential Evaluation Example

0 % training error, 13 Reduced Vectors

Rejection Example

F1 : 3.7%

F10 : 0.72%

f20 : 0.003%

f30 : 0.00005%

312x400 image, 7 subsampling level, 10.4 s.Average number of filters per patch : 1.51

First filter : 19.8 % patches remaining

1280x1024 image, 11 subsampling levels, 80sAverage number of filter per patch : 6.7

Filter 10 : 0.74 % patches remaining

1280x1024 image, 11 subsampling levels, 80sAverage number of filter per patch : 6.7

Filter 20 : 0.06 % patches remaining

1280x1024 image, 11 subsampling levels, 80sAverage number of filter per patch : 6.7

Filter 30 : 0.01 % patches remaining

1280x1024 image, 11 subsampling levels, 80sAverage number of filter per patch : 6.7

Filter 70 : 0.007 % patches remaining

1280x1024 image, 11 subsampling levels, 80sAverage number of filter per patch : 6.7

Incremental Training

Original Training Set

SVM Training

New Images

Detection with very low thresholds

Detected Patches

Support Vectors

Pre-Processing

We shift pre-processing to training time, instead of detection time

(Rowley et al. 1998)

Results

Detection rate False Positive

Rowley 1 - best detection 91.7 % 0.0006 %

Rowley 2 - lowest FP 77.9 % 2.4*10-6 %

MSR Cam 1 - best detect. 80.6 % 0.0012 %

MSR Cam 2 - lowest FP 57.8 % 0.00004 %

Future Work• Investigate fast preprocessing at detection time

• Change the Reduced Set Vector algorithm so that it takes the data into account :Now : Future :

• Change the kernel so that it takes info about face variation into account :Now : Future :

• Try Tipping’s Relevance VM instead of Reduced VM

• Colour

• Once a face is detected, use that prior information

• Recode by a good SDE

2

,*min ww

iiz

j

jjz

xwxwii

2

,)(*,)(,min

22:),( xx

i

i

exxk

xxi

iexxk1

:),(

Conclusion

New Fast Face Detection algorithm :

• Based on a early rejection classification

• Speed dependent on the complexity of the data

• Accuracy-wise, not yet on a par with state of the art, but promising enough