automatic skin smoothing - college of engineering - … algorithm for automatic skin smoothing in...

13
An Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical and Computer Engineering, Purdue University ‡Hewlett-Packard Company ©C.H.Lee, 2009 *This work was supported by the Hewlett-Packard Company.

Upload: tranthuan

Post on 18-Mar-2018

214 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

An Algorithm For Automatic Skin Smoothing in Digital PortraitsC. Lee†

M. Schramm‡ M. Boutin†

J. P. Allebach†

†Electrical and Computer Engineering, Purdue University‡Hewlett-Packard Company

©C.H.Lee, 2009*This work was supported by the Hewlett-Packard Company.

Page 2: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Smoothing Framework

©C.H.Lee, 2009

(1 ) ( (1 ) )F

Y I S I I S! != " + + "

Y: Output imageI: Input image, IF: FilteredimageS: Skin mapα: opacity factor (set to 0.5)

Key toautomatic

skinsmoothing

Page 3: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Map Generation

Face feature location

Skin and non -skin data sampling

Gaussian mixture model (GMM)

estimation for skin and nonskin data

Skin segmentation map generation

using Bayesian segmentation

Portrait

Face box mask

with features

unmasked

Neck area expansion

Skin map

Skin segmentation map

_

©C.H.Lee, 2009

Page 4: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Face Feature Location (1):Face Detection

! Multi -view face detector based on the Viola -Jones technique *

! Viola -Jones detector: cascading classifiers

!Early stage: quickly discards simple non -face region

!Latter stage: classify more complex cases

! Original Viola -Jones detector detect frontal, upright faces

! Multi -view detector

!In-plane rotations (0, 90, 180, and 270 °)

!Out-of-plane rotations (left and right profile)

Face box found

*P. Viola and M. Jones, “Rapid object detection using a boosted cascade of simple

features, ” Proc. IEEE Computer Vision and Pattern Recognition , 2001.

©C.H.Lee, 2009

Page 5: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Face Feature Location (2):Face Features

! Seven features of the face are

identified: chin, mouth, nose,

eyes (2), eyebrows (2)

! Each feature is represented by

a polygon defined by a set of

points

! Total of 87 points used

! The polygons are aligned using

the active shape model (ASM)*

*T. F. Cootes, “Statistical models of appearance for computer vision ”, online technical

report

©C.H.Lee, 2009

Page 6: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Face Feature Location (3):Feature Alignment by ASM

! ASM is a two -stage iterative algorithm

! First stage: optimizes the feature location

!For each feature point, a new position is searched for in its lo cal

neighbors which fits the texture model

!We use Zhang ’s ASM method*: boosted local texture model

learned by Real AdaBoost from a large training set based on LUT -

type Harr-like features

! Second stage: optimizes the shape

parameters based on Bayesian framework

!Shape parameters are updated to new

ones which best fit these new positions

Face feature found

*L. Zhang et al ., “Robust face alignment based on local texture classifier, ” ICIP 2005

©C.H.Lee, 2009

Page 7: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Map Generation (1):Skin and Non -Skin Data Sampling

! Skin mask creation procedure

! Cut lower face -skin area excluding mouth and nostril

! Unmask eyes and eyebrows

! Erode the mask by binarization after Gaussian blur

! Non-skin mask creation procedure

! Estimate face ellipse using lower face boundary points

! Create neck area

! Unmask face ellipse and neck area (skin region)

! Re-mask eyes, eyebrows, and lips (non -skin region)

©C.H.Lee, 2009

Page 8: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Map Generation (2):GMM Estimation*

! Each skin and non -skin class is modeled as a GMM

! Input data is a 3 -dimensional vector in RGB with length smaller than 1000

! Initial number of cluster K is set to 20, the final K is usually smaller than 10

*C. Bouman, “CLUSTER: an unsupervised algorithm for modeling Gaussian mixture .”

Initialize numberof clusters K

Initialize clusterparameters

Perform soft classification of each

pixel using cluster parameters.

Reduce number of

clusters by combining two nearest clusters.

Measure goodness of fit using Rissanen crietrion.

If best fit so far , then save result.

Re-estimate cluster parameters. (mean

vectors and covariance matrices)

EM algorithm

Only one cluster?

Exit

©C.H.Lee, 2009

Page 9: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Map Generation (3):Bayesian Segmentation

! Using the estimated GMM, we segment the

portrait into skin and non -skin regions by

Bayesian segmentation

! Multiscale random field (MSRF) in conjunction

with sequential MAP estimator (SMAP) is used *

! + Skin regions are identified with high accuracy,

especially hair and beard regions

! - some area missing; false positives in the

features and backgrounds

*C. Bouman and M. Shapiro, “A multiscale random field model for Bayesian image

segmentation ” IEEE TIP, 1994

Skin segmentation map

Skin GMM

Non-skin GMM

PortraitSkin segmentation

map

Bayesian

segmentation

©C.H.Lee, 2009

Page 10: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Map Generation (4):Combining Segmentation Map and Face

Box, Neck Expansion

©C.H.Lee, 2009

Page 11: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Smoothing Result

Original portrait Enhanced portrait

©C.H.Lee, 2009

Page 12: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Skin Smoothing Result (cont ’d)

Original portrait Enhanced portrait

©C.H.Lee, 2009

Page 13: Automatic Skin Smoothing - College of Engineering - … Algorithm For Automatic Skin Smoothing in Digital Portraits C. Lee† M. Schramm‡ M. Boutin† J. P. Allebach† †Electrical

Conclusions

! An algorithm for automatic skin smoothing has been

successfully implemented

! The region of interest can be found by combining the

face feature information and appropriate segmentation

! The skin map obtained by the Bayesian segmentation

using SMAP and MSRF with skin and non -skin GMM as

a prior model produced very accurate skin map

©C.H.Lee, 2009