1. Real-time panorama composition for video surveillance using GPU
- Author
-
Pritam Prakash Shete, Dinesh M. Sarode, and Surojit Kumar Bose
- Subjects
Panorama ,Computer science ,business.industry ,05 social sciences ,OpenGL ,ComputingMethodologies_IMAGEPROCESSINGANDCOMPUTERVISION ,050801 communication & media studies ,020207 software engineering ,Image processing ,02 engineering and technology ,Frame rate ,Composite image filter ,Image stitching ,0508 media and communications ,Computer graphics (images) ,0202 electrical engineering, electronic engineering, information engineering ,Computer vision ,Artificial intelligence ,General-purpose computing on graphics processing units ,Image warping ,business ,Image resolution ,ComputingMethodologies_COMPUTERGRAPHICS - Abstract
Image stitching algorithms combine multiple low resolution images and provide a single high resolution composite image with a larger field of view available for video surveillance. In this research work, we put forward and realize real-time panorama composition for a video surveillance application using the power of a GPU. We utilize a cross platform OpenGL graphics library for real-time online image processing. We parallelize panorama composition using OpenGL objects such as texture object, vertex buffer object and framebuffer object for image warping as well as edge blending to create a seamless panoramic image. We divide our panorama composition algorithm into two stages for image sources with fixed relative positions with each other. Initially in an offline stage, we compute inverse lookup maps and feather weight masks using an OpenCV image processing library for each input image. Subsequently in an online stage, we utilize these inverse lookup maps to generate warped images, which are further edge blended with each other using feather weight masks with the help of OpenGL objects. Our panorama composition is more than 8.5 times faster than the CUDA optimized OpenCV realization. It produces a high resolution seamless panoramic image using nine input image streams each with 800×600 image resolution at about more than 75 frames per second using less than 90MB of GPU memory.
- Published
- 2016
- Full Text
- View/download PDF