15862 – Computational Photography

 

  Assignment  4: Feature Matching and Automatic Photostiching

- Nisarg Vyas (nisarg AT cmu DOT edu)

 

 

 

Section 1: Automatic Photostiching

 

             The goal of the project is to find feature points automatically in a set of images, learn the homography and stich the set of images into a mosaic.  I show the results on 2 different set of images.

 

  Image Set 1:

 

 0): Input Images

 

    

 

 

 

 

1): Harris Corner Detection with Adaptive Non-Maxima Suppression

 

                 

              The corner detection with the Adaptive Non-maxima suppression gives us a uniform distribution of interest points selected in the image, which is a desired effect. Although here, the “artifact” of using that is, I am getting feature points in the region of very less ‘interest’ (e.g. sky).

   

           

2)  Description Vector and Feature-space Outlier Rejection                            

            

         This step finds out the similarity between each point’s descriptor vector in one image with all the other points’ descriptor vectors in the other image. The ratio between the best match and second best match is also taken into account. For a pair of points to be good feature point, the distance of the second best match should be atleast double than the distance of the best match.

 

3) RANSAC (RAndom SAmple Consensus) Estimate of homography

  

 

 

4) Final Mosaic

 

 

                                 

 

 

 

Image set 2:

 

0): Input Images

 

             

 

 

 

1): Harris Corner Detection with Adaptive Non-Maxima Suppression

 

 

           

2)  Description Vector and Feature-space Outlier Rejection                             

 

3) RANSAC (RAndom SAmple Consensus) Estimate of homography

  

4) Final Mosaic

 

 

                   

 

 

 

Section 2: Multi-scale processing

 

For this, I have followed Lowe’s paper titled “Distinctive image features from scale-invariant keypoints”. The result that I show here is about the points detected at different ‘charecterisitc’scales. 

 

 

 

Section 3: Automatic Panorama Recognition

 

The goal of this task was to identify different panoramas given a set of images which might or might not contain mosaics. If panoramas exist, stich them using autostiching.

 

 

Image set 1

 

Input Images

 

                            

 

 

Output Panorama

 

                                       

 

Image set 2:

 

                                                                        

 

 

Output Panoramas

 

 

 

(Note: Image sizes are rescaled in arbitrary size to fit the images into the webpage. These are not the original image sizes)