a fast algorithm for tracking human faces based on chromatic histograms pattern recognition letters,...
TRANSCRIPT
A fast algorithm for tracking human faces based on chromatic histograms
Pattern Recognition Letters, 1999
Speak: M. Q. Jing4/23/2001
國立交通大學 自動化資訊處理 lab
Outline Introduction Chromatic histogram operations
Creation of a chromatic histogram Backprojection of a chromatic histogram
Face tracking algorithm Localization of a face region Tracking the face in the sequences
Experimental results
Introduction The solutions on motion
Motion Estimate (Haralick, Horn, Desilva) Precise approximation of the motion [DrawBack] heavy computation
Color histogram approach Insensitive to rotation,scaling,deformation Immune to the noises and cammera’s small
changing.
Chromatic histogram operations
Color Model: HSI Color Model
2/12
1
)])(()[(
)]()[(21
cos
)],,[min()(
31
)(3
1 I
HSI RGB
bgbrgr
brgrH
bgrbgr
S
bgr
Why do we use HSI
The chromaticity and intensity is separated Reduce the effect of illumination
Reduce the dimension of histogram from 3 to 2 Speedup the process
Creation of a chromatic histogram
Each of the H and S axes are quantized into 32 levels.
SaturationHue
sample(x,y)=(R,G,B)-> map to (h,s)->Quantized->Histogram
Create the histogram Create the face model to get the
skin color histogram
SaturationHue
Backprojection of a chromatic histogram
SaturationHue
SaturationHue
Model
Test
1
1.which bin 2.get value 2
Backprojection of a chromatic histogram
Algorithm: Step 1: bx,y=M h(Cxy) , Step 2: Convolving bx,y with a blurring mask
Where h(Cxy)= the bin corresponding to Cxy, M I= the histogram of the Model with ith bin.
More example
Face tracking algorithm How to find a face in the initial
frame Face region lies within a color range
Face region
Historgram foreach region
Face tracking algorithm Compute an average of the face histor
grams
Face model histogram F (100 faces histogram)
Face tracking algorithm
1
2
3
Steps
1. Backproject2. Binarized & CC3. Search a ellipse
Finding an Ellipse An Ellipse which best fits the
connected component is computed.
CCy)(x,
iji,
2,00,21,1
00010010
),(ij
)()x-(x moment central
2/)]/()arctan[(2n orientatio
/,/mx :)y,x(center
),(m :monent
j
CCyx
ji
yy
mmym
yxfyx
Least-Squares Curve Fitting Length of major (a) and minor (b)
axis:
8/1
),(
2
3
),(
2
4/1
8/1
),(
2
3
),(
2
4/1
]cos)(sin)[(
]sin)(cos)[(
)/4(
]sin)(cos)[(
]cos)(sin)[(
)/4(
CCyx
CCyx
CCyx
CCyx
yyxx
yyxx
b
yyxx
yyxx
a
Proof: computer and robot vision I, page 623
Finding an Ellipse The golden ratio of ellipse is picked
up.
)1987 (Farkas,
)2/5(1face ideal afor ratioGolden
Tracking the face region Step 1: a new face model histogram F is constructed fr
om the detected face. More precise face model, because tracking the s
ame face.
Step 2: Backprojected onto the next frame.
Step 3: An elliptical mask is used for searching No ellipse finding,saving the computation cost
why
why
Tracking the face region Step 4: compute the sum of the
values of all pixels within the elliptical mask.
Step 5: return maximum response location
Tracking the face region Prevent the searching cost for (left->right) & ( top -> down) Using motion information :
(Xi+1,Yi+1)=(2Xi - Xi-1 , 2Yi - Yi-1)
Xi-1 ,Yi-1Xi,Yi
(Xi+1,Yi+1)
Experements UperSPARC RISC with 60MHz, 64 MB Real-time processing
7 frames/sec (160x120) 3.5 frames/sec (240x180)
Face tracking (small face)
Face tracking (large face)
error
Face tracking results using skip factor 5
change
error
changeerror
Conclusion A histogram backprojection only need
s a simple replacement operation Insensitive to small deformation and
occlusion Because we use color information
Two feature are used Face shape & chromatic
Conclusion It cannot handle non-forward faces
Because we use a ellipse model to find a face.
Zoom-in and Zoom-out We fixed the ellipse size due to
reducing the computing cost.
Analysis 因為 Tracking algorithm 在第一張人臉
抓取後 , 即 update face model histogram,
=> 所以第一張的人臉一定要抓的準確 ,否則將造成一系列的錯誤
Face color histogram 是假設大家的膚色類似 , 但是若是 testing 有黑人 , 白人 ,則會造成 histogram 分佈加大 , 使得 backprojected 圖形更難處理 .