Supporting Divide-and-Conquer Algorithms for Image Processing

Abstract Divide-and-conquer is an important algorithm strategy, but it is not widely used in image processing. For higher-level, symbolic operations it should often be the strategy of choice for parallel computers. It is natural for a machine with a regular interconnection scheme such as a mesh, mesh with broadcasting, tree, pyramid, mesh-of-trees, PRAM, or hypercube, and can be used either on a machine with a pixel per processor or on one with many pixels per processor. However, divide-and-conquer algorithms use parallel computers in a different manner than, say, local edge detection, so machines optimized for local neighborhood algorithms may be poor for divide-and-conquer algorithms. Some characteristics of divide-and-conquer algorithms are examined, along with some of their implications for the design of machines and languages which can support the efficient programming and execution of divide-and-conquer algorithms.

[1]  Charles L. Seitz,et al.  The cosmic cube , 1985, CACM.

[2]  Kenneth E. Batcher,et al.  Design of a Massively Parallel Processor , 1980, IEEE Transactions on Computers.

[3]  Howard Jay Siegel,et al.  PASM: A Partitionable SIMD/MIMD System for Image Processing and Pattern Recognition , 1981, IEEE Transactions on Computers.

[4]  W. Beyer RECOGNITION OF TOPOLOGICAL INVARIANTS BY ITERATIVE ARRAYS , 1969 .

[5]  Azriel Rosenfeld,et al.  Parallel Image Processing Using Cellular Arrays , 1983, Computer.

[6]  Sartaj Sahni,et al.  Finding Connected Components and Connected Ones on a Mesh-Connected Parallel Computer , 1980, SIAM J. Comput..

[7]  Russ Miller,et al.  Data Movement Techniques for the Pyramid Computer , 1987, SIAM J. Comput..

[8]  Howard Jay Siegel,et al.  Extensions to the C Programming Language for SIMD/MIMD Parallelism , 1985, ICPP.

[9]  Russ Miller Writing SIMD algorithms , 1985 .

[10]  Jon Louis Bentley,et al.  Multidimensional divide-and-conquer , 1980, CACM.

[11]  Russ Miller,et al.  Geometric Algorithms for Digitized Pictures on a Mesh-Connected Computer , 1985, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[12]  Quentin F. Stout,et al.  Meshes with multiple buses , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[13]  H. T. Kung,et al.  Sorting on a mesh-connected parallel computer , 1976, STOC '76.

[14]  Charles E. Leiserson,et al.  Fat-trees: Universal networks for hardware-efficient supercomputing , 1985, IEEE Transactions on Computers.

[15]  Jeffrey D Ullma Computational Aspects of VLSI , 1984 .

[16]  Leonard Uhr,et al.  Layered "Recognition Cone" Networks That Preprocess, Classify, and Describe , 1972, IEEE Transactions on Computers.

[17]  Quentin F. Stout,et al.  BROADCASTING IN MESH-CONNECTED COMPUTERS. , 1982 .

[18]  Quentin F. Stout Tree-Based Graph Algorithms for Some Parallel Computers , 1985, ICPP.

[19]  Viktor K. Prasanna,et al.  Parallel Geometric Algorithms for Digitized Pictures on Mesh of Trees , 1986, ICPP.

[20]  Anthony P. Reeves,et al.  Parallel pascal: An extended pascal for parallel computers , 1984, J. Parallel Distributed Comput..

[21]  Azriel Rosenfeld,et al.  Fuzzy Digital Topology , 1979, Inf. Control..

[22]  Quentin F. Stout,et al.  PROPERTIES OF DIVIDE-AND-CONQUER ALGORITMS FOR IMAGE PROCESSING. , 1985 .

[23]  Renato Stefanelli,et al.  PAPIA: Pyramidal architecture for parallel image analysis , 1985, 1985 IEEE 7th Symposium on Computer Arithmetic (ARITH).

[24]  Azriel Rosenfeld,et al.  Multiresolution image processing and analysis , 1984 .

[25]  Russ Miller,et al.  Pyramid computer algorithms for determining geometric properties of images , 1985, SCG '85.

[26]  Stefano Levialdi,et al.  Computer Architectures for Pictorial Information Systems , 1981, Computer.

[27]  Quentin F. Stout Topological matching , 1983, STOC '83.

[28]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[29]  S. Tanimoto,et al.  Structured computer vision: Machine perception through hierarchical computation structures , 1980 .

[30]  Dilip V. Sarwate,et al.  Computing connected components on parallel computers , 1979, CACM.

[31]  Kevin P. McAuliffe,et al.  The IBM Research Parallel Processor Prototype (RP3): Introduction and Architecture , 1985, ICPP.

[32]  L. Snyder,et al.  Parallel Programming and the Poker Programming Environment , 1984, Computer.