Description
Exercise 1 Image Processing and Feature Detection
Please do the following exercises by a single Python script named as src/detect and match.py. You may use OpenCV for feature detection and descriptor computation.
- Detect SIFT interest points on the six images of the Golden Gate Bridge that are in the folder data.
- Draw the SIFT interest points on each image and store the result- ing images in the same folder with names as sift keypoints i.png, where i is the image number.
- Calculate SIFT descriptor matches between consecutive pairs of im- ages by brute force matching, for example between goldengate-00.png and goldengate-01.png, between goldengate-01.png and goldengate-02.png, and so on.
- Draw these tentative correspondences on a match image and save the resulting images in the same folder with names as
tentative correspondences i-j.png, where i and j are image num- bers. - Save the SIFT interest points, descriptors, and tentative correspon- dences as text files in the same folder with names as sift i.txt and tentative correspondences i-j.txt.
1
Exercise 2 RANSAC
Please do the following exercises by a single Python script named as src/ransac.py. You may use OpenCV for homography computation with RANSAC.
- Read the keypoints and tentative correspondences for each image pair and match them by RANSAC.
- You may use RANSAC from OpenCV, implement RANSAC yourself for 10 bonus points.
- Save the resulting homography matrices in files within the folder data with names such as h i-j.txt, where i and j are image numbers.
- Do not forget about normalization and the final estimation over all inliers. You may optionally perform guided matching.
- Draw and save the resulting final inlier correspondences in files in the data folder with names as inliers i-j.png and inliers i-j.txt.
Exercise 3 Basic Stitching
Please do the following exercises by a single Python script named as src/stitch.py. You may use OpenCV function warp perspective for im- age warping.
- Stitch all the images by calculating a homography matrix from each image to one of the center images goldengate-02.png or goldengate-03.png and warping the images to this coordinate sys- tem.
- Save the resulting image in the folder data named as panorama.png.
- To blend multiple images just overwrite or average intensities of over- lapping pixels.
2