- Image stitching or photo stitching is the process of combining multiple photographic images with overlapping fields of view to produce a segmented panorama or high-resolution image.
- Image stitching is widely used in modern applications, such as the following:
- Document mosaicing
- Image stabilization feature in camcorders that use frame-rate image alignment
- High-resolution photomosaics in digital maps and satellite imagery
- Medical imaging
- Multiple-image super-resolution imaging
- Video stitching
- Object insertion
Obtain stable images from camera and the inner registers can be reconfigured by the I2C port.
Extract the FAST features of the images using the designed FPGA-based parallel computing platform.
Calculate the similarity of two feature descriptors and establish the correspondence by the nearest neighbor ratio method.
Fuse images of two adjacent images in order to obtain smooth transition effects between the two images whose brightness and orientations are different.
Display the real-time panoramic stitching results on a monitor.
SIFT (patented) is slow compared to FAST algorithm (source : Homography Estimation by Elan Dubrofsky (Master’s essay submission)) FAST algorithm is already implemented in vivado xfopencv library
FAST algorithm lacks orientation component so the algorithm is not invariant for orientation. ORB add orientation component to the FAST features. ORB is using BRISK keypoint descriptor which is relatively speed and contains less data relative to the SIFT descriptor
FLANN based matcher used random sampling. Since we are using FPGA all the feature sizes are fixed size, hence take only fixed number of clock cycles which can be calculated in compilation time so planned to proceed with brute force matcher.
Features from Accelerated Segment Test (FAST) is a corner detection algorithm, that is faster than most of the other feature detectors. The fast picks up a pixel in the image and compares the intensity of 16 pixels in its neighborhood on a circle, called the Bresenham's circle. If the intensity of 9 consecutive pixels is found to be either more than or less than that of the candidate pixel by a given threshold, then the pixel is declared as a corner. Once the corners are detected, the non-maximal suppression is applied to remove the weaker corners.
The addition of a fast and accurate orientation component to FAST. The efficient computation of oriented BRIEF features. Analysis of variance and correlation of oriented BRIEF features. A learning method for de-correlating BRIEF features under rotational invariance, leading to better performance in nearest-neighbor applications.
Features matching or generally image matching, a part of many computer vision applications such as image registration, camera calibration and object recognition, is the task of establishing correspondences between two images of the same scene/object.
The RANSAC algorithm is a learning technique to estimate parameters of a model by random sampling of observed data. Given a dataset whose data elements contain both inliers and outliers, RANSAC uses the voting scheme to find the optimal fitting result.
A Homography is a transformation ( a 3×3 matrix ) that maps the points in one image to the corresponding points in the other image.
left image = 640 * 480px
right image = 640 * 480px