Image Morphing


The breif procedure for doing the Morphing was as follows -

1. The source and the destination images were read.
2. Feature points were interactively marked on both the images.
3. This 'node map' was then triangulated using De Launay Triangulation.
4. Each triangle was taken one by one, its vertices and theri intensities were linearly intepolated to the intermediate frames.
5. The triangles were scan converted, and intensities of the points inside the triangle were obtained by an inverse mapping
   using Brycentric Coordinates.
6. All the frames were joined togther to form the animations shown here.
 
 
 

The various results obtained are shown below -
 

1. We are the World  (My favourite)
 
Five beautiful
faces morphed in
a sequence. Each
sequence has 10
frames.

Click here to see the morph









2. From the Earth to the Moon
 

Click here to see the morph









3. A very sharp buisiness man
 

Click here to see the morph









4. A Parisian night in London !!
 

Click here to see the morph











Salient Features of this Implementation :

1. A blazing fast DeLaunay Triangulator courtesy Jonathan Richard Shewchuk, UCB, Berkley California. His Triangle and Showme utilities
   have been very helpful in this work. They can be downloaded from Netlib.

2. Very Interactive - allows the user to vary a lot of parameters at runtime such as -
    a) Interactive marking of Feature points through a Java program
    b) Ability to resuse old 'Node Maps' and 'Triangulations' if present.
    b) Ability to apply Median Filtering to each individual frame to remove 'holes' if they appear.
    c) Auto-Normalization of destination image sizes if it of a size different from the source.
    d) Auto-generation of frame names so that they can be easily combined into animation sequences using the ImageMagick Convert Tool.
    e) Auto-Marking of eight bounding points for the source/detination images so that it doesn't have to be done by the user.
 

Improvements Possible -

1. Use of Bilinear Interpolation instead of simple truncation to get a better morph when extreme deformations are involved.
2. Use of a Feature-Line based algorithm which may be computationally less intensive and produce better morphs.
3. I have used a very rudimentary approach for scan conversion which is good enough for small images, a better optimized scan
   conversion would be however more efficient.




Page last updated on 28 January, 2004. pialpharhoalphagammaAT cse.iitd.ac.in © Parag Chaudhuri , 2009
DCSE, IIT Delhi Valid HTML 4.0! Valid CSS! yahoo