Parallel Image Processing Using Cellular Arrays

array computers are not new to image processing, but more refined techniques have led to broader implementations. We can now construct arrays with up to 128 x 128 processors. Nearly 25 years ago, Ungerl"2 suggested a two-dimensional array of processing elements as a natural computer architecture for image processing and recognition. Ideally, in this approach, each processor is responsible for one pixel, or one element of the image, with neighboring processors responsible for neighboring pix-els. Thus, using hardwired communication between neighboring processors, local operations can be performed on the image, or local image features can be detected in parallel, with every processor simultaneously accessing its neighbors and computing the appropriate function for its neighborhood. Over the last two decades, several machines embodying this concept have been constructed. The Illiac 1113 used a 36 x 36 processor array (the Illiac IV used only an 8 x 8 array) to analyze "events" in nuclear bubble-chamber images by examining 36 x 36 "windows" of the images. In later machines, such as the CLIP,4 DAP,5 and Mpp,6 arrays of up to 128 x 128 processors were used and were applied blockwise to larger images. This article reviews the basic techniques of image processing using two-dimensional arrays of processors, or cellular arrays. It also discusses various extensions and generalizations of the cellular array concept and their possible implementations and applications. The term cellular array is used because these machines can be regarded as generalizations of bounded cellular automata, which have been studied extensively on a theoretical level. The relative merits of cellular arrays for image processing as compared to other architectures* are not discussed here; but they have been studied extensively for such purposes, on levels from theory to hardware. A cellular array (Figure 1) is a two-dimensional array of processors, or cells, usually rectangular, each of which can directly communicate with its neighbors in the array. Here, for simplicity, I assume that each cell is connected to its four horizontal and vertical neighbors. Each cell on the borders of the array then has only three neighbors, and each cell in the four corners of the array has only two. I also assume that a cell can distinguish its neighbors; i.e., it can send a different message to each neighbor, and when it receives messages from them, it knows which message came from which neighbor. To use a cellular array for image processing, we give …

[1]  Azriel Rosenfeld,et al.  Reconfigurable Cellular Computers , 1981, Inf. Control..

[2]  Azriel Rosenfeld,et al.  Parallel / Sequential Array Automata , 1973, Inf. Process. Lett..

[3]  S. Rao Kosaraju,et al.  Fast parallel processing array algorithms for some graph problems(Preliminary Version) , 1979, STOC.

[4]  Azriel Rosenfeld,et al.  Cellular Graph Automata , 1978, Graph-Grammars and Their Application to Computer Science and Biology.

[5]  Stefano Levialdi,et al.  On shrinking binary picture patterns , 1972, CACM.

[6]  S. H. Unger,et al.  A Computer Oriented toward Spatial Problems , 1899, Proceedings of the IRE.

[7]  Azriel Rosenfeld,et al.  Parallel Image Processing by Memory-Augmented Cellular Automata , 1981, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[8]  Azriel Rosenfeld,et al.  Parallel Computation of Contour Properties , 1981, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[9]  Azriel Rosenfeld,et al.  Parallel computers for region-level image processing , 1982, Pattern Recognit..

[10]  Azriel Rosenfeld,et al.  Triangle Cellular Automata , 1981, Inf. Control..

[11]  S. H. Unger,et al.  Pattern Detection and Recognition , 1959, Proceedings of the IRE.

[12]  Luigi P. Cordella,et al.  Parallel Detection of Concavities in Cellular Blobs , 1976, IEEE Transactions on Computers.

[13]  Azriel Rosenfeld,et al.  Cellular Graph Automata. I. Basic Concepts, Graph Property Measurement, Closure Properties , 1979, Inf. Control..

[14]  Azriel Rosenfeld,et al.  Picture languages: Formal models for picture recognition , 1979 .

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

[16]  T. J. Fountain,et al.  A cellular logic array for image processing , 1973, Pattern Recognit..

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

[18]  Roland Vollmar Algorithmen in Zellularautomaten , 1979 .

[19]  Bruce H. McCormick,et al.  The Illinois Pattern Recognition Computer-ILLIAC III , 1963, IEEE Trans. Electron. Comput..

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

[21]  Reinhard Klette A Parallel Computer for Digital Image Processing , 1979, J. Inf. Process. Cybern..

[22]  Azriel Rosenfeld,et al.  Parallel Region Property Computation by Active Quadtree Networks , 1981, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[23]  Philip Marks,et al.  Low-level vision using an array processor , 1980 .

[24]  Azriel Rosenfeld,et al.  Sequential and cellular graph automata , 1980, Inf. Sci..

[25]  Reinhard Klette Parallel operations on binary images , 1980 .

[26]  P. Rosenstiehl,et al.  INTELLIGENT GRAPHS: NETWORKS OF FINITE AUTOMATA CAPABLE OF SOLVING GRAPH PROBLEMS , 1972 .