Toolkit for parallel image processing

In this paper, we present the design and implementation of a parallel image processing software library (the Parallel Image Processing Toolkit). The Toolkit not only supplies a rich set of image processing routines, it is designed principally as an extensible framework containing generalized parallel computational kernels to support image processing. Users can easily add their own image processing routines without knowledge or explicit use of the underlying data distribution mechanisms or parallel computing model. Shared memory and multi-level memory hierarchies are exploited to achieve high performance on each node, thereby minimizing overall parallel execution time. Multiple load balancing schemes have been implemented within the parallel framework that transparently distribute the computational load evenly on a distributed memory computing environment. Inside the Toolkit, a message-passing model of parallelism is designed around the Message Passing Interface standard. Experimental results are presented to demonstrate the parallel speedup obtained with the Parallel Image Processing Toolkit in a typical workstation cluster with some common image processing tasks.

[1]  Anthony Skjellum,et al.  A Portable Multicomputer Communication Library atop the Reactive Kernel , 1990, Proceedings of the Fifth Distributed Memory Computing Conference, 1990..

[2]  James Demmel,et al.  Optimizing matrix multiply using PHiPAC: a portable, high-performance, ANSI C coding methodology , 1997, ICS '97.

[3]  Jack Dongarra,et al.  A User''s Guide to PVM Parallel Virtual Machine , 1991 .

[4]  Anthony Skjellum,et al.  Using MPI - portable parallel programming with the message-parsing interface , 1994 .

[5]  Howard Jay Siegel,et al.  Mapping computer-vision-related tasks onto reconfigurable parallel-processing systems , 1992, Computer.

[6]  Andrew S. Tanenbaum,et al.  Distributed operating systems , 2009, CSUR.

[7]  Andrew S. Tanenbaum,et al.  Modern Operating Systems , 1992 .

[8]  Anthony Skjellum,et al.  An initial implementation of MPI , 1993 .

[9]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[10]  Viktor K. Prasanna,et al.  Parallel memory systems for image processing , 1989, Proceedings CVPR '89: IEEE Computer Society Conference on Computer Vision and Pattern Recognition.

[11]  D.-L. Lee,et al.  A multiple-processor architecture for image processing , 1987 .

[12]  Robert L. Stevenson,et al.  Parallel and Distributed Algorithms for High-Speed Image Processing , 2000 .

[13]  Juan Li,et al.  A software environment for parallel computer vision , 1992, Computer.

[14]  G. A. Geist,et al.  A user's guide to PICL a portable instrumented communication library , 1990 .

[15]  Document for a Standard Message-Passing Interface , 1993 .

[16]  Andrew B. Whinston,et al.  A Model for an Intelligent Operating System for Executing Image Understanding Tasks on a Reconfigurable Parallel Architecture , 1985, J. Parallel Distributed Comput..

[17]  Edward J. Delp,et al.  Parallel implementation for iterative image restoration algorithms on a parallel DSP machine , 1993, J. VLSI Signal Process..

[18]  Zang-Hee Cho,et al.  A parallel implementation of 3-D CT image reconstruction on hypercube multiprocessor , 1990 .