Sorting, Histogramming, and Other Statistical Operations on a Pyramid Machine

  • S. L. Tanimoto
Part of the Springer Series in Information Sciences book series (SSINF, volume 12)


We define a pyramid machine to consist of an SIMD cellular array having pyramid interconnections, together with a controller consisting of a conventional microcomputer augmented with hardware to communicate with the cellular array. Primarily intended for graphics and image analysis applications, pyramid machines may also be used for more general data processing. Many operations can be performed in 0(log N) time with this architecture; finding maxima, areas, and centroids are typical of such operations. Here algorithms are given for sorting, for finding the kth largest element, for local order statistics, for median filtering of image data, for computing the histogram of a set of numbers, and for computing the mean and standard deviation. Most of these algorithms run as fast as or faster than the best known algorithms for any SISD or flat array SIMD computer. Others offer simpler programs than those for the optimal algorithms.


Edge Image Euler Number Elementary Operation Tree Machine Cellular Array 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 10.1
    S. L. Tanimoto, A. Klinger (eds.): Structured Computer Vision: Machine Perception Through Hierarchical Computation Structures (Academic Press. New York, 1980)Google Scholar
  2. 10.2
    J. L. Bentley, H. T. Kung: “A Tree Machine for Searching Problems”, Department of Computer Science Technical Report 79–142, Carnegie-Mellon University (1979)Google Scholar
  3. 10.3
    A. Kltnger, C. R. Dyer: Experiments on picture representation using regular decomposition, Computer Graphics Image Processing 5, 68–105 (1976)CrossRefGoogle Scholar
  4. 10.4
    G. M. Hunter, K. Steiglitz: Operations on images using quad trees, IEEE Trans. Pattern Analysis Machine Intelligence PAMI-1, 145–153 (1979)CrossRefGoogle Scholar
  5. 10.5
    C. R. Dyer, A. Rosenfeld, H. Samet: Region representation: boundary codes from quadtrees, Comm. ACM 23 171–179 (1980)MATHCrossRefGoogle Scholar
  6. 10.6
    H. Samet: Region representation: quadtrees from boundary codes, Comm. ACM 23 163–170 (1980)MATHCrossRefGoogle Scholar
  7. 10.7
    A. R. Hanson, E. M. Riseman: “Design of a Semantically-Directed Vision Processor”, Computer and Information Sciences Technical Report 74–1, University of Massachusetts (1974)Google Scholar
  8. 10.8
    A. R. Hanson, E. M. Riseman: “Processing cones: a computational structure for image analysis”, in Structured Computer Vision: Machine Perception Through Hierarchical Computation Structures, ed. by S. L. Tanimoto, A. Klinger (Academic Press, New York, 1980), pp. 101–131Google Scholar
  9. 10.9
    C. R. Dyer: “A Quadtree Machine for Parallel Image Processing”, Knowledge Systems Laboratory Technical Report KSL 51, University of Illinois at Chicago Circle (1981)Google Scholar
  10. 10.10
    C. R. Dyer: “Augmented Cellular Automata for Image Analysis”, Ph.D. dissertation, Department of Computer Science, University of Maryland (1979)Google Scholar
  11. 10.11
    S. L. Tanimoto, T. Pavlidis: A hierarchical data structure for picture processing. Computer Graphics Image Processing 14, 104–119 (1975)CrossRefGoogle Scholar
  12. 10.12
    A. Klinger: “Patterns and search statistics”, in Optimizing Methods in Statistics, ed. by J. S. Rustagi (Academic Press New York, 1972), pp. 303–339Google Scholar
  13. 10.13
    M. J. B. Duff: “CLIP 4: a large scale integrated circuit array parallel processor”, in Proc. 3rd Int’l. Joint Conf. on Pattern Recognition, Coronado, CA, 1976, pp. 728–733Google Scholar
  14. 10.14
    K. Preston Jr., M. J. B. Duff, S. Levialdi, P. Norgren, J. I. Toriwaki: Basics of cellular logic with some applications in medical image processing, Proc. IEEE 51, 826–856 (1979)CrossRefGoogle Scholar
  15. 10.15
    S. L. Tanimoto: “Programming techniques for hierarchical parellel image processors”, in Multicomputers and Image Processing: Algorithms and Programs, ed. by K. Preston Jr., Lo Uhr (Academic Press, New York, 1982) pp. 421–429Google Scholar
  16. 10.16
    A. Reeves: Personal communication (1981) 144Google Scholar
  17. 10.17
    C. R. Dyer: Computing the Euler number of an image from its quadtree, Computer Graphics Image Processing 18, 270–276 (1980)MathSciNetCrossRefGoogle Scholar
  18. 10.18
    T. Dubitzki, A. Y. Wu, A. Rosenfeld: Parallel region property computation by active quadtree networks, IEEE Trans. Pattern Analysis Machine Intelligence PAMI-3, 626–633 (1981)CrossRefGoogle Scholar
  19. 10.19
    D. E. Knuth: The Art of Computer Programming, Vol. 3: Sorting and Searching (Addison-Wesley, Reading, MA, 1973)Google Scholar
  20. 10.20
    P. E. Danielsson: Getting the median faster, Computer Graphics Image Processing 17, 71–78 (1981)CrossRefGoogle Scholar
  21. 10.21
    C. D. Thompson, H. T. Kung: Sorting on a mesh-connected parallel computer, Comm. ACM 20 263–270 (1982)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1984

Authors and Affiliations

  • S. L. Tanimoto
    • 1
  1. 1.Department of Computer ScienceUniversity of WashingtonSeattleUSA

Personalised recommendations