Skip to main content Accessibility help

Prototyping a parallel vision system in Standard ML

  • Greg Michaelson (a1) and Norman Scaife (a1)


The construction of a parallel vision system from Standard ML prototypes is presented. The system recognises 3D objects from 2D scenes through edge detection, grouping of edges into straight lines and line junction based model matching. Functional prototyping for parallelism is illustrated through the development of the straight line detection component. The assemblage of the whole system from prototyped components is then considered and its performance discussed.



Hide All
Amini, A. A., Weymouth, T. E. and Anderson, D. J. (1989) A parallel algorithm for determining two dimensional object positions using incomplete information about their boundaries. Pattern Recognition 22(1): 2128.
Austin, W. J., Wallace, A. M. and Fraitot, V. (1991) Parallel Algorithms for Plane Detection using an Adaptive Hough Transform. Image & Vision Computing 9(6): 372384.
Austin, W. J. and Scaife, N. R. (1994) Reconfigurable Parallel Vision System: Informal Specification. Technical Report RM/94/4, Dept. of Computing and Electrical Engineering, Heriot-Watt University, April.
Bailey, P. R. and Newey, M. C. (1994) An Extension of ML for Distributed Memory Multicomputers. Technical report, Department of Compuuter Science, Australian National University.
Ballard, D. H. (1981) Generalising the Hough Transform to Detect Arbitrary Shapes. Pattern Recognition 13: 111122.
Bastani, F., Hilal, W. and Sithrama Iyengar, S. (1987) Efficient Abstract Data Type Components for Distributed and Parallel Systems. IEEE Computer: 3344.
Bhanu, B. and Nuttall, L. A. (1989) Recognition of 3D objects in range images using a butterfly processor. Pattern Recognition 22(1): 4964.
Bratvold, T. (1993) A Skeleton-Based Parallelising Compiler for ML. In: R., Plasmeijer and M., van Eekelen, eds., Proc. 5th International Workshop on Implementation of Functional Languages,Nijmegen,The Netherlands, pp. 2333, September.
Bratvold, T. (1994) Skeleton-based Parallelisation of Functional Programs. PhD thesis, Department of Computing and Electrical Engineering, Heriot-Watt University.
Burns, A. (1988) Programming in Occam2. Addison-Wesley.
Busvine, D. (1991) Translation of SML to Sequential Occam2. Technical Report TR91/7, Department of Computing and Electrical Engineering, Heriot-Watt University.
Busvine, D. (1993) Detecting Parallel Structures in Functional Programs. PhD thesis, Heriot-Watt University.
Canny, J. (1986) A Computational Approach to Edge Detection. IEEE Trans. Pattern Analysis and Machine Intelligence 8: 679698.
Cohen, V., Landy, S., Pavel, M. and Sperling, G. (1982) HIPS: Image Processing Under Unix Software and Applications. Human Information Processing Laboratory, Department of Psychology, New York University.
Cole, M. I. (1989) Algorithmic Skeletons: Structured Management of Parallel Computation. Pitman/MIT.
Cripps, M. D., Darlington, J., Field, A. J., Harrison, P. G. and Reeve, M. J. (1987) The Design and Implementation of ALICE: a Parallel Graph Reduction Machine, pp. 300326.
Darlington, J., Field, A. J., Harrison, P. G., Kelly, P. H. J., Sharp, D. W. N. and Wu, Q. (1993) Parallel Programming Using Skeleton Functions. In: A., BodeM., Reeve and G., Wolf, eds., PARLE 1993 Parallel Architectures and Languages Europe, Munich, Germany, pp. 146160. Lecture Notes in Computer Science Vol 694. Springer-Verlag.
Dudani, S. A. and Luk, A. L. (1978) Locating straight-line edge segments on outdoor scenes. Pattern Recognition 10: 145147.
Hammond, K. (1991) Parallel SML: a Functional Language and its Implementation in Dactl. Pitman.
Hammond, K. (1994) Parallel Functional Programming: An Introduction (invited paper). In: Proc. PaSCo94, Linz, Austria. World Scientific, 09.
Hough, P. V. C. (1962) Method and Means for Recognising Complex Patterns. U.S. Patent No. 3069654.
Illingworth, J. and Kittler, J. (1988) SURVEY: A Survey of the Hough Transform. CVGIP 44: 87116.
Inmos Ltd. (1988) Occam2 Reference Manual.
Peyton Jones, S. L., Clack, C., Salkild, J. and Hardie, M. (1987) GRIP – A High-Performance Architecture for Parallel Graph Reduction. In: G., Kahn, ed., Functional Programming Languages and Computer Architecture, pp 98112. Springer-Verlag.
Kelly, P. H. J. (1987) Functional Languages for Loosely Coupled Microprocessors. PhD thesis, Imperial College, University of London.
Kittler, J. and Duff, M. J. B. (1985) Image Processing System Architectures. Research Studies Press.
Koutsakis, G. (1993) Parallel Low Level Vision from Functional Prototypes. Master's thesis, Department of Computing and Electrical Engineering, Heriot-Watt University.
Kozato, Y. (1994) Lazy Image Processing: An Investigation into Applications of Lazy Functional Languages in Image Processing. PhD thesis, University of London.
Landin, P. J. (1964) The Mechanical Evaluation of Expressions. Computer J. 6(4): 308320.
Leavers, V. F. (1993) Survey: Which Hough Transform? CVGIP: Image Understanding 58(2): 250264.
Lotufo, R. A., Dagless, E. L., Milford, D. J., Morgan, A. D., Morrissey, J. F. and Thomas, B. T. (1989) Hough transform for transputer arrays. In: Proc. 3rd International Conference on Image Processing and its Applications,Warwick, UK, pp. 122130.
May, M. D. and Shepherd, R. (1987) Communicating Process Computers. Technical Note 22, Inmos Ltd, UK.
McAndrew, P. (1990) Recognising and Locating Objects in Two Dimensional Perspective Views. PhD thesis, Department of Computing and Electrical Engineering, Heriot-Watt University.
McAndrew, P. and Wallace, A. M. (1989) Rapid invocation and matching of 2d images to 3d models using curvilinear data. In: Proc. 3rd International Conference on Image Processing and its Applications,Warwick, UK, pp. 8387.
Milner, R., Tofte, M. and Harper, R. (1990) The Definition of Standard ML. MIT Press.
Peyton Jones, S. (1987) The Implementation of Functional Languages. Prentice-Hall.
Rosenfeld, A., Ornelas, J. and Hung, Y. (1988) Hough transform algorithms for mesh-connected SIMD parallel processors. Computer Vision, Graphics and Image Processing 41: 293305.
Stepney, S. (1993) High Integrity Compilation: A Case Study. Prentice-Hall.
Tarditi, D. and Diwan, A. (1993) The Full Cost of a Generational Copying Garbage Collection Implementation. Technical report, School of Computer Science, Carnegie Mellon University.
Wallace, A. M., Michaelson, G. J., McAndrews, P., Waugh, K. G. and Austin, W. J. (1992) Dynamic Control and Prototyping of Parallel Algorithms for Intermediate- and High-Level Vision. IEEE Computer 25(2).
Waugh, K., McAndrew, P. A. and Michaelson, G. J. (1990) Parallel Implementations from Functional Prototypes: A Case Study. Technical Report TR90/4, Heriot-Watt University.

Prototyping a parallel vision system in Standard ML

  • Greg Michaelson (a1) and Norman Scaife (a1)


Full text views

Total number of HTML views: 0
Total number of PDF views: 0 *
Loading metrics...

Abstract views

Total abstract views: 0 *
Loading metrics...

* Views captured on Cambridge Core between <date>. This data will be updated every 24 hours.

Usage data cannot currently be displayed

Prototyping a parallel vision system in Standard ML

  • Greg Michaelson (a1) and Norman Scaife (a1)
Submit a response


No Discussions have been published for this article.


Reply to: Submit a response

Your details

Conflicting interests

Do you have any conflicting interests? *