The purpose of this project was to explore the image blending via correspondence points.
I took two pictures of myself, and defined a set of 60 corresponding points. I used the midpoints to create a triangularization, the result of which is shown below.
![]() |
![]() |
![]() |
![]() |
For each triangle of each frame, I compute the affine transformation matrices to map included points to the source images. Point shift and crossfade progress linearly.
![]() |
![]() |
![]() |
![]() |
Final product: 675x900, 45 frames. The execution of this un-optimized code is proportional to the product of width, height, frames, and correspondence points. Each frame took a few minutes to compute, but multiprocessing made computation very manageable.
![]() |
![]() |
![]() |
![]() |
The following images were created using this dataset of Danish computer scientists: M. B. Stegmann, B. K. Ersboll, and R. Larsen. FAME - a flexible appearance modelling environment. IEEE Trans. on Medical Imaging, 22(10):1319-1331, 2003.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
This was created by subtracting a multiple of the difference between my own face and the mean of the first face type from above.
![]() |
![]() |
![]() |
![]() |