Simple image stitching algorithm based on SIFT, homography, KNN and Ransac in Python and OpenCV
Clone or download
Latest commit e11056c Oct 15, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
images Add files via upload Oct 15, 2018
Image_Stitching.py Add files via upload Oct 15, 2018
README.md Update README.md Oct 15, 2018
image_stitching.pdf Add files via upload Oct 15, 2018

README.md

Image-Stitching-OpenCV

Simple image stitching algorithm using SIFT, homography, KNN and Ransac in Python. For full details and explanations, you're welcome to read image_stitching.pdf.

The project is to implement a featured based automatic image stitching algorithm. When we input two images with overlapped fields, we expect to obtain a wide seamless panorama.

We use scale invariant features transform(SIFT) to extract local features of the input images, K nearest neighbors algorithms to match these features and Random sample consensus(Ransac) to calculate the homograph matrix, which will be used for image warping. Finally we apply a weighted matrix as a mask for image blending.

Dependency

  • Python 2 or 3
  • OpenCV 3

Usage

python Image_Stitching [/PATH/img1] [/PATH/img2]

Sample

Input images

Matching

matching

Output image

pano

other examples

Room: room

Another building: This is a stitching of three related images. It doesn't work so well. Trying to improve. gym