The article discusses implementing image stitching in Python using libraries like numpy, openCV, and Matplotlib, without using ready-to-use functions from OpenCV.
Helper functions for normalizing image intensity, image convolution, plotting images, and coordinate conversions are defined to facilitate the stitching algorithm.
Homography matrices are calculated to map points from one image to another, and bilinear interpolation is used for approximating image intensities after transformation.
The stitching algorithm takes two normalized images, a stitching axis, and produces a stitched image, considering potential issues like invalid pixels post-homography.
Post-processing steps involve eliminating blank pixels, adjusting brightness based on mean intensity differences, and using Gaussian blurring to blend image seams.
The article encourages readers to try image stitching on their own images and concludes with a discussion on future topics in geometric computer vision.
The content is inspired and credited to Prof. Dr. Michael Bourke at Monash University for teaching fundamental concepts in Computer Vision.
The process involves various steps like intensity normalization, convolution, homography calculation, bilinear interpolation, and handling invalid pixels post transformation.
Blurring techniques, brightness adjustment, and post-processing help improve the final stitched image quality and appearance.
The article provides a detailed overview of the image stitching process in Python, focusing on manual implementation and key concepts in geometric computer vision.
Readers are encouraged to experiment with their own images and explore further applications in computer vision and image processing.