Presentation slides
Download
Report
Transcript Presentation slides
Project Image Morphing
Presented By
Sharmila Gupta
Digital Image Manipulation
Simple pixel Modification
Interpolation/ Extrapolation
Compositing
Convolution
Dithering
Warping
Morphing
Simple Pixel Modification
Applying same degree of change in every pixel
Convert to Gray f(r,g,b) = .3r + .52g + 10b
Threshold
if v > threshold then f(v) = 1 else f(v) = 0
Invert
f(v) = 1-v
Brighten/darken f(v) = ßv for ß >= 0
Image Interpolation/Extrapolation
Offers a general, unifying approach to many common point and area
image processing operations.
Brightness, contrast, saturation, tint, and sharpness can all be controlled
with one formula, separately or simultaneously.
Change Contrast
Original
Change
Saturation
Original
More Contrast
More Saturated
Less Contrast
Less Saturated
Image Interpolation/Extrapolation
Brighten/darken
Original
More Bright
Less Bright
Noise removal
Image with “impulse” noise
median filtered image
Compositing
Compisiting images involves combining separate image
layers into one
Layers may be moved and arranged.
Original
Composite
Convolution
Used for different image processing, removing blur-ness, defining
edge, restore special effect by filtering, masking or other technique.
Edge
Enhancement
Original
Edge Defined
Blur-ness
Blurred
De-blurred
Dithering
Monitors and image files limited to 256 colors can create
the illusion of more colors by Dithering the available
colors in a scattered pattern, approximating the desired
color.
Image editors often use dithering to convert true color
images to indexed color images.
Dithered Image
True-color Image
What is Image Morphing?
Image Morphing
It comes from the word Metamorphosis
Metamorphosis: Change shape, size, form or appearance
What is Image Morphing ?
Morphing can be defined as:
Transition from one object to another
Process of transforming one image into another.
An animation technique that allows you to blend two
still images, creating a sequence of in – between
pictures that when played in Quick Time,
metamorphoses the first image into the second.
What is Image Morphing ?contd..
A process of transforming two images where it seems
like the first melts, dissolves and re-arranges itself to
become the second one
How is Morphing done?
General View
It is broadly two-step process:
First image is gradually distorted and is faded out
The second image starts out totally distorted toward the first
and is faded in.
Classification of Morphing
Morphing classified into three types
Image-based Method
Volume-based approaches
Boundary representations (B-rep) -based approaches
Image-based Morphing
Two steps are:
Warping two images to make them having the same shape
Cross dissolving the resulting images
Image-based Morphing
WARPING ?
Image-Based Morphing - Warping
A warp is a 2-D geometric transformation and generates
a distorted image when it is applied to an image
Warping an image means apply a given deformation to it
Two ways to warp an
image:
Forward Mapping
Reverse Mapping
Forward Mapping
Each pixel in the source image is mapped to an
appropriate pixel in the destination image.
Source Image
Destination Image
Some pixels in the destination image may not be
mapped
Destination Image
Source Image
Reverse Mapping
This method goes through each pixel in the
destination image and samples an appropriate
source image pixel
All destination image pixels are mapped to some
source image pixel.
This mapping used in the Beier/Neely line
morphing method.
Cross Dissolving
A cross-dissolve is a sequence of images which
implements a gradual fade from one to the other.
Very primitive
No smooth transition
Image-based Morphing - Example
Image-based Morphing - Example
Source Image
Destination Image
Do Morphing
Image-based Morphing - Example
Baby to Grandpa Morphing
Groom to Bride Compositing
Warping
Image-Based Morphing - Other option !
Better option than Cross - Dissolving:
Field/Line Morphing
Mesh Mapping
Multilevel Free-form Deformation (MFFD)
Field/Line Morphing
What pixel coordinate in the source image do
we sample for each pixel in destination image ?
Correspondence achieved using feature line(s)
in source and destination images
Source Image
Destination Image
Field/Line Morphing
Two step process
Step I : Interpolating the lines:
Interpolate the coordinates of the end points of every
pair of lines.
Step II : Warping the Images:
Each of the source images has to be deformed towards
the needed frame.
The deformation works pixel by pixel is based on the
reverse mapping. This algorithm is called Beier-Neely
Algorithm.
BEIER-NEELY ALGORITHM
Divide the two image to be morphed into lines
BEIER-NEELY ALGORITHM (contd.)
Create Intermediate Morph for both images
Intermediate Morph ?
Use corresponding lines in both the images to redefine a new
position for each pixel according to a parameter t
If t = 0 for First image and t = 1 for Second Image then
Intermediate Morph: 0<t<1
BEIER-NEELY ALGORITHM (contd.)
Compute line endpoints in the intermediate morph
A = endpoint of a line in First image
B = endpoint of a line in Second image
AB = endpoint of the line in Intermediate image = (1-t)*A+t*B
Use Field Morphing to warp First Image according
to intermediate line endpoints
Use Field Morphing to warp Second Image according
to intermediate line endpoints
Cross-Dissolve the warped images using t to define
weighted pixel average
BEIER-NEELY ALGORITHM (contd.)
Cross Dissolve the intermediate warped images
Warped First Image
Warped Second Image
BEIER-NEELY ALGORITHM - PIXEL POSITION
1) Compute position of pixel X in destination image
relative to the line drawn in destination image.
(x,y) (u,v)
Q’
Q
X
v
u
P
Destination Image
P’
Source Image
BEIER-NEELY ALGORITHM - PIXEL POSITION
Compute coordinates of pixel in source image whose
position relative to the line drawn in source image is
(u,v).
(u,v) (x’,y’)
Q’
Q
X
v
v
u
u
P
Destination Image
P’
Source Image
BEIER-NEELY ALGORITHM - PIXEL POSITION
Computation of pixel X with respect to Line
(x,y) (u,v)
Q (qx,qy)
(x-px)(qx-px)+(y-py)(qy-py)
X (x,y)
v
(X-P).(Q-P)
||(Q-P)||2
u
(qx-px)+(qy-py)
(X-P).Perpendicular(Q-P)
P (px,py)
Destination Image
||(Q-P)||
(qy-py, -qx+px)
BEIER-NEELY ALGORITHM-WEIGHTED AVG.
Computation of weighted pixel average
Q (qx,qy)
X (x,y)
v
Weight =
lengthp
b
a + dist
length = (qx-px)2 + (qy-py)2
u
dist = abs(v) if o<u<1
or
P (px,py)
dist = distance of (x,y) from P if u < 0
or
(a,b) controls influence
dist = distance of (x,y) from Q if u > 1
of line for points near it
BEIER-NEELY ALGORITHM
For each pixel X=(x,y) in the destination image
DSUM=(0,0) , weightsum=0
for each line(Pi, Qi)
calculate(ui,vi) based on Pi, Qi
calculate (xi’, yi’) based on u,v and Pi, Qi
calculate displacement
Di = Xi’ – X for this line
compute weight for line(Pi,Qi)
DSUM+=Di*weight
weightsum+=weight
(x’y’) = (x,y)+DSUM/weightsum
color at destination pixel(x,y) = color at source pixel(x’y’)
Mesh Morphing
Mesh is a rough presentation of an object
How it is done ?
Source and Destination images are meshed
Meshes for both images are interpolated
Intermediate images are cross-dissolved
Meshed Image
Mesh Morphing-Algorithm
• for each frame f do
– Linearly interpolate mesh M, between Ms and Mt
– warp Images to I1, using meshes Ms and M
– warp Imaget to I2, using meshes Mt and M
– Linearly interpolate image I1 and I2
• end
Mesh Morphing
Mesh Morphing - Pros and Cons
Pros
All control points affects the warping equally.
Cons
Hard to fit the mesh in the image
Not enough control on certain points when
needed.
A Mesh
A Rendered Image
Multilevel Free Form Deformation (MFFD)
Morphing two sequences of live action, rather than
just two still images
Mark all features in key frames
Interpolate the features between key frames
Do image metamorphosis on set of image pairs
Multilevel Free Form Deformation (MFFD)
Volume Based Approaches
Technique:
The objects are expressed as level sets of distance functions
Two steps:
Warp: deform the 3D space in order to make the
two objects to be morphed coincide as much as
possible
Interpolation: linear interpolate distance fields
deformed by the warp
Interaction:
The user interface allows to select feature (or anchor)
points in each voxelized object space and map the
anchor points of the source object to the anchor points
of the target object
Volume Based Approaches - Example
Volume Based Approaches - Example
Volume Based Approaches
D. Cohen-Or, D. Levin, A. Solomovoci. Three-dimensional
distance field metamorphosis. ACM Trans. Graphics
17:116-141, 1998
http://www.math.tau.ac.il/~levin/
B-Rep Based Approaches
Polyhedral Morphing using Feature based surface
decomposition
The users only need to specify a few corresponding pairs
of features on the two polyhedra. They can then specify
the trajectories along which these features travel during
the morph using Bezier curves, as shown in the next
page.
The algorithm not only provides the user with highlevel control in terms of specifying the features and
trajectories, it also allows for local refinement
B-Rep Based Approaches
Destination Image
Source Image
B-Rep Based Approaches
B-Rep Based Approaches
A. Gregory, A. State, M. C. Lin, D. Manocha, and
M. A. Livingston. Interactive surface
decomposition for polyhedral morphing. The
Visual Computer (1999) 15:453-470
http://www.cs.unc.edu/~geom/3Dmorphing/
B-Rep Based Approaches - Examples
Jack and Jill
http://www.cs.unc.edu/~gregory/morphs/jj.mpg
Coffecup to Donut
http://www.cs.unc.edu/~gregory/morphs/donut2cup.mpg
Project Image Morphing