320 likes | 489 Views
Triangle-based approach to the detection of human face. March 2001 PATTERN RECOGNITION Speaker Jing. AIP Lab. Outline. Introduction Segmentation of potential face regions Face verification Experimental results and discussion. Introduction 1/3.
E N D
Triangle-based approach to the detection of human face March 2001 PATTERN RECOGNITION Speaker Jing. AIP Lab
Outline • Introduction • Segmentation of potential face regions • Face verification • Experimental results and discussion
Introduction 1/3 Given a still or video image, detect and localize an unknown number of faces • Security mechanism (replace key, card,passwd) • Criminology (find out possible criminals) • Content-based image retrieval • video coding • video conferencing • Crowd(大眾) surveillance and intelligent human-computer interfaces. Problem Applications
Introduction 2/3 Requirement * achieve the task regardless of - illumination, orientation, and camera distance * Speedy and correct detection rate Why difficult ? Human face is a dynamic object High degree of variability in appearance (面孔的多變性)
Introduction 3/3 • Drawbacks of the papers until now • Free of background • Cannot detect a small face ( < 50 * 50) • Cannot detect multipleface ( >3) • Cannot handle the defocus and noise • Cannot conquer the partial occlusion of mouth or wear sunglasses • Cannot detect a face of side view
Overview of the system 1. Form 4-connected components 2. Find the center for each one 1. Search any 3 center that form an isosceles or right triangle 1. Normalize the size of potential face regions 1. Calculate the weight by mask function
Segmentation • 4 step for segmenting the potential face • Convert the input image to a binary image • Find the blocks using 4-connected component • Search the triangle • Clip the satisfy triangle region
Step1: Convert the image • RGB Color Image • Eliminating the hue and saturation • Gray-level binary image • Remove noise using opening operation • Eliminate holes by the closing operation Gray-level < T are labelled as black Gray-level > T are white
Step 2:Form the blocks & Searching triangle • Form the blocks by using 4-connected components algorithm • Locate the center of each block • Searching the triangle • Frontal view (isosceles triangle) • Side view (right triangle)
i k j Step 3: Frontal view (isosceles triangle) • Isosceles triangle: D(ij)=D(jk) • Matching rule: a c b mouth to mouth Eye to mouth
Clipping the region 2/4 x2 x1 d Xi,Yi Xk,Yk X1=X4=Xi – 1/3 d X2=X3=Xk + 1/3 d Y1=Y2=Yi + 1/3 d Y3=Y4=Yj – 1/3 d Xj,Yj
i j 1 2 k Side view (right triangle) 3/4 • Right triangle • Matching Rules: (25% derivation) • 0.4 a < | a-c | < 0.6 a • 0.13 a < | a-b | < 0.19 a • 0.29 a < | b-c | < 0.44 a b c a
Clipping the region 4/4 d/6 1.2d X1=X4=Xi-d/6 X2=X3=Xi+1.2d Y1=Y2=Yi+d/4 Y3=Y4=Yi-d d/4 j d i k d
Speedup of searching • How many triangles ? • If the mouth & right eye are already known, => the left eye should be located in the near area. k i j
Face verification • 3 steps in verification Step1: Normalizationthe potential facial areas • 60 * 60 pixels Step 2: Calculating the weight by maskingfunction Step 3:Verificationby thresholding the weight Question 1 . How to generate the face mask ? Question 2 . How to calculate the weight ?
Question 1 . How to generate the face mask ? • Read the 10binary training masks • Add the corresponding entries • Binarized the added mask Ex:
Question 2 . How to calculate the weight • Eye and mouth are labeled as black, others as white • If the pixels in the P is equal to T • Both Black: Weight + 6 • Both White : Weight + 2 • White in P and black in T • Weight –2 • White in T and black in P • Weight - 4 P: potential facial region T: Training mask
Verification • For each potential facial regions • Threshold value is given for decision making • Front view => 4000 < threhold < 5500 • Side view => 2300 < threhold < 2600 • Finally, eliminate the regions that • Overlap with the chosen facial region
Result—frontal view Original Binary Isosceles triangle clipping Normalized
Result – Side View Original Binary Isosceles triangle Normalized clipping
Experimental results • 500 test images • included 450 different persons • 600 faces that are used • 11 faces cannot be found correctly • 98% success rate
Experiment result • Scaling: 5*5 to 640*480 • Light condition
Experiment Result • Distinct position • Defocus face
Experiment Result • Changed expressions
Experiment Result Noise Occlusion Sunglasses cartoon Chinese doll
2.5 sec 28 sec Experiment Result Target machine: PII 233 PC
Experiment Result Multi-faces and video stream
Experiment Result False cases Too Dark Right eye being occluded
Conclusion • Manage different sizes, changed light conditions, varying pose and expression • Cope with partial occlusion problem • Detect a side-view face • In the future, using this algorithm for solving face recognition problem
My opinions • The processing time depend on the complexity of the image. • Real-time requirement was unachievable. (some images need 28 sec to process)