an efficient representation of digital curves with …raju/conf/c43.pdf · the digital curve in...

6
AN EFFICIENT REPRESENTATION OF DIGITAL CURVES WITH LINE SEGMENTS AND ELLIPTICAL ARCS C. Paramanand A.N. Rajagopalan Image Processing and Computer Vision Laboratory Dept. of Electrical Engineering, UIT Madras Chennai-36, India paramanandc(Lyahoo.com, [email protected] Fax: +91-44-2257-0120 Keywords: Curve segmentation, Discrete curvature, Critical points, Shape representation Abstract In this paper, we deal with the problem of segmenting digital planar curves formed by a set of connected edge pixels. We propose a new method to measure the curvature at a point on the curve, which is based on calculating the rate of change of tangential angle with respect to the curve length. Initially, we divide the curve into smaller segments at its corners which are detected from the curvature. In the next step, we detect the smooth joins present in the segments that were not represented in the initial step. Finally, we get an efficient representation of the digital curve in terms of line segments and elliptical arcs. 1 Introduction Efficient representation of digital planar curves which correspond to the boundary of objects present in an image is necessary in many applications [I I]. Many approaches have been suggested for segmenting digital curves into various representations. The polygonal approximation in which curves are segmented into a series of straight-line segments is a popular and simple approach. But polygonal approximation has the undesirable effect of breaking a conic arc into many straight-line segments, which means higher order curves have to be involved while segmenting curves. The computation involved in representing a curve as a combination of straight- line segments and higher order curves is high, since a lot of parameters have to be estimated. Existing approaches to segmenting curves can be broadly classified as edge approximation-based and critical point- based methods. The edge-based algorithms [91, [51, do not consider the presence of critical points such as corners in the curve. In the method proposed by Rosin and West [9], a polygonal approximation of the curve to be segmented is initially obtained. Then a set of line segments is replaced by an arc, if the arc is more significant than the line segment representation with respect to a significance measure. The dynamic focusing approach in [5] recursively fits a curve into line segments and circular arcs. In critical points-based methods, the curve is segmented by dividing it into sub-segments at the critical points. Critical points are the points on the curve where there is a change in the shape of the curve. They are generally obtained by computing the curvature. Critical point detection schemes can be classified into angle detection and scale-space filtering schemes. In the angle detection schemes such as [8], [4], [10], the curvature measures are based on the angle between the vectors that connect the curve points. In scale-space filtering schemes [1], the curvature is analysed at several scales by convolving the parameterized primitive with first and second derivatives of the Gaussian. The critical points are classified into corners where the tangent to the curve is discontinuous and as smooth joins where the tangent is continuous but the curvature is discontinuous. Scale-space filtering schemes are computationally more complex than those based on angle detection. A combination of critical point-based methods and edge approximation-based methods is adopted in [11] to segment a curve into line segments and elliptical arcs. The comners are detected by first applying adaptive smoothing to the tangent orientation and then taking derivatives of the smoothed tangent orientation to locate the high spikes on the derivative. The smooth joins are first roughly located by a dynamic focusing technique and then refined by an adjustment algorithm. In this paper, we develop an algorithm to efficiently segment a digital curve into straight-line segments and elliptical arcs. We propose a new method to evaluate curvature for obtaining the corner points present in a curve. The proposed method to evaluate curvature is stable and does not involve computationally complex operations such as filtering or smoothing. Our method uses a fixed window to detect all types of corner points. This avoids the key problem of having to search for a suitable window size as in angle detection schemes. We divide the curve into sub-segments at the corner points. We check whether any smooth joins are present in these segments and represent them using line segments and elliptical arcs. Curve segments that do not contain any critical points are segmented using the dynamic focusing approach [5]. Since we divide the curve at the critical points, the overall representation turns out to be more efficient than with just the dynamic focusing approach which does not guarantee that a 470

Upload: others

Post on 28-Jul-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AN EFFICIENT REPRESENTATION OF DIGITAL CURVES WITH …raju/conf/c43.pdf · the digital curve in terms of line segments and elliptical arcs. 1 Introduction Efficient representation

AN EFFICIENT REPRESENTATION OF DIGITAL CURVESWITH LINE SEGMENTS AND ELLIPTICAL ARCS

C. Paramanand A.N. RajagopalanImage Processing and Computer Vision Laboratory

Dept. of Electrical Engineering, UIT MadrasChennai-36, India

paramanandc(Lyahoo.com, [email protected]: +91-44-2257-0120

Keywords: Curve segmentation, Discrete curvature, Criticalpoints, Shape representation

Abstract

In this paper, we deal with the problem of segmenting digitalplanar curves formed by a set of connected edge pixels. Wepropose a new method to measure the curvature at a point onthe curve, which is based on calculating the rate of change oftangential angle with respect to the curve length. Initially, wedivide the curve into smaller segments at its corners which aredetected from the curvature. In the next step, we detect thesmooth joins present in the segments that were not representedin the initial step. Finally, we get an efficient representation ofthe digital curve in terms of line segments and elliptical arcs.

1 Introduction

Efficient representation of digital planar curves whichcorrespond to the boundary of objects present in an image isnecessary in many applications [I I]. Many approaches havebeen suggested for segmenting digital curves into variousrepresentations. The polygonal approximation in which curvesare segmented into a series of straight-line segments is apopular and simple approach. But polygonal approximationhas the undesirable effect of breaking a conic arc into manystraight-line segments, which means higher order curves haveto be involved while segmenting curves. The computationinvolved in representing a curve as a combination of straight-line segments and higher order curves is high, since a lot ofparameters have to be estimated.

Existing approaches to segmenting curves can be broadlyclassified as edge approximation-based and critical point-based methods. The edge-based algorithms [91, [51, do notconsider the presence of critical points such as corners inthe curve. In the method proposed by Rosin and West [9],a polygonal approximation of the curve to be segmented isinitially obtained. Then a set of line segments is replaced byan arc, if the arc is more significant than the line segmentrepresentation with respect to a significance measure. Thedynamic focusing approach in [5] recursively fits a curve intoline segments and circular arcs.

In critical points-based methods, the curve is segmented by

dividing it into sub-segments at the critical points. Criticalpoints are the points on the curve where there is a changein the shape of the curve. They are generally obtained bycomputing the curvature. Critical point detection schemescan be classified into angle detection and scale-space filteringschemes. In the angle detection schemes such as [8], [4], [10],the curvature measures are based on the angle between thevectors that connect the curve points. In scale-space filteringschemes [1], the curvature is analysed at several scales byconvolving the parameterized primitive with first and secondderivatives of the Gaussian. The critical points are classifiedinto corners where the tangent to the curve is discontinuousand as smooth joins where the tangent is continuous but thecurvature is discontinuous. Scale-space filtering schemes arecomputationally more complex than those based on angledetection.

A combination of critical point-based methods and edgeapproximation-based methods is adopted in [11] to segment acurve into line segments and elliptical arcs. The comners aredetected by first applying adaptive smoothing to the tangentorientation and then taking derivatives of the smoothed tangentorientation to locate the high spikes on the derivative. Thesmooth joins are first roughly located by a dynamic focusingtechnique and then refined by an adjustment algorithm.

In this paper, we develop an algorithm to efficiently segmenta digital curve into straight-line segments and ellipticalarcs. We propose a new method to evaluate curvature forobtaining the corner points present in a curve. The proposedmethod to evaluate curvature is stable and does not involvecomputationally complex operations such as filtering orsmoothing. Our method uses a fixed window to detect alltypes of corner points. This avoids the key problem of havingto search for a suitable window size as in angle detectionschemes. We divide the curve into sub-segments at the cornerpoints. We check whether any smooth joins are present inthese segments and represent them using line segments andelliptical arcs. Curve segments that do not contain any criticalpoints are segmented using the dynamic focusing approach[5]. Since we divide the curve at the critical points, the overallrepresentation turns out to be more efficient than with just thedynamic focusing approach which does not guarantee that a

470

Page 2: AN EFFICIENT REPRESENTATION OF DIGITAL CURVES WITH …raju/conf/c43.pdf · the digital curve in terms of line segments and elliptical arcs. 1 Introduction Efficient representation

curve segment formed by joining a straight-line segment and aconic arc will be split into one line segment and one conic arcat the point of intersection.

2 Measure Of Curvature

The curvature at a point on a curve is defined as d" whereqds'is the tangential angle and s is the arc length. For a continuouscurve written in the form of y = f (x), the curvature is givenby

r,(x) I V (X) 1___

(1+ (y, (X))2) 2

No such clear definition is possible for digital curves. Manymethods have been proposed to approximately measure thecurvature at a point on a digital curve. Methods such as[1], [7], calculate the curvature by representing the digitalcurve as a parametric function of arc length. This functionis convolved with a Gaussian smoothing window and thecurvature is evaluated for different values of the variance ofthe Gaussian window to get a scale-space representation. Butthese methods are computationally intensive. The curvaturemeasure proposed in [6] is based on chord-to-point distanceaccumulation. This curvature measure varies with changes inthe chord length, so it has to be evaluated for different chordlengths. Other methods propose curvature measures based onangles between the vectors that connect the curve points [81,[10]. Rather than measuring the rate of change of tangentialangle with respect to curve length, these methods, measurethe angle between two fixed length chords where the lengthscorrespond to the computed "natural scale" of the curve aboutthe given point.

2.1 Proposed Measure

We propose a curvature measure which is based on evaluatingthe rate of change of the tangential angle with respect to thecurve length. Let C = {pi = (xi ,yi) , i = 1. ..., n} be the setof connected pixels in the digital curve. The ith point in the setis denoted by pi and pt--i is its neighboring point. To calculatethe curvature at the point pi, we make an approximation of thechange in the tangential angle at pi and divide it by the lengthover which the approximation was made. We first explain themethod to obtain the tangential and normal vectors at a pointon the curve and then explain the evaluation of curvature.

2.1.1 Tangent and Normal vectors

Consider a point Pj = (xj , m) on a curve as shown in Fig. 1 (a).The points pj+w, (xj+~1,. yj+w) and pj,, (xj-w, yj -,)are ahead and behind of p-3 in the sequence by w pointsrespectively as shown in Fig. l(a). The vectors vjj' and Vib arethe direction vectors at p3 in the direction of pj+w and pj- w'respectively, and are obtained from equations (1) and (2) as

Vjf =V ./(r+., X)

2+("Yj±",_V)2

( + -- L) J

Vt

(a) (b)

Figure 1: Obtaining the approximate tangent and normalvectors.

Vk- dVk~V T'k Pk

Vk+ Vk-

VIk-

(a) (b)

Figure 2: Calculating the curvature at a point Pk

F j-- ¾)Vb I V/(.2J I , X)±2+(Vj j ) y

2 I (2)

The tangent vector vjt and the normal vector vj at the pointpj can be approximately obtained by considering them to bethe angular bisectors of the direction vectors vjf and Vjb asshown in Fig 1(b). The magnitudes of the vectors VJf and Vib

are equal to unity. The vectors of their angular bisectors areobtained from their sum and difference. The tangent and thenormal vectors are determined as

VJn = Vjf + Vib

-~ Vjf - V~b

2.1.2 Evaluation of curvature

To calculate the curvature at a point PA we find out thetangent vectors Vk+w and Vk-, at the points Pk~u; and Pk-w

respectively, determine the angle between them, and divide itby the distance between the points Pk+,, and Pk-,,, In Figs.2(a) and 2(b) we see that the angle between the tangents Vk~w

and Vk..w is equal to 0 and the distance between the points

Pk+. and Pk-. is equal to d. The curvature K at the point Pkis evaluated as K = 2 The value of 0 always varies betweenzero and 7r radians. The point Pk in Fig. 2(a) has a highercurvature value than in Fig. 2(b).

While calculating the curvature at the point Pk we divide thechange in tangential angle by the distance between the points

471

Page 3: AN EFFICIENT REPRESENTATION OF DIGITAL CURVES WITH …raju/conf/c43.pdf · the digital curve in terms of line segments and elliptical arcs. 1 Introduction Efficient representation

A

C

Figure 3: Digital curve for which the curvature measures arecalculated.

(a) (b) (c)

Figure 4: The k-cosine curvature measure with (a) k=5, (b)k=10 and (c) k=20.

Pk+,, and Pk-,,. This results in better performance whencompared to the popular k-cosine curvature measure proposedin [8]. For the test curve shown in Fig. 3, we evaluate the thek-cosine curvature measure for k = 5, 10 and 20 as shown inFig. 4. The proposed curvature measure evaluated for the samecurve with w = 5, 10 and 20 is shown in Fig. 5. We observethat the peak value of the curvature corresponding to the pointB on the test curve in Fig. 3 is more stable for the proposedcurvature measure than in the k-cosine curvature measure.

3 Representation of Digital Curves

In order to represent a digital curve in terms of ellipticalarcs and line segments, we need to divide it at the criticalpoints where the shape of the curve changes. We initiallysplit the curve into many smaller curve sub-segments at thehigh curvature points where the shape of the curve changessignificantly. We try to represent each sub-segment by eithera straight-line segment or an elliptical arc. The sub-segmentswhich have not been represented initially are marked asunknowns. We search for the presence of smooth joins insuch unknown sub-segments and segment them. The unknownsub-segments that do not contain any critical points at all aresegmented using a dynamic focusing approach [5] in whichone end of the sub-segment is fixed and scanned from the otherend until it focuses on a component segment which is bestfit with either a straight line or an elliptical arc. The process

1~L O OOPWSON00 O O0ONOOO.

(a) (b)

V5.0 NO 0~0OflI.00 06 0000

(c)

Figure 5: Proposed curvature measure with (a) 7v=5, Nb w=10and (c) w=20.

is repeated in the same manner for the remaining part of thesub-segment.

3.1 Representing sub-segments by detecting the cornerpoints

We obtain the curvature of the given curve from the proposedcurvature measure with a fixed window length w. We choosethe value of w to be five pixels. This is because, we foundthat corners of all magnitudes are consistently detected withthis size of the window. Initially, we select the points thathave maximum curvature in their neighborhood as candidatepoints for detecting corners. For a local curvature maximumto be considered as a critical-point, its curvature value mustbe sufficiently high when compared with the average curvaturevalue in its neighborhood. A point on a circular arc of verysmall radius will have a high value of curvature, but the meanvalue of curvature in its locality will also be high. Hence,the local curvature maxima are considered as critical pointsonly if they are greater than a threshold -T, where the valueof 7- is dependent on the mean value of the curvatures of thepoints in the neighborhood (the local curvature maximum isnot considered while calculating the mean).

We divide the curve at the critical-points into smaller curvesub-segments. Our aim is to determ-ine whether a sub-segmentcorresponds to a line segment or an elliptical arc or contains asmooth join. We perform a total least squares fit to the pointsof the sub-segment and calculate the error in the line fit todetermine whether it is a straight-line segment. To determinethe error in line fit, we calculate the sum of the Euclideandistances between the line and each point on the curve sub-segment and divide this sum by the number of points present inthe segment. Larger line segments present in the digital curvewill have a higher value of the sum of distances due to noisefrom the discretization of points. Dividing this sum by thenumber of points present in the segment prevents longer linesegments from not being classified as line segments. If thesub-segment cannot be fit to a straight line, an ellipse fittingis performed. Least squares fitting of ellipses is performedusing the standard technique proposed by Fitzgibbon et. al. [3].The ellipse fit error is calculated to determnine whether the sub-segment is an elliptical arc. Calculating the Euclidean distancebetween a point and an ellipse is complicated; the algebraicdistance gives a simple approximation to it [13]. The algebraicdistance between the point pi = (x.8 , yi) and the ellipse definedby the equation Ax 2 + Bxy ± Cy 2 + Dx + Ly + F = 0 isequal to Ax~ 2 Bxiyi + Cy~? + Dxi + Eyi + F. The ellipsefit error E for a curve segment having n points is evaluated asE = n'i~~B,,c~D.EoF Sub-segments thatare neither straight-line segments nor elliptical arcs are checkedfor presence of smooth joins.

A synthetically generated curve which is to be segmented isshown in Fig. 6. Its curvature is calculated using the proposedcurvature measure and is plotted in Fig. 7. The peaks presentin the curvature plot correspond to the comner points present in

472

I

Page 4: AN EFFICIENT REPRESENTATION OF DIGITAL CURVES WITH …raju/conf/c43.pdf · the digital curve in terms of line segments and elliptical arcs. 1 Introduction Efficient representation

Figure 9: (a) A curve having a smoothing join. (b) Theaveraged points of the curve.

Figure 6: A synthetically generated curve.

Figure 7: Curvature of the curve in Fig. 6 obtained using theproposed curvature measure.

the curve. The corner points obtained from the curvature aremarked on the curve in Fig. 8(a). The representation of sub-segments in terms of line segments and ellipses is shown inFig. 8(b). We observe that the sub-segment between the cornerpoints A and B present in Fig. 8(a) has not been represented inFig. 8(b).

3.2 Detecting the smooth joins

The curve segments such as those present in Fig. 9(a) do nothave any comner points and are not represented in the previousstep. Scale-space approach [ 12] or shape/boundary partitioningmethods 121 can be used to segment curves having smoothjoins. We develop an alternative technique to detect the smoothjoins.

Let pi be a point on the segment containing n points, p'(xi, y1) , i 1 ,.., n. We divide the segment into k groups byselecting a window size s3 such that n = k * s approximately.

A

(a)

B

(b)

Figure 8: (a) Corner points detected in the curve of Fig. 6.(b) Representation of the curve in terms of ellipses and linesegments.

p..

(a) (b)

Figure 10: (a) An example illustrating the detection of smoothjoins. (b) The angle between the tangents and normals at pointswhich are not smooth joins.

For each group we take the average of the x and y co-ordinates. That is, for the jth group containing .s points x, =

Zi=js ,+Ixi and Yaj = jis- 8+ yi, j =1,.., k. Theaveraged points are denoted by Paj (Xaj, Yaj), j-1..,k.Fig. 9(b) shows the averaged points obtained for the curve ofFig. 9(a) for which n = 438 and s = 30.

The tangent and normal vectors at the averaged points(excluding the first and the last points) are calculated by usingthe method that was explained in the previous section. Thetangent and normal vectors at the point Paj are obtained fromdirection vectors that are taken towards the points Pa(j±1)and Pa(j 1). We explain the procedure with the help of anexample of a set of points as shown in Fig. 10(a). The tangentvector V2t and the normal vector V2n that are obtained fromthe direction vectors at the point P,2 towards pal and Pa3 areshown in Fig. 10(a). If there is no change in the shape ofa curve, the angle between the tangents at successive pointswill be equal to the angle between the normals. If the shapeof the curve changes, this condition is violated. We check forthis condition on the set of averaged points of the curve todetermine the point of smooth join. In Fig. 10(b) we see thatthe angle between the tangents at the point Pa2 and PA3 is equalto the angle between the normals, whereas this is not true inthe case of points PO and PAA as shown in Fig. 11. Using thisinformation, we obtain the approximate location of the smoothjoin in the curve segment and divide the curve segment at thatpoint.

For the curve in Fig. 9(a) the detected smooth join is shown inFig. 12(a) and its representation in terms of line segments andelliptical arc is shown in Fig. 12(b). We observe that the curvein Fig. 9(a) which is a smooth join between two elliptical arcs

473

(a) (b)

Page 5: AN EFFICIENT REPRESENTATION OF DIGITAL CURVES WITH …raju/conf/c43.pdf · the digital curve in terms of line segments and elliptical arcs. 1 Introduction Efficient representation

Figure 11: The angle between the tangents and normals at Figure 13: Final representation of the curve in the Fig. 6.points where a smooth join is present.

(a) (b)

Figure 12: (a) Detected smooth join for the curve in the Fig.9(a). (b) The representation of the curve in Fig. 9(a) afterdetecting the smooth join.

has been correctly represented by two ellipses in Fig. 12(b).

4 Experimental results

For the synthetically generated curve in the Fig. 6 the finalrepresentation in terms of straight lines and elliptical arcs afterdetecting the smooth joins was obtained as shown in Fig. 13.Here we see that the curve segment between the points A and Bin the Fig. 8(a) which was not represented in Fig. 8(b) has beenbeen rightly represented by two elliptical arcs after detectingthe smooth join present in it.

We also tested our method on images of real objects. In Fig.14, the image of a spanner is shown and the task is to representthe boundary with lines and elliptical arcs. The curvature ofthe boundary is plotted in Fig. 15 in which we observe thatthere are four peaks present which have a sufficiently highvalue of curvature with respect to their neighborhood. Thecorner points corresponding to these peaks are marked on theboundary of the object in Fig. 16(a). None of the curve sub-segments between these comners can be represented by eitherstraight lines or elliptical arcs as a whole. Hence these weresubjected to detection of smooth joins. The four smooth joinsthat were found have been marked on the object boundary inFig. 16(b). After the curve sub-segments were split at thesmooth joins, the dynamic focusing algorithm was applied.The final representation is shown in Fig. 17 in which weobserve that the elliptical arcs and line segments present inthe object boundary have been properly represented. Since wedivide the curve at the critical points, the overall representationhas been done correctly and efficiently. The representation ofthe image of a gear in Fig. 18 is obtained as shown in Fig.19. In Fig. 19, we notice that the teeth of the gear which are

Figure 14: An object wvhich is to be represented.

fragmented and cluttered are mainly represented by shorter linesegments. Whereas, the smooth curved surfaces in the gear arecorrectly represented by ellipses.

5 Conclusions

A computationally efficient procedure to segment digitalcurves into straight-line segments and elliptical arcs has beenproposed in this paper. We have shown that the proposedcurvature measure is robust to changes in the window lengthand involves fewer computations. We detect the presence ofsmooth joins using techniques which are simpler than theconventional methods. We divide the curve at critical pointsfor an efficient representation. Dynamic focusing whichis computationally inefficient is used only in the segmentscompletely devoid of critical points.

Figure 15: Curvature of the boundary of the object in Fig. 14.

474

Page 6: AN EFFICIENT REPRESENTATION OF DIGITAL CURVES WITH …raju/conf/c43.pdf · the digital curve in terms of line segments and elliptical arcs. 1 Introduction Efficient representation

References

(a) (b)

Figure 16: (a) Detected corner points and (b)present in the object of Fig. 14.

Smooth joins

[1] H. Asada and M. Brady, "The curvature primal sketch",IEEE Transactions on Pattern Analysis and MachineIntelligence, vol. 8, pp. 2-14, 1986.

[2] T.M. Cronin, "Visualizing concave and convex partitioningof 2D contours", Pattern Recognition Letters, vol. 24, pp.429-443, 2003.

[3] A.W. Fitzgibbon, M. Pilu and R.B. Fisher, "Direct leastsquares fitting of ellipses", IEEE Transactions on Pattern

Analysis and Machine Intelligence, vol. 21, pp. 476-480,1996.

[4] H. Freeman and L.S. Davies, "A corner-finding algorithmfor chain coded curves", IEEE Trans. Comput, vol. C-22,pp. 297-303, 1977.

[5] C. Ichoku, B. Deffontaines and J."Segmentation of digital plane curves:focussing approach", Pattern Recognition17, pp. 741-750, 1996.

Chorowicz,a dynamic

Letters, vol.

Figure 17: The final representation of the object in Fig. 14.

Figure 18: Gear image which is to be represented.

000

C)

0

[6] J.H. Han and T. Poston, 'Chord-to-point distanceaccumulation and planar curvature: a new approach todiscrete curvature", Pattern Recognition Letters, vol. 22, pp.1133-1144, 2001.

[7] F. Mokhtarian and A. Mackworth, "Scale-baseddescription and recognition of planar curves and two

dimensional shapes", IEEE Transactions on PatternAnalysis and Machine Intelligence, vol. 8, pp. 34-43, 1986.

[8] A. Rosenfeld and E. Johnston, "Angle detection on digitalcurves"~, IEEE Trans. Comput, vol. C-22, pp. 875-878.,1973.

[9] P.L. Rosin and G.A.W. West, "Nonparametricsegmentation of curves into various representations",IEEE Transactions on Pattern Analysis and Machine

Intelligence, vol. 17, pp. 1140-1153, 1995.

[10] C. Teh and R.T. Chin, "On the detection of dominantpoints on digital curves", IEEE Transactions on PatternAnalysis and Machine Intelligence, vol. 11, pp. 859-872,1989.

[11 ] W. Wan and J.A. Ventura, "Segmentation of planar curvesinto straight-line segments and elliptical arcs", GraphicModels and Image Processing, vol. 59, pp. 484-494, 1997.

[12] Q.M. Wu and M.G. Rodd, "Boundary segmentationand parameter estimation for industrial inspection", lEE

Computers and Digital Techniques, vol. 137, pp. 3 19-327,1990.

[13] Z. Zhang, "Parameter Estimation Techniques: A TutorialWith Application To Conic Fitting", Image and Vision

Computing, vol. 15, pp. 59-76, 1997.

Figure 19: Representation of the gear image in Fig. 18.

475

C=>