zjhellofss / Image-Stitching-OpenCV

Simple image stitching algorithm based on SIFT, homography, KNN and Ransac in Python and OpenCV

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

About

Simple image stitching algorithm based on SIFT, homography, KNN and Ransac in Python and OpenCV


Languages

Language:Python 100.0%