In this project, we are warping images that are taken from the same position but at different angles. We use these pictures to create a mosaic. On the other hand, if the images are captured from the same center, you can project them onto the same plane to create a panoramic picture.
This step is pretty self explanatory. I picked threee different sets of images where the images are taken from different angles.
I selected 12 points in both images to map between the images. Here are the points:
Image projection from a fixed center of projection can be simulated by 2D image warping. Homography preserves straight lines but not parallelism. To find the matrix for the homography transformation, we have to select more than 3 pairs of corresponding coordinates (in my case, I picked 12) and compute Least-Square Regression to reduce distortion. Currently, my results are very skewed / incorrect. I'm debugging right now to figure out where it is going wrong. I based my compute homography functions on the compute affine function from my project 2 morphing code.