A procedure for extracting edge information from real photographs of both flat-faced and curved three-dimensional objects is described. Initially the photograph is subjected to a nonlinear transformation which is based on an edge detection operator by Hueckel. The gray-value variations of a photograph are transformed into short vectors (strokes), which are arranged in a two-dimensional array that has substantially fewer entries than the original image array. The display of a stroke array provides “outline” information that is highly intelligible to the human eye. Using graph searching techniques, strokes are assembled into structures called streaks. Streaks are digital curves which exhibit cellular as well as polygonal properties. The representation of streaks as well as other data can be marked directly in the stroke array, thus making the array usable as an associative memory. This greatly facilitates further processing. © 1975, IEEE. All rights reserved.