Image Processing Tasks Using Parallel Co
Image Processing Tasks Using Parallel Co
Abstract: To find accurate & reliable result in image analysis, it is important that image is processed and analyzed using
image processing suitable AI technique further at the same time it is highly desired that processing time must be minimum.
Preprocessing of the image makes it more clear and visible, while parallelizing of the algorithm optimizes the speed at
which the image is processed. This paper explores current multi-core architectures available in commercial processors in
order to speed up the image processing tasks. Parallel Implementation of Many sequential algorithms of Image processing
was examined and analyzed in test and achieved good result if all the recourses are efficiently used. Main objective of this
paper is to design some parallel image processing algorithms like segmentation, noise reduction, features calculation,
histogram equalization etc by using Multi Core architecture and comparative study with some sequential image processing
algorithm. These parallel algorithms are able to work with different number of thread, so as to take all the benefits of the
upcoming processors having any number of cores. As medical imaging refers to view the human body in order to diagnose,
monitor and treatment planning. This paper also describes the application of parallel computing applied in different Medical
Imaging techniques like CT, PET scans etc.
Keywords: Parallel Computing, Image Processing, Histogram, Multi Core, CPU, Latency, CT, PET.
an add-on toolbox. Of course, it‟s been available for III. PROPOSED ALGORITHMS FOR PARALLEL
commercial users for some time.[6] There is an increasing IMAGE PROCESSING TASKS
recognition that High-Level Languages, and in particular
scripting languages such as MATLAB, provide enormous We have gone through following sequential image
productivity gains in developing technical and scientific processing algorithms and developed its parallel versions
code [11]. with different approaches in core i3 processor and found
good results with variable numbers of threads passed as
II. IMAGE PROCESSING WITH PARALLEL input parameters. We focus on the most promising and well
COMPUTING supported techniques with an emphasis in SIP application
examples, namely: MatlabMPI [2], bcMPI [12], pMatlab
Image Processing with Parallel computing is an alternative [13], Star-P [14] and the MATLAB Distributed Computing
way to solve image processing problems that require large Toolbox (DCT) [15].
times of processing or handling large amounts of Load Distribution between Processors:
information in "acceptable time" (according to each Suppose we are taking the following image (1) as an
criterion). As we can see that medical imaging requires lots example.
of memory space and time to process so by parallelizing we The main step of these algorithms is to determine the
can find efficient and fast result. In parallel processing, a number of tiles to be generated. The number of tiles
program is able to create multiple tasks that work together to corresponds to the amount of threads. If only a thread exists,
solve a problem [7]. The main idea of parallel image the computation is just sequential computation. Otherwise if
processing is to divide the problem into simple tasks and there are two or more threads than the image is divided into
solve them concurrently, in such a way the total time can be distinct areas, as shown in Figure 2, 3, 4. Each thread is
divided between the total tasks (in the best case). Parallel responsible for processing the pixels included in its tile and
Image processing cannot be applied to all problems, in other to execute different tasks but considering to maintain
words we can say that not all the problems can be coded in a synchronization between all the processor otherwise there
parallel form. A parallel program should must have some will be the situation of deadlock between processors.
features for a correct and efficient operation; otherwise, it is
possible that runtime or operation does not have the
expected performance. These features include the following
[8]:
11. Calculate the Regional and Fourier descriptors of 6. Send all equalized histogram to the client
Segmented Image on client processor. processor.
c. Complex Noise reduction usingParallel This section describes the results obtained with the parallel
Computing: implementation of above algorithms. This also deals with the
environment used in the experiments, the test images, and
This algorithm consists of the following steps: results, along with the evaluation of the performance
1. Take input Image on Input Image on client obtained with the parallelization.
processor.
6. Perform Convolution and find PSNR and MSE of Following Table 1 illustrates the performance of parallel
the image on individual kernels. image processing algorithm on different size images.
Medical imaging require more computing power than a Dr Shiru Sharma is assistant professor in
traditional sequential computer can do and we also know school of Biomedical Engineering,
that for medical imaging, it is important that the image is IIT(BHU). His specialization area is
clear and be obtained as quickly as possible. We can achieve Biomedical Control System Analysis.
through the process of parallelizing. Parallelizing optimizes
the speed at which the image is produced. Normal a CT
scan, PET scan, etc take much time to produce the result so
by parallelizing our code we can find good result in very
reasonable time.
REFERENCES
[1]. Thomas Bräunl, “Tutorial in Data Parallel Image Processing,”
Australian Journal of Intelligent Information rocessing Systems (AJIIPS),
vol. 6, no. 3, 2001, pp. 164–174
[2]. MatlabMPI: http://www.ll.mit.edu/MatlabMPI/
[3]. A. K. Jain, Digital Image Processing. Prentice Hall, 1989.
[4]. R. Crane, A simplified approach to image processing: classical and
modern techniques. Prentice Hall, 1997.
[5]. http://en.wikipedia.org/wiki/Medical_imaging
[6]. J. Fung and S. Mann, “Using graphics devices in reverse: Gpu-based
image processing and computer vision," in 2008 IEEE International
Conference on Multimedia and Expo. IEEE, June 2008, pp. 9-12.
[7]. P. Pacheco, An Introduction to Parallel Programming. Morgan
Kaufmann, 2011.
[8]. A. G. López, J. Delgado, and S. Castañeda, “Metodologías de
paralelización en la supercomputadora cicese2000,” Departamento de
Cómputo Dirección de Telemática Centro de Investigación Científica y de
Educación Superior de Ensenada, Tech. Rep., February 2000.
[9]. R. T. Rasúa, “Algoritmos paralelos para la solución deproblemas de
optimización discretos aplicados a ladecodificación de señales,” Ph.D.