gpu-based-image-stitching
A simple version of "GPU based parallel optimization for real time panoramic video stitching".
GPU based image stitching: a simple take on a 2020 paper
An OpenCV implementation that follows a 2020 Pattern Recognition Letters paper on GPU parallel optimization for real time panoramic video stitching, written as a learning project.
What this code is
The repository describes itself as a simple implementation of OpenCV for a specific paper. The README is clear that this is a learning implementation rather than a production system. Its value is in showing how the paper's approach translates into working code, warts included.
The paper it follows
The source is Du, Chengyao, and colleagues, GPU based parallel optimization for real time panoramic video stitching, published in Pattern Recognition Letters volume 133 in 2020. The paper's angle is using GPU parallel processing to speed up stitching video frames into a panoramic output, and this project reimplements that in a basic form.
Known issues the author admits
Two problems are documented openly. The real FPS is much slower than the reported FPS because the imwrite call takes a lot of time. And the stitching never stops on its own, because the original author did not think through how to use the dataset, so a dataset based stop was added. After stitching finishes, the program still does not exit. The README mentions the air 4cam mp4 dataset will generate 149 pictures.
The example material
An example section points to a Chinese blog post covering the image stitching post processing steps. A small table lists sample video files named 00.mp4 through 03.mp4, giving users something concrete to run the stitching on. The blog post carries the detail for anyone who can read the Chinese writeup.
How much scope it claims
The word simple appears on purpose. The GPU parallel optimization from the paper is implemented in a basic form, and the known issues section acknowledges the performance and dataset handling limitations. Anyone picking this up for their own video should go in expecting a starting point rather than a finished tool.
Community notes