www.as-se.org/ssms
Studies in Surveying and Mapping Science (SSMS) Volume 1 Issue 1, March 2013
Additive and Multiplicative Noise Removal Framework for Large Scale Color Satellite Images on OpenMP and GPUs Banpot Dolwithayakul1, Chantana Chantrapornchai2, Noppadol Chumchob3 1,2
Department of Computing, Faculty of Science Silpakorn University, Nakhon-Pathom, Thailand
Department of Mathematics, Faculty of Science Silpakorn University, Nakhon-Pathom and Centre of Excellence in Mathematics, CHE, Si Ayutthaya Rd., Bangkok, Thailand 3
*1
banpot@su.ac.th; 2ctana@su.ac.th; 3chumchob@gmail.com
Abstract The satellite images are usually contaminated with multiplicative noises and some additive noises [1, 2]. Due to the large size of images, the removal process of these two types of noises at real-time is time consuming. The use of many-core processors such as GPUs may be advantageous in reducing the time of denoising. However, with the limitation of the GPU memory and the memory transfer cost, the proper design for denoising the large images is required. In this paper, we introduce the novel method for denoising both additive and multiplicative noises on multiple GPUs. The method is extended from [8] to perform a large-image denoising. It considers the proper data fitting to the GPU memory, memory utilization and thread utilization on both the CPU and GPUs. The speedup on the computation time of upto 87.29 times can be achieved compared with the sequential computation on the color 4096Ă—4096 satellite image. Keywords Image Denoising; Satellite Image; GPU; Fixed-point Iterative Method; Parallel Computing; High Performance Computing
Introduction In image processing, noises in images are usually categorized into two models: additive and multiplicative noises. The former one is called additive Gaussian white noises which can usually be found in acquired images via digital devices. This type of noise model has been investigated for a long time by previous researches. There are a variety of algorithms for removing the additive noises, for example, nonlinear total variation by Rudin, Osher and Fatemi[4]. The additive noise model is usually written in Equation (1)
đ?‘§đ?‘§ = đ?‘˘đ?‘˘ + đ?œ‚đ?œ‚.
(1)
Here, z is the corrupted image, u is the original image
10
and đ?œ‚đ?œ‚ is the noise on the image.
Next, the so-called multiplicative noise (a.k.a. speckle noise) is found in the images obtained from synthetic aperture radar (SAR), ultrasound and sonar. The multiplicative noise is in the form of Equation (2)
�� = ����.
(2)
From recent researches, Hirakawa and Parks [9] and Lukin et al.[10] concluded that some images may not consist of the pure additive noises or multiplicative noises. The authors in [9] concluded that both noise models should be combined into general case, as expressed by Equation (3).
đ?‘§đ?‘§ = đ?‘˘đ?‘˘ + (đ?‘˜đ?‘˜0 + đ?‘˜đ?‘˜1 đ?‘˘đ?‘˘)đ?œ‚đ?œ‚.
(3)
where đ?‘˜đ?‘˜0 and đ?‘˜đ?‘˜1 are parameters indicating the amount of additive and multiplicative noises are in the image.
The novel and robust algorithm proposed by N. Chumchob, K. Chen and C. Brito-Loeza [3] is efficient in removing both types of noises by combining two techniques: ROF model [4] and JY model [5].
In this paper, we use this method as the main technique for removing both types of noises from satellite images. The main challenge in this work is to remove the noises in real-time since the considered satellite images are quite large. We take advantages of the many-core technology and design an efficient parallel denoising method for such an image. In general cases, the satellite images denoising process is the time consuming process. The GPU may be used for speeding up the overall computation time. In contrast, it is well known by the nature of GPUs that the memory transfer between a host and devices costs many cycles. Moreover, the satellite images are usually large which cannot be fit in available memory