Record Details

Performance Analysis of Non Local Means Algorithm using Hardware Accelerators

Electronic Theses of Indian Institute of Science

View Archive Info
 
 
Field Value
 
Title Performance Analysis of Non Local Means Algorithm using Hardware Accelerators
 
Creator Antony, Daniel Sanju
 
Subject Algorithm using Open Computing Language
Image Denoising
Non Local Means Algorithm
OpenCL
Field-Programmable Gate Array (FPGA)
Open Computing Language
GPU
Graphics Processing Unit
Additive White Gaussian Noise (AWGN)
NL-Means Algorithm
Electrcal Engineering
 
Description Image De-noising forms an integral part of image processing. It is used as a standalone algorithm for improving the quality of the image obtained through camera as well as a starting stage for image processing applications like face recognition, super resolution etc. Non Local Means (NL-Means) and Bilateral Filter are two computationally complex de-noising algorithms which could provide good de-noising results. Due to its computational complexity, the real time applications associated with these letters are limited.
In this thesis, we propose the use of hardware accelerators such as GPU (Graphics Processing Units) and FPGA (Field Programmable Gate Arrays) to speed up the filter execution and efficiently implement using them. GPU based implementation of these letters is carried out using Open Computing Language (Open CL). The basic objective of this research is to perform high speed de-noising without compromising on the quality. Here we implement a basic NL-Means filter, a Fast NL-Means filter, and Bilateral filter using Gauss Polynomial decomposition on GPU. We also propose a modification to the existing NL-Means algorithm and Gauss Polynomial Bilateral filter. Instead of Gaussian Spatial Kernel used in standard algorithm, Box Spatial kernel is introduced to improve the speed of execution of the algorithm. This research work is a step forward towards making the real time implementation of these algorithms possible. It has been found from results that the NL-Means implementation on GPU using Open CL is about 25x faster than regular CPU based implementation for larger images (1024x1024). For Fast NL-Means, GPU based implementation is about 90x faster than CPU implementation. Even with the improved execution time, the embedded system application of the NL-Means is limited due to the power and thermal restrictions of the GPU device. In order to create a low power and faster implementation, we have implemented the algorithm on FPGA. FPGAs are reconfigurable devices and enable us to create a custom architecture for the parallel execution of the algorithm. It was found that the execution time for smaller images (256x256) is about 200x faster than CPU implementation and about 25x faster than GPU execution. Moreover the power requirements of the FPGA design of the algorithm (0.53W) is much less compared to CPU(30W) and GPU(200W).
 
Contributor Rathna, G N
 
Date 2017-12-16T08:38:53Z
2017-12-16T08:38:53Z
2017-12-16
2016
 
Type Thesis
 
Identifier http://etd.iisc.ernet.in/handle/2005/2932
http://etd.ncsi.iisc.ernet.in/abstracts/3794/G27791-Abs.pdf
 
Language en_US
 
Relation G27791