UNIT 31 - EFFICIENT STORAGE OF LINES - CHAIN CODES

UNIT 31 - EFFICIENT STORAGE OF LINES - CHAIN CODES

Compiled with assistance from David H. Douglas, University of Ottawa

  • A. INTRODUCTION
  • B. TECHNIQUES FOR REPRESENTING IRREGULAR LINES
  • C. STORING CHAINS (ARCS)
  • D. APPLICATIONS OF CHAIN CODES
  • REFERENCES
  • DISCUSSION AND EXAM QUESTIONS
  • NOTES

    UNIT 31 - EFFICIENT STORAGE OF LINES - CHAIN CODES

    Compiled with assistance from David H. Douglas, University of Ottawa

    A. INTRODUCTION

    Terms

    B. TECHNIQUES FOR REPRESENTING IRREGULAR LINES

    1. Straight line segments

    2. Arcs of circles

    3. Splines

    C. STORING CHAINS (ARCS)

    Advantages and disadvantages

    Freeman chain code

    Compressing code

    Repeating sequences

    Summary

    D. APPLICATIONS OF CHAIN CODES

    Vectorizing raster data

    Vectorizing scanner output

    REFERENCES

    Freeman, H., 1961. "On the encoding of arbitrary geometric configurations," Institute of Radio Engineers, Transactions on Electronic Computers, EC10:260-8.

    Pavlidis, T., 1982. Algorithms for Graphics and Image Processing, Springer-Verlag, Berlin.

    DISCUSSION AND EXAM QUESTIONS

    1. Using a sample line drawn on a sheet of paper, write out (a) the Freeman chain code representation of the line using single digits ranging from 0 to 7, (b) its representation using the binary code based on turn angles, and (c) its representation using run encoded chains. Which option gives greater data compression? (express the length of each code in bits, and remember that a number between 0 and 7 requires 3 such bits) (need to include a drawn example).

    2. The answer to the previous question depends on the type of line being coded. Discuss the characteristics which would give greatest data compression for each of the three options, and describe examples of lines with these characteristics.

    3. The accuracy with which a line is represented as a series of straight line segments depends on the process used to select points during digitizing. Discuss the criteria you would use to select points in order to obtain an accurate representation of a line. How would these criteria change depending on the nature of the line?

    4. Using a simple classified raster, write out a vectorized representation using arcs and Freeman chain code. Include the left and right polygons and pointers to adjacent arcs as attributes of each arc, and the classes as attributes of each polygon. Show each line as a coordinate pair for the

    beginning point, followed by a chain code using digits in the range 0 through 7.

    5. In preparation for the Unit 32, figure out how you would set up a program to determine where two lines, defined by their end points, intersect. Start with a diagram. Under what conditions will your program fail?


    Back to Geography 370 Home Page

    Back to Geography 470 Home Page

    Back to GIS & Cartography Course Information Home Page



    Please send comments regarding content to: Brian Klinkenberg
    Please send comments regarding web-site problems to: The Techmaster
    Last Updated: August 30, 1997.