Skip to content

AugustinJose1221/Internship

Repository files navigation

Realtime Video Stitching using Scale Invariant Feature Transform(SIFT)

Description

This project aims to stitch the video outputs from two camera sensor into one complete video. The process involves, extracting features points from each frame of the video, generating descriptors for each keypoint, matching keypoints with the images, generate a homography matrix using RANSAC algorithm and stitching and warping the images.

Installation

git clone https://github.com/AugustinJose1221/Internship.git
pip install -r requirements.txt

Note: The program won't work for opencv-contrib-python for version above 3.4

To run the program,

python main.py

Change the video files in the Video directory to test it on custom video files

Working


Input Image

The input image is loaded using OpenCV functions. All operations on the image is done as numpy
arrays.

Grayscale image

The image is converted to grayscale. By doing so, the details get more prominent and the number of 
channels of the image gets reduced from 3 to 1. This also increases the processing time of the 
program

Gaussian Blur

sigma=11 sigma=12
The grayscale image is applied with a Gaussian filter. Two filters of different sigma values are 
applied to it and the two outputs are kept seperately. The Gaussian filter smoothens the image, 
reducing noise and clearing minor details and imperfections in the image.

Difference of Gaussian

By taking the difference of the output of Gaussian filter of two different sigma values on the same 
image, the edges and corners gets sharpened while the open space gets nullified. This enchances the 
image for making feature point detection.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages