Applying Object Oriented Design Patterns to CUDA based Pyramidal Image Blending – An Experience
Pritam Prakash Shete, P P K Venkat, Dinesh M. Sarode, Mohini Laghate, Surojit Kumar Bose
Abstract
Pritam Prakash Shete, P P K Venkat, Dinesh M. Sarode, Mohini Laghate, Surojit Kumar Bose
Abstract
In this paper, we present Compute Unified Device Architecture i.e. CUDA based pyramidal image blending algorithm using an object oriented design patterns. This algorithm is an essential part of an image stitching process for a seamless panoramic mosaic. The CUDA framework is a novel GPU programming framework from NVIDIA. We introduce an object oriented framework for the CUDA based image processing. We illustrate a set of design patterns exploiting programming advantages of an object oriented language; such as encapsulation, code reusability, information hiding, complexity hiding and extensibility. We discuss the framework’s performance in terms of programming efforts, execution overhead and speedup factor achieved over the CPU one. We also talk about programming efforts required for adding the OpenGL Shading Language functionality to the framework.
OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
In this paper, we present Compute Unified Device Architecture i.e. CUDA based pyramidal image blending algorithm using an object oriented design patterns. This algorithm is an essential part of an image stitching process for a seamless panoramic mosaic. The CUDA framework is a novel GPU programming framework from NVIDIA. We introduce an object oriented framework for the CUDA based image processing. We illustrate a set of design patterns exploiting programming advantages of an object oriented language; such as encapsulation, code reusability, information hiding, complexity hiding and extensibility. We discuss the framework’s performance in terms of programming efforts, execution overhead and speedup factor achieved over the CPU one. We also talk about programming efforts required for adding the OpenGL Shading Language functionality to the framework.
Key concepts: CUDA, Computer science, Image stitching, Speedup, Programming paradigm, Parallel computing, Object-oriented programming, Programming language