Feature-Based Image Metamorphosis Thaddeus Beier Shawn Neely SIGGRAPH 1992
Image Morphing History Morphing is turning one image into another through a seamless transition Michael Jackson’s “Black or White” Cross-fading
morphing cross-fading Image morphing image #1image #2 warp
Image morphing Morphing = warping + cross-dissolving shape (geometric) color (photometric) Warp = feature specification + warp generation
Warp specification How can we specify the warp? 3.Specify corresponding spline control points interpolate to a complete warping function But we want to specify only a few points, not a grid
Warp specification How can we specify the warp? 1.Specify corresponding points interpolate to a complete warping function How do we do it?
Warp specification How can we specify the warp? 2.Specify corresponding vectors interpolate to a complete warping function The Beier & Neely Algorithm
Two basic styles Forward warping Reverse mapping
Single line-pair PQ to P’Q’
Single Line-pair Examples
Multiple Lines Length = length of the line segment, dist = distance to line segment a, p, b – constants. What do they do?
Resulting warp (complex!)
Full Algorithm
Animation Here's how you create an animated morph: GenerateAnimation(Image0, L0[...],Image1, L1[...]) begin foreach intermediate frame time t do for i=1 to number of line-pairs do L[i] = line t-th of the way from L0[i] to L1[i]. end Warp0 = WarpImage( Image0, L0[...], L[...]) Warp1 = WarpImage( Image1, L1[...], L[...]) foreach pixel p in FinalImage do FinalImage(p) = (1-t) Warp0(p) + t Warp1(p) end
Interpolating Lines Method 1: interpolating endpoints Method 2: interpolating midpoints, length and orientation.
Results
Dynamic Scene
Algorithm summary
Morphing & matting Extract foreground first to avoid artifacts in the background
Uniform morphing
Non-uniform morphing
Procedural Transformation
Multi-source morphing
Manipulating Facial Appearance through Shape and Color Duncan A. Rowland and David I. Perrett St Andrews University IEEE CG&A, September 1995
The Morphable Face Model shape vector S = (x 1, y 1, x 2, …, y n ) T appearance (texture) vector T = (R 1, G 1, B 1, R 2, …, G n, B n ) T Shape S Appearance T
The Morphable face model Assuming that we have m such vector pairs in full correspondence, we can form new shapes S model and new appearances T model as: If number of basis faces m is large enough to span the face subspace then: Any new face can be represented as a pair of vectors
Face averaging by morphing average faces
Subpopulation means Examples: –Happy faces –Young faces –Asian faces –Etc. –Sunny days –Rainy days –Etc. Average male Average female
The average face
Women In Arts
References Thaddeus Beier, Shawn Neely, Feature-Based Image Metamorphosis, SIGGRAPH 1992, pp35-42.Feature-Based Image Metamorphosis Detlef Ruprecht, Heinrich Muller, Image Warping with Scattered Data Interpolation, IEEE Computer Graphics and Applications, March 1995, pp37-43.Image Warping with Scattered Data Interpolation Seung-Yong Lee, Kyung-Yong Chwa, Sung Yong Shin, Image Metamorphosis Using Snakes and Free-Form Deformations, SIGGRAPH 1995.Image Metamorphosis Using Snakes and Free-Form Deformations Seungyong Lee, Wolberg, G., Sung Yong Shin, Polymorph: morphing among multiple images, IEEE Computer Graphics and Applications, Vol. 18, No. 1, 1998, pp58-71.Polymorph: morphing among multiple images Peinsheng Gao, Thomas Sederberg, A work minimization approach to image morphing, The Visual Computer, 1998, pp A work minimization approach to image morphing George Wolberg, Image morphing: a survey, The Visual Computer, 1998, pp Image morphing: a survey
Overview of Morphing Methods –Mesh Warping –Field Morphing –Radial Basis Function –Energy minimization –Multilevel Free-Form Deformation –Work minimization Image Morphing: A Survey George Wolberg 1998