Isobathymetric Line Simplification with Conflict Removal Based on a B-spline Snake Model

Size: px
Start display at page:

Download "Isobathymetric Line Simplification with Conflict Removal Based on a B-spline Snake Model"

Transcription

1 Marine Geodesy, 30: , 2007 Copyright Taylor & Francis Group, LLC ISSN: print / X online DOI: / Isobathymetric Line Simplification with Conflict Removal Based on a B-spline Snake Model ERIC GUILBERT AND HUI LIN Joint Laboratory for GeoInformation Science, The Chinese University of Hong Kong This paper introduces a new method for the smoothing of isobathymetric lines for marine chart construction. Specific constraints have to be observed as the chart must be legible and safe for navigation. The method, based on a snake model, respects these constraints of legibility and safety which impose a direction for curve deformation. Conflicts such as self-intersections are also considered. These two points are the main contributions of the paper as current methods cannot deal with such constraints. Several case studies are presented and results obtained on real data are discussed. Keywords GIS Cartographic generalization, B-spline curve, snakes, smoothing, maritime Introduction Construction of Marine Charts Marine charts are used by sailors to find their location and to establish their route. They transcribe the main characteristics of the sea floor as well as objects and information useful for navigation such as buoys, underwater cables, or tracks. The submarine relief is described by the mean of: Ĺ Sounds, depth points identified by their coordinates x and y on the map and a depth z > 0; Ĺ Isobathymetric lines (or isobaths), contour lines joining all the points at the same depth; Ĺ Coastlines, which are the lines corresponding to the intersection between the land and the level of the highest seas. The first stage in chart construction is data collection, which is performed by sounding the sea bottom. Sounding is mostly performed by multibeam echo-sounders on board of a boat. The position of each sounding is deduced from the position of the boat, given by a GPS and different motion sensors located on the boat which correct the measurement errors due to the roll, pitch or heave of the boat. Multi-beam echo-sounders provide a complete coverage of the sea bottom as it collects around one million soundings per square kilometer. The information obtained is stored in a bathymetric database. Received 10 June 2006; accepted 21 December Address correspondence to Eric Guilbert, Joint Laboratory for GeoInformation Science, Institute of Space and Earth Information Science, room 615, Esther Lee Bldg., The Chinese University of Hong Kong, Shatin, Hong Kong. guilbert@cuhk.edu.hk 169

2 170 E. Guilbert and H. Lin Figure 1. Isobathymetric lines before (left) and after generalization. Charts offer a schematic and simplified plane representation of the reality according to the different purposes of the users. Data collected on the field must be selected, simplified, or modified under definite conditions such as the scale of the map or its purpose. This stage, called map generalization, can be divided into two parts. The first one is object generalization. The objective is to select the objects shown on the map according to their importance and to the map specificities while preserving semantic information. This operation is mostly based on logical constraints and requires operations such as suppression, aggregation, or grouping objects of a same class. Visual or aesthetic constraints are not taken into consideration. The second part, which usually comes after object generalization has been completed, is cartographic generalization. Its purpose is to reduce the complexity of a map when passing to a smaller scale by emphasising the most important information and suppressing what is less relevant while maintaining the links between the different objects and preserving the aesthetic quality of the map (Weibel 1999). Objects are selected according to the scale of the map and their geometric features are smoothed or emphasised according to their relevance. The main cartographic generalization operations are smoothing, enlargement, displacement, aggregation, deletion, and caricature. The context of this paper is line generalization for marine chart construction (Figure 1). The lines are contour lines connecting the points at a same depth (isobathymetric lines). They are usually defined with polygonal lines. Another suitable representation is the use of B-spline curves (Saux 2003). They are parametric curves defined by a polynomial function. Their main interest is that they always offer a smooth representation which improves compression and visualization operations such as zooming or spanning by avoiding broken arc effects of polygonal lines. Such operations become more and more important with the development of electronic navigation systems such as Electronic Chart Display System (ECDS). Marine charts are subject to specific constraints that must be respected during the generalization stage to ensure their legibility and navigation safety. These are defined as follows: Ĺ Graphical constraint of legibility: The final chart should not include either realline intersections (i.e., transversal intersections, overlaps, tangencies) or visual line intersections (when curve segments are too close with respect to an accuracy criterion ε vis related to the working scale). Ĺ Application constraint of safety: The depth given on a map must never be deeper than the real depth. A contour line characterizing a pit can be removed, but a line characterizing a peak must be maintained (Figure 2). Displacement or modification

3 Isobathymetric Line Simplification with Conflict Removal 171 Figure 2. Illustration of the safety constraint. Left: vertical section of the sea with a 3 m peak and a 12 m pit. Right: the corresponding chart with the lines and sounds. The 10 m isobath representing a pit can be removed. The 5 m isobath representing a peak must be maintained. of an isobathymetric line should be done by moving the points towards deeper areas; and Ĺ Geomorphologic structural constraint: The relief must be preserved and the most characteristic elements must be emphasised. Line Smoothing Methods for Cartographic Generalization When changing the scale of a map into a smaller scale, isobathymetric lines must be smoothed to remove irrelevant details so that simplified and legible curves are yielded. In literature, line smoothing is often treated by applying both smoothing and compression operators. Smoothing consists of removing sharp angularities or attenuating curve oscillations and is used to improve the aesthetic characteristics of a line; compression consists of reducing the number of points used to represent the curves. Here, we focus only on smoothing methods as compression methods are not always suitable for generalization (Li 1992), especially when there are large map scale changes or strong application constraints such as safety. Different techniques have been used for line generalization. The first approaches were local, i.e., smoothing done by considering few points at a time, in opposition to global methods which process the entire curve at once. Nickerson (1988) and McMaster (1989) introduced and reviewed several local geometrical methods where smoothing is done by considering several neighbouring points and computing an average position. In (Li, 1992), smoothing is performed by selecting a set of points of the curve according to a legibility distance. Harrie (1999) presents a global geometrical method whereby generalization is performed using optimization techniques. Burghardt (2005) considers the curve as a snake and smoothes it by reducing its energy defined from its derivatives. In (Fritsch, 1997) and (Saux, 1998), curve smoothing is done by viewing the polygonal line or control polygon as a cable network undergoing mechanical forces. A main interest of global approaches against local approaches is that the entire curve is taken into account, and the main characteristics are better preserved. Furthermore, as it is based on the resolution of a system of equations, global approach can be used to combine several operators or several curves and therefore takes the environment into account and

4 172 E. Guilbert and H. Lin Figure 3. Isobath smoothing with respect of the safety constraint. Above: original isobath. Below: the dotted line is not valid because the sailor may consider that the sea is deeper than it really is in places marked in grey. solves more complex problems. Compared to line generalization for terrestrial or urban maps, the main issue in marine charts is the respect of the safety constraint. This issue is illustrated in Figure 3. In the top of Figure 3, an isobath divides the area in a shallower part (above the line) and a deeper part (below the line). Below, the dotted line represents an isobath obtained with a classical smoothing operator. The difference between the original isobath and the smoothed isobath is shown in grey. The dark grey areas are zones that were on the deeper side of the original isobath and are now on the shallower side of the smoothed isobath. That means that this area on the map is shallower than it really is. The light grey areas were on the shallower side of the original isobath and are now on the deeper side of the smoothed isobath. In such a case, the safety constraint is not respected as the area on the map looks deeper than it really is. As a consequence, simply smoothing the line does not fulfil the constraint. The dashed line on Figure 3 shows an example of valid generalization where the isobath is entirely located on the deeper side of its original position. Indeed, methods defined for terrestrial or urban maps cannot be applied to marine chart generalization, and specific methods must be introduced. To our knowledge, only the cable network-based method introduced in (Saux 1998) takes into account the safety constraint. Smoothing is done by applying forces defined by the user that tend to deform the curve

5 Isobathymetric Line Simplification with Conflict Removal 173 while some points are fixed in order to ensure the safety constraint. Although this method provides good results, it is difficult to control the smoothness of the final curve, and the method does not take into account the removal of complex protrusions or narrow bottleneck forms or artefacts that may occur during the process. Most of these problems cannot be removed by smoothing and require modifying the curve by suppressing the conflicting segments. In this paper, a smoothing operator using a snake approach is introduced. Constraints are expressed via external energies that penalize the curve, which has to be deformed to be brought in a stable position. The interest of the model is that it allows better control of the curve than local methods and limits a user s intervention, as few parameters are required to tune the model. Snakes were first introduced in cartographic generalization for curve displacement by Burghardt (1997) and have been further developed in (Bader 2001). Snakes have also been applied to polygon generalization in (Galanda 2003). In all cases, snakes were defined as polygonal lines, and the technique mostly concerns either smoothing or correcting visual conflicts. However, a constraint as strong as the safety constraint was not taken into account. For this reason, marine chart generalization requires the development of specific operators that can fulfill the application constraints. Snakes for maritime chart generalization have been introduced in (Guilbert 2006), where a displacement operator for the correction of distance conflicts based on B-spline snakes is detailed. In the wake of these works, the present paper introduces a smoothing method based on a snake model, which respects the safety constraint and takes into consideration visual self-intersections. Isobathymetric lines are modeled with B-spline curves. The snake energy is defined according to the smoothness of the curve and the safety constraint. To ensure deformation in the right direction, critical control points are fixed. Self-intersections are corrected by suppressing extra control points and displacing other points in the vicinity to ensure a smooth junction. Compression techniques are used afterwards to reduce the amount of data after smoothing. The paper is organized as follows: in the next section, notations and definitions are given about B-spline curves and snakes. In section 3, the smoothing method is detailed; energy expression is defined; and conflict correction is tackled. In section 4, several case studies are presented. The method is applied to the smoothing of lines at different scales and to the generalization of a set of isobaths. Finally, conclusion and directions for future works are given. Preliminary Definitions and Notations B-Spline Curve Representation A B-spline curve is a smooth parametric curve f (t) defined by a polynomial expression. Its location and shape are given by its control polygon Q 0,..., Q m. The main interest is that the user has a local control on the curve. When a control point is moved or suppressed, the curve is modified locally and its smooth feature is always preserved. This local behavior is related with the knot vector (t 0,..., t m+k ). Modifying a control point Q i modifies the shape of the curve on the parametric interval [t i, t i+k ]. We remind the reader of the main definitions and properties of B-spline curves in the Appendix. In the following, the same notations as in the Appendix are used. B-spline curves are defined as cubic curves (k = 4) with m + 1 control points and first and last knots of multiplicity k + 1 (that is a = t 0 = =t k 1 and t m + 1 = =t m+k = b). This convention

6 174 E. Guilbert and H. Lin is chosen so that the curve f passes through the first and last control points. A polygonal approximation s is defined by applying a subdivision scheme. Each point P j,0 j n, of s is an approximation of f (ζ j ). When building a chart, the data corresponding to the area of interest are extracted from the database. From this data sample, the isobathymetric lines are defined by interpolating and connecting all the points at a given depth. B-spline curves are then defined by a compression algorithm based on a least square method (Saux 1999). The interpolated points form a polyline(p j ) n j=0. The least square method searches for control points(q i) m i=0 of curve f so that (n + 1) points f (ζ j ) produce least square smoothing of the set of points P i, i.e.: n f (ζ j ) P j 2 is minimum. (1) j=0 The parameters ζ j are computed based on a centripetal parameterization (Lee 1989). The number of control points is defined in order to obtain the better compression with a tolerance set by the thickness of a pencil mark so that no difference can be seen between the polyline and the compressed B-spline curve. It is evaluated by computing the Hausdorff distance between the initial and approximating curves. Comparison has been done in (Saux 1999) between different B-spline and polygonal compression techniques. The tests have been performed on sets of complex and smooth lines. Results for computation costs are better using polylines. However, statistical results show that the B-spline fitting method achieves equivalent or higher compression results in comparison with the Douglas-Peucker algorithm (Douglas 1973) both for smooth and complex lines. An example is given in Figure 4 where compression is performed with the same compression rate. However, we can see that B-spline compression better preserves the shape of the curve. B-spline curves are particularly adapted for the modeling of isobathymetric lines, as they maintain the smooth feature of the lines and are able to model complex shapes. They can be used for the modeling of contour lines in rough terrain; however, some errors may be introduced due to numerical approximations. These errors come from the parameterization method mostly when the interpolated points P j are too close. It results in the introduction of small local oscillations or boundary effects at the tips of the curves. In the case of rough terrain where there are many isobaths of complex shape that are very close, this can lead to the introduction of conflicts such as line intersections that have to be corrected. Such Figure 4. Compression of an isobathymetric line (Saux, 1998).

7 Isobathymetric Line Simplification with Conflict Removal 175 problems are not specific to B-spline curves as the use of other techniques such as the Douglas-Peucker algorithm can also lead to some approximation errors. Expression of the Derivatives Two main features, the tension and the flexion, are used during the process to estimate the smoothness of the curve. The tension is given by the first derivative with respect to the curvilinear abscissa. If the derivative is globally low along the curve, it means that the curve is stretched. The tension is also related to the length of the curve as the curve is shortened when stretched. The flexion is given by the curvature. The curvature at a point corresponds to the inverse of the radius of the osculating circle. If the curvature is low, the curve orientation given by its first derivative does not vary much, so that the curve is close to a straight line around the point and does not have large oscillations. The curvature is given by the second derivative with respect to the curvilinear abscissa. A B-spline curve being a parametric curve, the derivatives are expressed with respect to the parameter t. The first derivatives with respect to t and the curvilinear abscissa are equal. However, the second derivatives are different. As a consequence, the relation between the curvature and the derivatives is given as follows: κ(t) = det(f (t) f (t)) d (t) 3 (2) To compute the first derivative and curvature at different positions of the curve, the polygonal approximation s defined above is used. The first derivative is given by applying a finite difference scheme. f (ζ j ) P j+1 P j 1 ζ j+1 ζ j 1 (3) The curvature at a point P j is computed by estimating the radius of the osculating circle. The definition given here is based on (Hebert 1995). At a point P i, the relation between the curvature κ i and the angle ϕ i between two consecutive segments is given by κ i ϕ i l i with l i = P i P i 1. One problem is that this definition depends on the distribution of points on the curve. One way to avoid this is to have all segments of the same length. However, the points on the curve are distributed according to its shape. There are more points in areas with large variations which correspond to the places where the curvature is high or varies significantly. As a consequence, we define the points ˆP j 1 and ˆP j+1 such that each point belongs, respectively, to the lines P j 1 P j and P j P j+1 and that ˆP j 1 P j = P j ˆP j+1 =l with l > 0 (Figure 5). With such a definition, all curvature values are expressed with the same order of magnitude. The curvature is then given by the following Eq. (4), which corresponds to the inverse of the radius of the circle passing through points P j, ˆP j 1 and ˆP j+1. sin(ϕ j ) κ(ζ j ) = 1 2 ˆP j+1 ˆP j 1 (4)

8 176 E. Guilbert and H. Lin Figure 5. Curvature definition. The Snake Model Snakes were first introduced by Kass et al. (Kass et al. 1987) in image processing for contour detection. They are smooth lines defined with their own energy from their geometrical features. A snake is at an equilibrium position when its global energy is minimal. To minimize its energy and reach this position, the snake can deform itself. Let f (u) be a snake of length l and u the curvilinear abscissa. Its energy is expressed as E snake = l 0 E int (f (u)) + E ext (f (u))du (5) where E int is the internal energy and E ext is the external one. The internal energy controls the shape of the snake and is defined from its derivatives: E int = 1 ( α(u) df 2 du (u) 2 + β(u) d 2 f du (u) 2) 2 (6) where α and β are shape parameters, usually fixed by the user. The α controls the tension given by the first derivative and β controls the curvature which is equal to the second derivative. The external energy usually represents application constraints as it is not related to the geometry of the curve. In most of the cases, snakes are defined by polygonal lines. B-spline snakes have been used for image processing in (Brigger, 2000) and for curve and surface approximation in (Pottmann, 2002). The interests of B-spline snakes are that: Ĺ Less points are needed in comparison with a polygonal snake. Ĺ Smoothness is an intrinsic characteristic of B-spline curves. Ĺ Control points allow a better control of the snake. As mentioned earlier, the B-spline derivatives are expressed with respect to the parameter t. As a consequence, the following definition of the snake model will be used hereafter: E = b a 1 2 (α(t) f (t) 2 + β(t) κ(t) 2 ) + E ext (f (t))dt (7)

9 Isobathymetric Line Simplification with Conflict Removal 177 The unknowns of the problem are the control points of the B-spline curves. The different energies are computed from the polygonal approximation of the curve. Eq. (7) is solved by applying a gradient method as curvature is a nonquadratic function. It also improves the behaviour of the model as both coordinates are solved in the same system compared to linear methods, which solve the problem for each coordinate separately. Isobathymetric Line Smoothing Respect of the Safety Constraint The smoothing operation is performed by removing small oscillations and details while preserving information about the shape and orientation of the curve. If no external constraint is imposed, the curve is smoothed by reducing its internal energy given in Eq. (7). The result is comparable to the dotted line obtained in Figure 3 and is not acceptable. In order to respect the safety constraint, the curve must be pushed towards greater depths. This is done by fixing some critical points so that the other points are attracted towards these points during the process and by defining an external energy that penalizes the points located on the shallow side. The data we are working with are contour lines provided by the Hydrographical and Oceanographic Service of the French Navy (SHOM). As a convention used by the SHOM, the contour lines are directed so that the deeper side is on the left side of the line when walking from the first point P 0 to the last point P n. In the following, the definition of the deeper side is based on this convention but the method can easily be adapted for different rules. Selection of Critical Points The critical points are the control points which define the main features of the curve. They are chosen by applying the Douglas-Peucker algorithm (Douglas 1973). This algorithm is usually used for polygonal line compression and selects characteristic points according to a given tolerance. The tolerance depends on the precision of the chart and is given by ε vis which defines the legibility constraint. Figure 6 gives an example of the points selected by the Douglas-Peucker algorithm. Among these points, only those which imply a displacement in accordance with the safety constraint are fixed. They are chosen according to the orientation of the angle. If a point is an angular point oriented towards the higher depth, it is free otherwise it is fixed (Figure 6) (Saux 1998). Fixing critical control points have two main interests in the process. First, the characteristic features and the shape of the curve are maintained. Second, smoothing is done by flattening oscillations. As these points cannot move, smoothing in their vicinity can only be done by moving other control points towards greater depths so that the safety constraint is observed. The number of fixed points depends on the tolerance used for the Douglas-Peucker algorithm and the shape of the curve. During the smoothing process, the curve shape becomes more regular so that the number of fixed points is reduced until only the control points corresponding to the main characteristic features are fixed.

10 178 E. Guilbert and H. Lin Figure 6. Polygonal line obtained with the Douglas-Peucker algorithm and control points fixed according to their position. Units are in cm. Definition of the External Energy Fixing some points is not enough to observe the safety constraint, as the number of fixed points is small in comparison with the total number of points, and it cannot deal with small oscillations. This is done by adding an external energy limiting the displacements. The safety constraint is satisfied if, compared to its initial position, the smoothed curve is entirely located on the deeper side. To prevent wrong displacements, an energy in proportion with the distance from the initial curve is brought to the points on the shallow side. According to the above-mentioned convention, the points which are on the shallow side are the points P j = f (ζ j ) which are on the left side of the original line. The distance between the point and the line is given by the distance d(p j, f initial ) between P j and the closest point of the initial curve f initial. E ext (P j ) = { d(pj,f initial ) ε 2 vis if P j is on the shallow side 0 otherwise (8) The constant value ε vis corresponds to the minimal distance that defines visual intersections and is used here to normalize the energies. In the same way, the internal energy terms are also normalized so that all terms have the same magnitude. This way, the same model can be applied to any curve with no need to adjust the parameters α and β, which are set constant. The energy definition given in Eqs. (7) and (8) is sufficient to solve many of the regular cases. However, it is necessary to fix some control points for two reasons. First, if the curve is opened, reducing the energy can involve large displacements of the tips. Second, with

11 Isobathymetric Line Simplification with Conflict Removal 179 Figure 7. Left: curve smoothing without fixing any point. Right: critical points have been fixed. the snake model, a solution is found when the energy reaches a minimum. If the curve admits very high oscillations, it is possible that a minimum is obtained without observing the safety constraint. Both cases are illustrated in Figure 7. Conflict Processing Beside the safety constraint, the generalization process must take into account the legibility constraint. According to this, the distance between two curve segments cannot be less than ε vis. A curve should also not admit any kind of artefact such as loop or cusp. In some cases, these visual conflicts are ironed out by the smoothing process. However, in many cases, the correction of the conflict requires a modification of the curve topology that cannot be handled by the snake method. The conflicting segments need to be removed and the curves reconstructed. As a consequence, a further step is required in the smoothing process which is the detection and the correction of the visual conflicts. Visual conflicts are detected from the polygonal approximation. Two segments, P j0 P j0 +1 and P j1 1P j1,ofs are in conflict if the distance between them is less than ε vis and if the curve turns through a total angle greater than π when going from one segment to the other. From this consideration, a nonself-intersection criterion is deducted: if the total angle is smaller than π, no self-intersection can occur (Andersson 1998). This criterion gives a sufficient condition for the nonexistence of a self-intersection, but it is not necessary. In Figure 8 the line does not self-intersect or respect the criterion. This criterion is only used to segment the lines in nonconflicting segments. The detection is performed first by splitting the curve in several curve segments, each segment satisfying the nonself-intersection criterion. Then distances between the points of different segments are computed. If the distance between two segments belonging to two different curve segments is less than ε vis then these segments are in conflict. Two kinds of conflicts are distinguished. First are the real self-intersections, small loops created during the deformation process by moving control points towards other control points (Figure 9). These conflicts are corrected by removing the loop. The second kind of conflicts is visual intersection, when two distinct curve segments are too close but do not intersect. Such conflict is corrected either by displacing the segments to observe a minimal distance between them or by removing the segments in relation with the direction

12 180 E. Guilbert and H. Lin Figure 8. Nonself-intersection criterion. Left, polygonal lines. Right, definition of the angles between the segments. The angle is larger than π so the criterion is not satisfied. of greater depths. In Figure 10, the visual conflict is shown by an arrow. On the left, the conflict is corrected by deforming the curve to increase the distance between the conflicting segments. On the right, displacement cannot be done according to the safety constraint. The conflict must be corrected by removing part of the curve. As said earlier, the deeper side is on the left side of the line. The choice between deformation and suppression depends on the sign of the sum of the angles when going from P j0 to P j1. If the sum is positive (as in Figure 10, right), segment P j0 P j1 must be removed. Otherwise, the curve is deformed. In that case, no specific correction is done as displacement towards greater depth is done by the smoothing process. Suppression of a segment is done by removing the corresponding control points and reshaping the junction. The detection process gives us a series of conflict segments. As each point P j is associated to a parameter ζ j, a parametric interval containing the curve segment to correct is defined. For example, when two segments P j0 P j0 +1 and P j1 1P j1 with Figure 9. Visualization conflict. The line must be modified between points P j0 and P j1. The corrected line passes through P and is collinear to P j0 P j1.

13 Isobathymetric Line Simplification with Conflict Removal 181 Figure 10. Visual intersection. Left, correction is done by enlarging the bottleneck between P j0 and P j1. Right, correction is done by suppressing the segment between P j0 and P j1. j 0 < j 1 re intersecting, the curve must be modified on interval [ζ j0,ζ j1 ]. As deformation is performed by acting on the knots and the control points, the curve has to be modified on the interval [t i0,t i1 ] with t i0 ζ j0 <t i0 +1 and t i1 1 ζ j1 >t i1. Respectively, the control polygon is modified between the points Q i0 3 and Q i1 1. Correction of the conflict is done by deleting the segment on the interval [ζ j0,ζ j1 ] and by building up a new segment on this interval. The process is illustrated in Figure 11. Deletion is performed by replacing the segment [t i0,t i1 ]byasegment[ˆt i0, ˆt i0 +2] with ˆt i0 = t i0, ˆt i0 +1 = t i0 +1 and ˆt i0 +2 ˆt i0 +1 = t i1 t i1 1. This operation corresponds to removing the knots from t i0 +1 to t i1 1. The knots from t i1 to t m+4 are shifted of a value δ = t i1 1 t i0 +1. The new knot vector definition is entirely given by Eq. (9). In relation with the modification of the knot removal, some control points also have to be removed and modified. Control points from Q i0 3 to Q i1 1 corresponding to interval [t i0,t i1 ] are replaced by control points ˆQ i0 3 to ˆQ i0 +1 corresponding to the parametric interval [ˆt i0, ˆt i0 +2]. These five control points must be defined to rebuild the curve and smoothly join the two segments defined on [ˆt 0, ˆt i0 ] and [ˆt i1, ˆt m+k+2 ]. Other control points Figure 11. Knot vector before and after correction. The part corresponding to the conflicting segment has been removed.

14 182 E. Guilbert and H. Lin Figure 12. Control polygon before and after correction. The dashed segments represent the modified part of the polygon. are not modified and are given by Eq. (10). { ˆt i = t i if i i ˆt i i1 +i 0 +2 = t i δ if i i 1 1 (9) { ˆQ i 3 = Q i 3 if i i 0 1 ˆQ i i1 +i 0 +2 = Q i if i i 1 (10) The value of the control points ˆQ i0 3 to ˆQ i0 +1 depend of the constraints imposed on the curve. They are set in order to reshape the curve on the interval [ˆt i0, ˆt i0 +2]. Constraints are related with the position and the derivatives of the curve. To reduce the number of unknowns and the deformation on the curve, the points ˆQ i0 3 and ˆQ i0 +1 can be set to ˆQ i0 3 = Q i0 3 and ˆQ i0 +1 = Q i1 1. Three control points are still unknown, which are ˆQ i0 2, ˆQ i0 1 and ˆQ i0. Two constraints can be imposed on the curve: it has to pass through a point P which is the middle of the segment P j0 P j1 and the derivative at point P is given by the direction P j0 P j1 (Figure 9). As P is the middle of the segment, the parameter ζ so that f (ζ ) = P is chosen as the middle of [ζ j0,ζ j1 ]. A third constraint is imposed by choosing ˆQ i0 1 as the middle of the segment ˆQ i0 2 ˆQ i0 in order to have a regular and flat shape around the point P. The new coordinates of these control points are obtained by solving the following system (Eq. 11) using Eq. (12) in the Appendix. An example corresponding to the curve of Figure 10 is presented Figure 12. f (ζ ) = P f (ζ ) = P j1 P j0 ˆQ i0 1 = 1 2 ( ˆQ i0 2 + ˆQ i0 ) (11) The result obtained with this technique depends on the choice of the constraints. This choice is subjective and other kinds of constraint could have been chosen related to the curvature for example. The purpose of this reconstruction stage is mostly to remove the conflicting segment and yield a valid curve that can be processed with the smoothing

15 Isobathymetric Line Simplification with Conflict Removal 183 Figure 13. Curves of Figures 8 and 10 after conflict correction. method. Examples of conflict correction of the intersections shown in Figures 9 and 10 are given in Figure 13. Line Compression At the end of the smoothing process, the complexity of the curve has been greatly reduced. As a consequence, the same curve can be expressed with a smaller number of control points. For this purpose, compression techniques can be applied in order to reduce the amount of data. Compression must be performed in regard with a tolerance given by ε width the thickness of the pen ball so that no distinction can be made between a curve and the compressed expression. Two kinds of compression techniques can be considered. The first one is local and consists in removing knots (Farin 2001) and checking if the error between the curves before and after removal is less than ε width. This technique is based on the removal of existing knots but does not modify the other knots. It can be applied during the smoothing process in order to reduce the number of control points and the computation cost. The second technique consists in computing a new B-spline curve approximating the polygonal line s at a tolerance ε width with as less control points as possible (Saux 1998). New parameters ζ j are chosen using a centripetal parameterisation. New knot vector and control polygon are defined by using a least square method. Both methods were tested on several data sets. The second method is more expensive in terms of computation time; however, it gives a better compression rate. The difference is mostly significant when the smoothing is important. As an example, the control polygon shown in Figure 6 is defined with 190 control points. The result of the smoothing process is shown in Figure 14. With the first method, the final curve is defined with 106 control points while with the second method, only 72 points are needed. According to our test, the least square method is more interesting when the energy ratio between the initial and final lines is less than one half. Otherwise, it requires too much computation for a result similar to the knot removal technique.

16 184 E. Guilbert and H. Lin Figure 14. Smoothing of an isobath. Units are in cm. Algorithm In this section, the whole process of the smoothing method is resumed. Input data is a B-spline curve modelling the isobathymetric line. In output is the smoothed B-spline curve. The convergence criterion on the smoothness of the curve is detailed in the next section. Repeat Selection of the fixed control points Douglas Peucker algorithm Selection of the points according to their location Deformation of the curve Computation of a descent direction Computation of the internal energy gradient Computation of the external energy gradient Computation of the deformation Golden section Conflict correction Conflict detection Suppression of conflicting segments in respect with safety Until safety and legibility constraints are observed and the curve is smooth enough Curve compression

17 Isobathymetric Line Simplification with Conflict Removal 185 Application Parameters and Constants Setting The smoothing method is to be applied to large sets of curves without any intervention. For this reason, parameters and constants have to be fixed to some values that remain unchanged during the whole process. As said before, the snake parameters α and β are fixed to constant. As the smoothness is related to the curve curvature, more weight should be put on the curvature energy. However, during the process, by removing the oscillations, the curve length should be reduced. If α is not big enough, the curve is too loose and large deformations can occur. As a consequence, α and β are fixed to 1 so that the curvature and tension energies have the same importance. Other constants that depend on the accuracy of the input and the output data are used in this algorithm. The first one is ε num, which defines the numerical precision of the computation. It is particularly used to compute the curve approximation s of f. This value depends of the precision of the input data, the rounding errors done during the computations and also the computation time as high precision requires a more precise approximation and more computations. Two other constants are defined in relation with the legibility constraint. One is ε width which is the pen ballpoint width. On the final chart, if two points are at a distance less than ε width, they cannot be discriminated. The other, ε vis corresponds to the minimal distance to be observed between two lines. It is this value that defines visual conflicts. In the data sets on which the algorithm was tested, the points were given with an accuracy of 10 4 (in centimeters). The ε width is commonly chosen equal to 0.01 cm. According to the cartographers experience, ε vis is equal to 0.02 cm. The ε num is set to Compared to 10 4, this value reduces the computation time and is still negligible compared to ε width. The last point to consider is the definition of a convergence criterion as deformations must be done in regard of the scale difference between the initial and final curves. Three points must be satisfied: the safety constraint must be respected, no visual conflict should remain and the curve must be sufficiently smooth. The two first points can be checked easily. The validation of the last point is more subjective. The criterion should be related to the curvature as it characterises the curve smoothness. Two values are usually considered. They are the maximum of curvature and the L 2 norm. The first value is too local and does not reflect the global flexion of the curve. The second gives an average value of the flexion along the curve and corresponds to the curvature energy of the snake. Therefore, the line is considered smooth when its curvature energy has been significantly reduced. As the amount of energy varies with the shape and length of the curve, setting a fixed threshold value for the curvature energy is not relevant. The problem is here tackled by assuming that the energy ratio between the smoothed line and the original line should be equal to the scale factor between the initial and final charts. Two kinds of example are presented. First, isobathymetric lines are smoothed at different levels according to different scale changes. Second, the method is applied to the generalization of a set of lines. The smoothing operator is applied with other operators to avoid the occurrence of conflicts between curves. The lines are extracted from data sets provided by the SHOM, the French department in charge of editing and publishing the charts in France.

18 186 E. Guilbert and H. Lin Scale Modification In Figures 15 and 16, a line has been scaled and smoothed with three different factors (one half, one fifth, and one tenth) corresponding to the representation of the same line for different charts. The results have been validated by cartographers from the SHOM. The convergence criterion is consistent as the line is smoothed according to the cartographer s expectations. In each case, the safety constraint is observed and the main features are kept while details such as concavities are flattened out in regard with the scale. The figures with no units are at their real size. In Figure 15, the main features are maintained while details such as concavities are removed in regard with the scale. In the example presented in Figures 16 and 17, the line is not regular, with many oscillations in the upper part and few but large oscillations in the lower part. Figure 16 represents the three curves at the same scale for comparison, while Figure 17 presents the curves at their real size on the map. When the ratio decreases, smoothing is not performed regularly along the line. For one half, the curve is smoothed by removing small oscillations and stays close to its original position. For one fifth and one tenth, deformations are much bigger on the lower part of the line. Oscillations on the upper part have been removed, and energy is reduced mostly by shifting the points in the lower part. The generalization is still valid in respects with the initial constraints. As shown in Figure 17, even if the deformations are large, the results are acceptable regarding the scale change. Figure 15. Line smoothing with three different scale factors (top: original curve, bottom: scale factors 1/2, 1/5 and 1/10). Units are in cm.

19 Isobathymetric Line Simplification with Conflict Removal 187 Figure 16. Line smoothing with three different energy factors (left: 1/2, middle: 1/5, right: 1/10). The dashed line is the original line. Units are in cm. Results and computation time also depend on the complexity of the curve and the legibility distance ε vis. An example of line smoothing of a curve with a complex shape is presented in Figure 18. Such curves with complex shapes can be found in areas with rough terrain. In this figure, smoothing has been performed with two different values of ε vis and two different energy ratios. In the upper part, ε vis = 0.02 cm, in the lower part, ε vis = 0.04 cm. As conflicts are defined according to the legibility distance, more conflicts are detected in the second case. Corrected conflicts are indicated with arrows. Conflict correction is also related with the energy ratio. When the curve has some protrusions, energy is reduced by shrinking the segments so that a visual conflict is created. In such protrusion, energy minimization is quite slow, as the external and internal energies tend to push the curve in different directions so that the deformation at each step is small. As a consequence, smoothing is faster to achieve with a larger value of ε vis as the protrusions are deleted. Table 1 gives the number of iterations done for each case. Figure 17. Smoothed lines of Figure 15 at their real size on the map.

20 188 E. Guilbert and H. Lin Table 1 Number of iteration according to the energy ratio and legibility distance ε vis = 0.02 cm ε vis = 0.04 cm No safety constraint Energy ratio = 50% Energy ratio = 20% For comparison, the number of iteration when not applying the safety constraint has been added; however, the result is not acceptable for isobathymetric line generalization. From Table 1 it appears that the safety constraint slows down the convergence. The difference between the two values of ε vis shows that slow convergence is related to the protrusions of the curve and the complexity of the shape as, when ε vis = 0.04 cm, these protrusions are deleted and convergence is faster than with ε vis = 0.02 cm. Most of the time spent for one iteration is in computing the energy gradient in order to compute the steepest descent direction. Application of the safety constraint also makes each iteration more expensive, as the external energy gradient must be computed. In such a case as in Figure 18, computing one iteration is about four times more expensive with a safety constraint. Simplification of a Set of Isobaths Our smoothing operator has been applied to a set of isobaths extracted from a chart. During the generalization process, the lines are simplified according to their environment, i.e., to the other lines in the neighborhood. Most of all, visual conflicts must be avoided between the isobaths. As a consequence, the smoothing operator cannot be used alone. In addition to smoothing the lines, visual conflicts must be detected and corrected either by modifying or by suppressing some curves. For that purpose, other operators defined in previous works are used. In this example, we consider two kinds of conflicts: Ĺ Distance conflicts, when the distance between two curves is less than the legibility distance ε vis ; and Ĺ Surface conflicts, when the area delimited by a closed curve is too small and the legibility constraint is not satisfied. Surface conflicts are characterized by comparing the area inside the line with a given visibility area A vis. If the area is smaller and represents a pit, the isobath is suppressed. Peaks are maintained due to the safety constraint. Detection of distance conflicts is done by locating visual intersections using a method introduced in (Guilbert 2003). Conflicts are defined with the segments of the conflicting curves. In our case, distance conflicts are corrected by applying a deformation operator as defined in (Guilbert 2006). This operator is also based on a snake model. The lines must be moved towards greater depths. As a consequence, the shallower isobath is fixed. Only the deeper one is moved. The snake represents the line displacement. The internal energy is used to preserve the shape of the curve while the conflicts are expressed through the external energy. Figure 19 shows a set of isobaths before generalization. The lines are presented at their original size on the chart. Figure 20 gives the result obtained after generalization. The

21 Isobathymetric Line Simplification with Conflict Removal 189 Figure 18. Isobathymetric line smoothing with different energy ratio and legibility distance. Plain line: smoothed line, dashed line: original line. Top left, energy ratio is 0.5, ε vis = 0.02 cm. Top right, energy ratio is 0.2, ε vis = 0.02 cm. Bottom left, energy ratio is 0.5, ε vis = Bottom right, energy ratio is 0.2, ε vis = energy ratio is one half, but both figures are at the same size for comparison. The lines have been smoothed and displaced so that no visual conflict occurs. Among the closed curves, two have been maintained as they are modeling peaks. A third one, marked 1 on the figure, has been suppressed. During the smoothing process, the curve has been reduced and its area became smaller than A vis. The result respects the cartographic constraints; however, in

22 190 E. Guilbert and H. Lin Figure 19. Set of isobaths before smoothing. some places an enlargement operator rather than a smoothing operator should be applied. The mark 2 shows a place where the curve has been smoothed. The result is correct as no conflict is created. However, it would have been more logical either not to deform the curve in order to maintain the protrusion or to suppress it. For that purpose, other generalization criteria must be introduced in the process. The results obtained for line smoothing of a set of isobaths are promising, as it shows that the operator can be integrated in a more global generalization system. However, there are still some conflicts that are not taken into account. In the case of peaks, when the area is too small, the isobaths cannot be processed by smoothing or displacement and a specific enlargement operator must be defined. The process is fully automatic and the systematic application of a displacement induces too large deformations in some places. The geomorphology of the seabed may not be respected. A complete strategy that combines different operators should be defined. However, in practice, few formal rules are clearly defined, and the result of the generalization process depends much on the cartographer s Figure 20. Set of isobaths after smoothing.

23 Isobathymetric Line Simplification with Conflict Removal 191 choice. As a consequence, further work is needed to define generalization rules in order to propose an operator according to the topological relations between the different objects of the map. Conclusion In this paper, a new method for line smoothing for cartographic line generalization on a marine chart was introduced. Construction of marine charts must answer specific constraints which differ from other kinds of maps. More specifically, the final result must be legible and safe for navigation and must preserve the morphology of the seabed. The method, based on the snake approach, consists of reducing the curvature along the curve to remove the oscillations. Deformation towards greater depth is ensured by fixing characteristic points that represent the main features of the curves and by adding an energy which imposes a direction for displacement. During the process, the existence of self-intersections or visual intersections is checked. If any occurs, it is removed by deleting the segments and building a smooth junction between the remaining segments. To reduce the amount of data, the smoothed curve can be compressed by reducing the number of control points. Several examples are presented. From data extracted from a chart, the method is applied to line smoothing at different scales. Smoothness is controlled by the energy ratio. The method respects the generalization constraints and maintains the features of the line. However, the respect of the safety constraint increases the computation cost, and the method is rather expensive when the lines are complex as convergence is quite slow. In the second example, the method is applied to the generalization of a set of isobaths. To take into account the relations with other curves, a displacement operator is also used to correct spatial conflicts. The results satisfy the constraints and have been validated by professional cartographers. However, some improvements can be done, as the processing of a whole chart requires the definition of other operators. Smoothing is not suitable to any case of line generalisation as according to the topology, other operations such as enlargement or deletion must be used. Further directions for work are therefore the definition of other generalization operators such as aggregation or enlargement. These operators should be defined with the same snake approach so that they can be combined and applied at the same time. Another direction is the definition of a generalization strategy. As several operators are available, conditions for use must be set to automate their application. The strategy must also take into account complex conflicts which can involve several curves and where several corrections are possible. In such cases, two approaches can be combined. First, a generalization estimator can be defined to estimate the quality of an operation. Several operations can then be applied and compared. Second, a semi-automatic approach can be considered where the user monitors the process and intervenes to impose his choice. According to the results, the integration of the different algorithms inside an ECDIS is also considered on a longer term. Acknowledgements The work described in this paper is supported by RGC Direct Grant for Research C001/ The authors would like to thank Mr. Michel Faramin for his valuable comments.

24 192 E. Guilbert and H. Lin Appendix: Main Properties of B-Spline Curves In this section, we describe the main properties of B-spline curves. The discussion is restricted to plane curves but the results are also valid for higher dimensions. For more information about B-spline curve theory, the reader is directed to (Farin 2001). A B-spline curve f is a parametric function defined on an interval I = [a,b] R in R 2. It is defined by: f (t) = m Q i Ni k (t) (12) i=0 The points Q i R 2 are the control points of the curve, they define the control polygon of f. Ni k are the B-spline basis functions. They are piecewise polynomial functions of degree k-1 defined from I. To define them, we need a series of real values (t 0 = a t 1 t i t m+k = b) called the knot vector. By setting 0 = 0, the basis functions are defined 0 recursively thus: { 1 if Ni 1(t) = ti t t i+1 and t i t i+1 0 otherwise N j i (t) = t t i N j 1 i (t) + t i+j t (13) N j 1 i+1 t i+j 1 t i t i+j t (t) for 2 j k i+1 The N k i functions have the following properties: Ĺ They form a partition of unity: m i=0 N i k 1, Ĺ They are positive: t, i, Ni k (t) 0, and Ĺ They are non zero on a local interval: Ni k(t) = 0 t / [t i,t i+k ]. The following properties of B-spline curves are deduced from the basic function definition: Ĺ There are at most k non zero basis functions Nj k,i k + 1 j i on an interval [t i,t i+1 ], and Ĺ A point f (t) is a convex combination of k control points Q i with the coefficients Ni k(t). Therefore, we can also deduce that: Ĺ The displacement of a control point Q i involves a local deformation of the curve on the interval [t i,t i+k ]; and Ĺ A curve segment defined on an interval [t i,t i+1 ] is always included in the convex hull of the control points Q i k+1,...,q i (Figure 21). The location and the shape of a B-spline curve are linked with the control polygon. The control polygon can even be considered as a coarse approximation of the B-spline curve. To refine this approximation, a new control polygon containing more points can be defined. This is done by inserting new knots in the vector knot of the B-spline curve. Each time a knot is inserted, the k-1 control points are substituted by k new control points. The B-spline curve is always the same, but the new control polygon is closer to the curve. If a knot is inserted in the middle of each interval [t i,t i+1 ], a new control polygon is defined with

25 Isobathymetric Line Simplification with Conflict Removal 193 Figure 21. Control polygon (dashed line) and convex hull (in gray) of a B-spline curve. 2 m + 1 points instead of m + 1 points. This implies the following subdivision scheme: { t (n+1) 2i = t (n) i t (n+1) 2i+1 = 1 2 ( t (n) i + t (n) i+1 ). (14) The scheme can be applied several times. The superscript n indicates the nth subdivision step. The series of the control polygons (Q (n) i ) m(n) i=0 uniformly converges towards the curve. Therefore, a polygonal approximation of the curve at a given precision can be computed by applying the subdivision scheme as many times as needed (Figure 22). This approximation is given by the control polygon of the subdivided curve and the approximation is majored by ε = max Q (n) 1 i m (n) i Q (n) i 1. Depending on the B-spline curves and subdivision schemes applied, better majoring values can be found (see Lutterkort 2000). Figure 22. Subdivision of a control polygon: initial polygon (dotted line) and polygons obtained after one (dashed line) and three subdivision steps (solid line).

A multi-agent system approach for featuredriven generalization of isobathymetric line

A multi-agent system approach for featuredriven generalization of isobathymetric line A multi-agent system approach for featuredriven generalization of isobathymetric line Xunruo Zhang, Eric Guilbert The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong Abstract Generalization

More information

Gradual Generalization of Nautical Chart Contours with a B-Spline Snake Method

Gradual Generalization of Nautical Chart Contours with a B-Spline Snake Method University of New Hampshire University of New Hampshire Scholars' Repository Master's Theses and Capstones Student Scholarship Fall 2014 Gradual Generalization of Nautical Chart Contours with a B-Spline

More information

CHAPTER 6 Parametric Spline Curves

CHAPTER 6 Parametric Spline Curves CHAPTER 6 Parametric Spline Curves When we introduced splines in Chapter 1 we focused on spline curves, or more precisely, vector valued spline functions. In Chapters 2 and 4 we then established the basic

More information

Spline Curves. Spline Curves. Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1

Spline Curves. Spline Curves. Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1 Spline Curves Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1 Problem: In the previous chapter, we have seen that interpolating polynomials, especially those of high degree, tend to produce strong

More information

Mathematical Morphology and Distance Transforms. Robin Strand

Mathematical Morphology and Distance Transforms. Robin Strand Mathematical Morphology and Distance Transforms Robin Strand robin.strand@it.uu.se Morphology Form and structure Mathematical framework used for: Pre-processing Noise filtering, shape simplification,...

More information

Using Perspective Rays and Symmetry to Model Duality

Using Perspective Rays and Symmetry to Model Duality Using Perspective Rays and Symmetry to Model Duality Alex Wang Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report No. UCB/EECS-2016-13 http://www.eecs.berkeley.edu/pubs/techrpts/2016/eecs-2016-13.html

More information

Elastic Bands: Connecting Path Planning and Control

Elastic Bands: Connecting Path Planning and Control Elastic Bands: Connecting Path Planning and Control Sean Quinlan and Oussama Khatib Robotics Laboratory Computer Science Department Stanford University Abstract Elastic bands are proposed as the basis

More information

TEAMS National Competition Middle School Version Photometry Solution Manual 25 Questions

TEAMS National Competition Middle School Version Photometry Solution Manual 25 Questions TEAMS National Competition Middle School Version Photometry Solution Manual 25 Questions Page 1 of 14 Photometry Questions 1. When an upright object is placed between the focal point of a lens and a converging

More information

Shape Modeling and Geometry Processing

Shape Modeling and Geometry Processing 252-0538-00L, Spring 2018 Shape Modeling and Geometry Processing Discrete Differential Geometry Differential Geometry Motivation Formalize geometric properties of shapes Roi Poranne # 2 Differential Geometry

More information

A second order algorithm for orthogonal projection onto curves and surfaces

A second order algorithm for orthogonal projection onto curves and surfaces A second order algorithm for orthogonal projection onto curves and surfaces Shi-min Hu and Johannes Wallner Dept. of Computer Science and Technology, Tsinghua University, Beijing, China shimin@tsinghua.edu.cn;

More information

Parameterization. Michael S. Floater. November 10, 2011

Parameterization. Michael S. Floater. November 10, 2011 Parameterization Michael S. Floater November 10, 2011 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to generate from point

More information

Contour Simplification with Defined Spatial Accuracy

Contour Simplification with Defined Spatial Accuracy Contour Simplification with Defined Spatial Accuracy Bulent Cetinkaya, Serdar Aslan, Yavuz Selim Sengun, O. Nuri Cobankaya, Dursun Er Ilgin General Command of Mapping, 06100 Cebeci, Ankara, Turkey bulent.cetinkaya@hgk.mil.tr

More information

Shrinkwrap developments for computational electromagnetics in ICE NITe

Shrinkwrap developments for computational electromagnetics in ICE NITe Shrinkwrap developments for computational electromagnetics in ICE NITe Preparing CAD models for electromagnetic analysis remains a complex, time consuming process. Typically, the CAD model will contain

More information

Parameterization of triangular meshes

Parameterization of triangular meshes Parameterization of triangular meshes Michael S. Floater November 10, 2009 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to

More information

Edge and local feature detection - 2. Importance of edge detection in computer vision

Edge and local feature detection - 2. Importance of edge detection in computer vision Edge and local feature detection Gradient based edge detection Edge detection by function fitting Second derivative edge detectors Edge linking and the construction of the chain graph Edge and local feature

More information

Background for Surface Integration

Background for Surface Integration Background for urface Integration 1 urface Integrals We have seen in previous work how to define and compute line integrals in R 2. You should remember the basic surface integrals that we will need to

More information

1 - Local smoothness analysis

1 - Local smoothness analysis Jarek Rossignac Although a smooth planar curve J may be represented in a variety of ways, representations based on polyloops are popular in computer graphics. The vertices of the polyloop L may be viewed

More information

Impact of 3D Laser Data Resolution and Accuracy on Pipeline Dents Strain Analysis

Impact of 3D Laser Data Resolution and Accuracy on Pipeline Dents Strain Analysis More Info at Open Access Database www.ndt.net/?id=15137 Impact of 3D Laser Data Resolution and Accuracy on Pipeline Dents Strain Analysis Jean-Simon Fraser, Pierre-Hugues Allard Creaform, 5825 rue St-Georges,

More information

Segmentation. Namrata Vaswani,

Segmentation. Namrata Vaswani, Segmentation Namrata Vaswani, namrata@iastate.edu Read Sections 5.1,5.2,5.3 of [1] Edge detection and filtering : Canny edge detection algorithm to get a contour of the object boundary Hough transform:

More information

Flank Millable Surface Design with Conical and Barrel Tools

Flank Millable Surface Design with Conical and Barrel Tools 461 Computer-Aided Design and Applications 2008 CAD Solutions, LLC http://www.cadanda.com Flank Millable Surface Design with Conical and Barrel Tools Chenggang Li 1, Sanjeev Bedi 2 and Stephen Mann 3 1

More information

A CONSISTENCY MAINTENANCE OF SHARED BOUNDARY AFTER POLYGON GENERALIZATION

A CONSISTENCY MAINTENANCE OF SHARED BOUNDARY AFTER POLYGON GENERALIZATION CO-182 A CONSISTENCY MAINTENANCE OF SHARED BOUNDARY AFTER POLYGON GENERALIZATION AI T.(1), ZHANG W.(2) (1) Wuhan University, WUHAN CITY, CHINA ; (2) Zhongnan University of Economics and Law, WUHAN CITY,

More information

Circular Arcs as Primitives for Vector Textures

Circular Arcs as Primitives for Vector Textures Circular Arcs as Primitives for Vector Textures Zheng Qin, Craig Kaplan, and Michael McCool University of Waterloo Abstract. Because of the resolution independent nature of vector graphics images, it is

More information

Lesson 4: Surface Re-limitation and Connection

Lesson 4: Surface Re-limitation and Connection Lesson 4: Surface Re-limitation and Connection In this lesson you will learn how to limit the surfaces and form connection between the surfaces. Lesson contents: Case Study: Surface Re-limitation and Connection

More information

A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION OF FLOW DOMAINS

A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION OF FLOW DOMAINS 6th European Conference on Computational Mechanics (ECCM 6) 7th European Conference on Computational Fluid Dynamics (ECFD 7) 11 15 June 2018, Glasgow, UK A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION

More information

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with

More information

CGT 581 G Geometric Modeling Curves

CGT 581 G Geometric Modeling Curves CGT 581 G Geometric Modeling Curves Bedrich Benes, Ph.D. Purdue University Department of Computer Graphics Technology Curves What is a curve? Mathematical definition 1) The continuous image of an interval

More information

An Image Curvature Microscope

An Image Curvature Microscope An Jean-Michel MOREL Joint work with Adina CIOMAGA and Pascal MONASSE Centre de Mathématiques et de Leurs Applications, Ecole Normale Supérieure de Cachan Séminaire Jean Serra - 70 ans April 2, 2010 Jean-Michel

More information

Parametric curves. Brian Curless CSE 457 Spring 2016

Parametric curves. Brian Curless CSE 457 Spring 2016 Parametric curves Brian Curless CSE 457 Spring 2016 1 Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics

More information

Reflector profile optimisation using Radiance

Reflector profile optimisation using Radiance Reflector profile optimisation using Radiance 1,4 1,2 1, 8 6 4 2 3. 2.5 2. 1.5 1..5 I csf(1) csf(2). 1 2 3 4 5 6 Giulio ANTONUTTO Krzysztof WANDACHOWICZ page 1 The idea Krzysztof WANDACHOWICZ Giulio ANTONUTTO

More information

Graphics and Interaction Transformation geometry and homogeneous coordinates

Graphics and Interaction Transformation geometry and homogeneous coordinates 433-324 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li. Fall 2014 CSCI 420: Computer Graphics 4.2 Splines Hao Li http://cs420.hao-li.com 1 Roller coaster Next programming assignment involves creating a 3D roller coaster animation We must model the 3D curve

More information

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

Images from 3D Creative Magazine. 3D Modelling Systems

Images from 3D Creative Magazine. 3D Modelling Systems Images from 3D Creative Magazine 3D Modelling Systems Contents Reference & Accuracy 3D Primitives Transforms Move (Translate) Rotate Scale Mirror Align 3D Booleans Deforms Bend Taper Skew Twist Squash

More information

Lesson 2: Wireframe Creation

Lesson 2: Wireframe Creation Lesson 2: Wireframe Creation In this lesson you will learn how to create wireframes. Lesson Contents: Case Study: Wireframe Creation Design Intent Stages in the Process Reference Geometry Creation 3D Curve

More information

04 - Normal Estimation, Curves

04 - Normal Estimation, Curves 04 - Normal Estimation, Curves Acknowledgements: Olga Sorkine-Hornung Normal Estimation Implicit Surface Reconstruction Implicit function from point clouds Need consistently oriented normals < 0 0 > 0

More information

Visualization and Analysis of Inverse Kinematics Algorithms Using Performance Metric Maps

Visualization and Analysis of Inverse Kinematics Algorithms Using Performance Metric Maps Visualization and Analysis of Inverse Kinematics Algorithms Using Performance Metric Maps Oliver Cardwell, Ramakrishnan Mukundan Department of Computer Science and Software Engineering University of Canterbury

More information

Chapter 3 Path Optimization

Chapter 3 Path Optimization Chapter 3 Path Optimization Background information on optimization is discussed in this chapter, along with the inequality constraints that are used for the problem. Additionally, the MATLAB program for

More information

Glossary of dictionary terms in the AP geometry units

Glossary of dictionary terms in the AP geometry units Glossary of dictionary terms in the AP geometry units affine linear equation: an equation in which both sides are sums of terms that are either a number times y or a number times x or just a number [SlL2-D5]

More information

Automatic Recognition and Resolution of Line Symbol Spatial Conflict in Cartography Based on Elastic Beams Model

Automatic Recognition and Resolution of Line Symbol Spatial Conflict in Cartography Based on Elastic Beams Model Automatic Recognition and Resolution of Line Symbol Spatial Conflict in Cartography Based on Elastic Beams Model Zhonghai YU 1, Yongbin Tan 1, Zhujun Xiang 2 1 School of Resource and Environment Science,

More information

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

3 Polygonal Modeling. Getting Started with Maya 103

3 Polygonal Modeling. Getting Started with Maya 103 3 Polygonal Modeling In Maya, modeling refers to the process of creating virtual 3D surfaces for the characters and objects in the Maya scene. Surfaces play an important role in the overall Maya workflow

More information

AN ITERATIVE PROCESS FOR MATCHING NETWORK DATA SETS WITH DIFFERENT LEVEL OF DETAIL

AN ITERATIVE PROCESS FOR MATCHING NETWORK DATA SETS WITH DIFFERENT LEVEL OF DETAIL AN ITERATIVE PROCESS FOR MATCHING NETWORK DATA SETS WITH DIFFERENT LEVEL OF DETAIL Yoonsik Bang, Chillo Ga and Kiyun Yu * Dept. of Civil and Environmental Engineering, Seoul National University, 599 Gwanak-ro,

More information

Lecture 2.2 Cubic Splines

Lecture 2.2 Cubic Splines Lecture. Cubic Splines Cubic Spline The equation for a single parametric cubic spline segment is given by 4 i t Bit t t t i (..) where t and t are the parameter values at the beginning and end of the segment.

More information

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful

More information

A Singular Example for the Averaged Mean Curvature Flow

A Singular Example for the Averaged Mean Curvature Flow To appear in Experimental Mathematics Preprint Vol. No. () pp. 3 7 February 9, A Singular Example for the Averaged Mean Curvature Flow Uwe F. Mayer Abstract An embedded curve is presented which under numerical

More information

Homework Set 3 Due Thursday, 07/14

Homework Set 3 Due Thursday, 07/14 Homework Set 3 Due Thursday, 07/14 Problem 1 A room contains two parallel wall mirrors, on opposite walls 5 meters apart. The mirrors are 8 meters long. Suppose that one person stands in a doorway, in

More information

Introduction to the Mathematical Concepts of CATIA V5

Introduction to the Mathematical Concepts of CATIA V5 CATIA V5 Training Foils Introduction to the Mathematical Concepts of CATIA V5 Version 5 Release 19 January 2009 EDU_CAT_EN_MTH_FI_V5R19 1 About this course Objectives of the course Upon completion of this

More information

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

B-spline Curve Fitting: Application to Cartographic Generalization of Maritime Lines

B-spline Curve Fitting: Application to Cartographic Generalization of Maritime Lines B-spline Curve Fitting: Application to Cartographic Generalization of Maritime Lines Eric Saux Institut de Recherche en Informatique de Nantes Nantes, France Abstract Generalization is the process of abstraction

More information

Digital Image Processing Fundamentals

Digital Image Processing Fundamentals Ioannis Pitas Digital Image Processing Fundamentals Chapter 7 Shape Description Answers to the Chapter Questions Thessaloniki 1998 Chapter 7: Shape description 7.1 Introduction 1. Why is invariance to

More information

Parametric curves. Reading. Curves before computers. Mathematical curve representation. CSE 457 Winter Required:

Parametric curves. Reading. Curves before computers. Mathematical curve representation. CSE 457 Winter Required: Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Parametric curves CSE 457 Winter 2014 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics and Geometric

More information

CHAPTER 6 PERCEPTUAL ORGANIZATION BASED ON TEMPORAL DYNAMICS

CHAPTER 6 PERCEPTUAL ORGANIZATION BASED ON TEMPORAL DYNAMICS CHAPTER 6 PERCEPTUAL ORGANIZATION BASED ON TEMPORAL DYNAMICS This chapter presents a computational model for perceptual organization. A figure-ground segregation network is proposed based on a novel boundary

More information

Central issues in modelling

Central issues in modelling Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction includes: manual modelling; fitting to

More information

Surface Mesh Generation

Surface Mesh Generation Surface Mesh Generation J.-F. Remacle Université catholique de Louvain September 22, 2011 0 3D Model For the description of the mesh generation process, let us consider the CAD model of a propeller presented

More information

Scanning Real World Objects without Worries 3D Reconstruction

Scanning Real World Objects without Worries 3D Reconstruction Scanning Real World Objects without Worries 3D Reconstruction 1. Overview Feng Li 308262 Kuan Tian 308263 This document is written for the 3D reconstruction part in the course Scanning real world objects

More information

Geometric structures on manifolds

Geometric structures on manifolds CHAPTER 3 Geometric structures on manifolds In this chapter, we give our first examples of hyperbolic manifolds, combining ideas from the previous two chapters. 3.1. Geometric structures 3.1.1. Introductory

More information

A spectral boundary element method

A spectral boundary element method Boundary Elements XXVII 165 A spectral boundary element method A. Calaon, R. Adey & J. Baynham Wessex Institute of Technology, Southampton, UK Abstract The Boundary Element Method (BEM) is not local and

More information

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight Three-Dimensional Object Reconstruction from Layered Spatial Data Michael Dangl and Robert Sablatnig Vienna University of Technology, Institute of Computer Aided Automation, Pattern Recognition and Image

More information

An Image Curvature Microscope

An Image Curvature Microscope An Jean-Michel MOREL Joint work with Adina CIOMAGA and Pascal MONASSE Centre de Mathématiques et de Leurs Applications, Ecole Normale Supérieure de Cachan Séminaire Jean Serra - 70 ans April 2, 2010 Jean-Michel

More information

SUPPLEMENTARY FILE S1: 3D AIRWAY TUBE RECONSTRUCTION AND CELL-BASED MECHANICAL MODEL. RELATED TO FIGURE 1, FIGURE 7, AND STAR METHODS.

SUPPLEMENTARY FILE S1: 3D AIRWAY TUBE RECONSTRUCTION AND CELL-BASED MECHANICAL MODEL. RELATED TO FIGURE 1, FIGURE 7, AND STAR METHODS. SUPPLEMENTARY FILE S1: 3D AIRWAY TUBE RECONSTRUCTION AND CELL-BASED MECHANICAL MODEL. RELATED TO FIGURE 1, FIGURE 7, AND STAR METHODS. 1. 3D AIRWAY TUBE RECONSTRUCTION. RELATED TO FIGURE 1 AND STAR METHODS

More information

TOPOLOGICAL CONSTRAINTS, ACTIONS AND REFLEXES FOR GENERALIZATION BY OPTIMIZATION

TOPOLOGICAL CONSTRAINTS, ACTIONS AND REFLEXES FOR GENERALIZATION BY OPTIMIZATION 10 th ICA Workshop on Generalisation and Multiple Representation, 2-3 August 2007, Moscow TOPOLOGICAL CONSTRAINTS, ACTIONS AND REFLEXES FOR GENERALIZATION BY OPTIMIZATION Jean-Luc Monnot, Paul Hardy, &

More information

Map Generalization of Road Networks

Map Generalization of Road Networks Dr. ing. Jan Terje Bjørke Norwegian Defence Research Establishment and Department of Mathematical Sciences and Technology The Agricultural University of Norway FFI, P.O. Box 115 NO-3191 Horten NORWAY fax:

More information

Interactive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1

Interactive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 9: Introduction to Spline Curves Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 13: Slide 2 Splines The word spline comes from the ship building trade

More information

CS 465 Program 4: Modeller

CS 465 Program 4: Modeller CS 465 Program 4: Modeller out: 30 October 2004 due: 16 November 2004 1 Introduction In this assignment you will work on a simple 3D modelling system that uses simple primitives and curved surfaces organized

More information

09/11/2017. Morphological image processing. Morphological image processing. Morphological image processing. Morphological image processing (binary)

09/11/2017. Morphological image processing. Morphological image processing. Morphological image processing. Morphological image processing (binary) Towards image analysis Goal: Describe the contents of an image, distinguishing meaningful information from irrelevant one. Perform suitable transformations of images so as to make explicit particular shape

More information

TEAMS National Competition High School Version Photometry Solution Manual 25 Questions

TEAMS National Competition High School Version Photometry Solution Manual 25 Questions TEAMS National Competition High School Version Photometry Solution Manual 25 Questions Page 1 of 15 Photometry Questions 1. When an upright object is placed between the focal point of a lens and a converging

More information

Geometric approximation of curves and singularities of secant maps Ghosh, Sunayana

Geometric approximation of curves and singularities of secant maps Ghosh, Sunayana University of Groningen Geometric approximation of curves and singularities of secant maps Ghosh, Sunayana IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's PDF) if you wish

More information

Shape Control of Cubic H-Bézier Curve by Moving Control Point

Shape Control of Cubic H-Bézier Curve by Moving Control Point Journal of Information & Computational Science 4: 2 (2007) 871 878 Available at http://www.joics.com Shape Control of Cubic H-Bézier Curve by Moving Control Point Hongyan Zhao a,b, Guojin Wang a,b, a Department

More information

CS 450 Numerical Analysis. Chapter 7: Interpolation

CS 450 Numerical Analysis. Chapter 7: Interpolation Lecture slides based on the textbook Scientific Computing: An Introductory Survey by Michael T. Heath, copyright c 2018 by the Society for Industrial and Applied Mathematics. http://www.siam.org/books/cl80

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics 2016 Spring National Cheng Kung University Instructors: Min-Chun Hu 胡敏君 Shih-Chin Weng 翁士欽 ( 西基電腦動畫 ) Data Representation Curves and Surfaces Limitations of Polygons Inherently

More information

2D Spline Curves. CS 4620 Lecture 13

2D Spline Curves. CS 4620 Lecture 13 2D Spline Curves CS 4620 Lecture 13 2008 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes [Boeing] that is, without discontinuities So far we can make things with corners

More information

SHAPE, SPACE & MEASURE

SHAPE, SPACE & MEASURE STAGE 1 Know the place value headings up to millions Recall primes to 19 Know the first 12 square numbers Know the Roman numerals I, V, X, L, C, D, M Know the % symbol Know percentage and decimal equivalents

More information

Parameterization with Manifolds

Parameterization with Manifolds Parameterization with Manifolds Manifold What they are Why they re difficult to use When a mesh isn t good enough Problem areas besides surface models A simple manifold Sphere, torus, plane, etc. Using

More information

Facility Location and Strategic Supply Chain Management

Facility Location and Strategic Supply Chain Management Structure I. Location Concepts II. Location Theory Chapter 3 Continuous Location Problems Chapter 4 Location Problems on Networks Chapter 5 Discrete Location Problems Chapter 6 - Territory Design III.

More information

A non-self-intersection Douglas-Peucker Algorithm

A non-self-intersection Douglas-Peucker Algorithm A non-self-intersection Douglas-Peucker Algorithm WU, SHIN -TING AND MERCEDES ROCÍO GONZALES MÁRQUEZ Image Computing Group (GCI) Department of Industrial Automation and Computer Engineering (DCA) School

More information

3D Finite Element Software for Cracks. Version 3.2. Benchmarks and Validation

3D Finite Element Software for Cracks. Version 3.2. Benchmarks and Validation 3D Finite Element Software for Cracks Version 3.2 Benchmarks and Validation October 217 1965 57 th Court North, Suite 1 Boulder, CO 831 Main: (33) 415-1475 www.questintegrity.com http://www.questintegrity.com/software-products/feacrack

More information

Moore Catholic High School Math Department

Moore Catholic High School Math Department Moore Catholic High School Math Department Geometry Vocabulary The following is a list of terms and properties which are necessary for success in a Geometry class. You will be tested on these terms during

More information

HOUGH TRANSFORM CS 6350 C V

HOUGH TRANSFORM CS 6350 C V HOUGH TRANSFORM CS 6350 C V HOUGH TRANSFORM The problem: Given a set of points in 2-D, find if a sub-set of these points, fall on a LINE. Hough Transform One powerful global method for detecting edges

More information

Lab 12: Sampling and Interpolation

Lab 12: Sampling and Interpolation Lab 12: Sampling and Interpolation What You ll Learn: -Systematic and random sampling -Majority filtering -Stratified sampling -A few basic interpolation methods Videos that show how to copy/paste data

More information

Course Number: Course Title: Geometry

Course Number: Course Title: Geometry Course Number: 1206310 Course Title: Geometry RELATED GLOSSARY TERM DEFINITIONS (89) Altitude The perpendicular distance from the top of a geometric figure to its opposite side. Angle Two rays or two line

More information

THE DNA INEQUALITY POWER ROUND

THE DNA INEQUALITY POWER ROUND THE DNA INEQUALITY POWER ROUND Instructions Write/draw all solutions neatly, with at most one question per page, clearly numbered. Turn in the solutions in numerical order, with your team name at the upper

More information

Optimizing and smoothing contour curves for automated cutting using Rhino

Optimizing and smoothing contour curves for automated cutting using Rhino Optimizing and smoothing contour curves for automated cutting using Rhino Contour curve data can be of highly variable quality depending on the original source. Much of the time the raw data is not suitable

More information

4 Parametrization of closed curves and surfaces

4 Parametrization of closed curves and surfaces 4 Parametrization of closed curves and surfaces Parametrically deformable models give rise to the question of obtaining parametrical descriptions of given pixel or voxel based object contours or surfaces,

More information

Morphological Image Processing

Morphological Image Processing Morphological Image Processing Morphology Identification, analysis, and description of the structure of the smallest unit of words Theory and technique for the analysis and processing of geometric structures

More information

A TESSELLATION FOR ALGEBRAIC SURFACES IN CP 3

A TESSELLATION FOR ALGEBRAIC SURFACES IN CP 3 A TESSELLATION FOR ALGEBRAIC SURFACES IN CP 3 ANDREW J. HANSON AND JI-PING SHA In this paper we present a systematic and explicit algorithm for tessellating the algebraic surfaces (real 4-manifolds) F

More information

THE preceding chapters were all devoted to the analysis of images and signals which

THE preceding chapters were all devoted to the analysis of images and signals which Chapter 5 Segmentation of Color, Texture, and Orientation Images THE preceding chapters were all devoted to the analysis of images and signals which take values in IR. It is often necessary, however, to

More information

Birkdale High School - Higher Scheme of Work

Birkdale High School - Higher Scheme of Work Birkdale High School - Higher Scheme of Work Module 1 - Integers and Decimals Understand and order integers (assumed) Use brackets and hierarchy of operations (BODMAS) Add, subtract, multiply and divide

More information

Interpolation by Spline Functions

Interpolation by Spline Functions Interpolation by Spline Functions Com S 477/577 Sep 0 007 High-degree polynomials tend to have large oscillations which are not the characteristics of the original data. To yield smooth interpolating curves

More information

SIZE PRESERVING MESH GENERATION IN ADAPTIVITY PROCESSES

SIZE PRESERVING MESH GENERATION IN ADAPTIVITY PROCESSES Congreso de Métodos Numéricos en Ingeniería 25-28 junio 2013, Bilbao, España c SEMNI, 2013 SIZE PRESERVING MESH GENERATION IN ADAPTIVITY PROCESSES Eloi Ruiz-Gironés 1, Xevi Roca 2 and Josep Sarrate 1 1:

More information

Topic 6 Representation and Description

Topic 6 Representation and Description Topic 6 Representation and Description Background Segmentation divides the image into regions Each region should be represented and described in a form suitable for further processing/decision-making Representation

More information

Boundary descriptors. Representation REPRESENTATION & DESCRIPTION. Descriptors. Moore boundary tracking

Boundary descriptors. Representation REPRESENTATION & DESCRIPTION. Descriptors. Moore boundary tracking Representation REPRESENTATION & DESCRIPTION After image segmentation the resulting collection of regions is usually represented and described in a form suitable for higher level processing. Most important

More information

Building Roof Contours Extraction from Aerial Imagery Based On Snakes and Dynamic Programming

Building Roof Contours Extraction from Aerial Imagery Based On Snakes and Dynamic Programming Building Roof Contours Extraction from Aerial Imagery Based On Snakes and Dynamic Programming Antonio Juliano FAZAN and Aluir Porfírio Dal POZ, Brazil Keywords: Snakes, Dynamic Programming, Building Extraction,

More information

2D Spline Curves. CS 4620 Lecture 18

2D Spline Curves. CS 4620 Lecture 18 2D Spline Curves CS 4620 Lecture 18 2014 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes that is, without discontinuities So far we can make things with corners (lines,

More information

City Research Online. Permanent City Research Online URL:

City Research Online. Permanent City Research Online URL: Slabaugh, G.G., Unal, G.B., Fang, T., Rossignac, J. & Whited, B. Variational Skinning of an Ordered Set of Discrete D Balls. Lecture Notes in Computer Science, 4975(008), pp. 450-461. doi: 10.1007/978-3-540-7946-8_34

More information

Dgp _ lecture 2. Curves

Dgp _ lecture 2. Curves Dgp _ lecture 2 Curves Questions? This lecture will be asking questions about curves, their Relationship to surfaces, and how they are used and controlled. Topics of discussion will be: Free form Curves

More information

Example 24 Spring-back

Example 24 Spring-back Example 24 Spring-back Summary The spring-back simulation of sheet metal bent into a hat-shape is studied. The problem is one of the famous tests from the Numisheet 93. As spring-back is generally a quasi-static

More information

PS Geometric Modeling Homework Assignment Sheet I (Due 20-Oct-2017)

PS Geometric Modeling Homework Assignment Sheet I (Due 20-Oct-2017) Homework Assignment Sheet I (Due 20-Oct-2017) Assignment 1 Let n N and A be a finite set of cardinality n = A. By definition, a permutation of A is a bijective function from A to A. Prove that there exist

More information

Revision of the SolidWorks Variable Pressure Simulation Tutorial J.E. Akin, Rice University, Mechanical Engineering. Introduction

Revision of the SolidWorks Variable Pressure Simulation Tutorial J.E. Akin, Rice University, Mechanical Engineering. Introduction Revision of the SolidWorks Variable Pressure Simulation Tutorial J.E. Akin, Rice University, Mechanical Engineering Introduction A SolidWorks simulation tutorial is just intended to illustrate where to

More information

DIGITAL TERRAIN MODELLING. Endre Katona University of Szeged Department of Informatics

DIGITAL TERRAIN MODELLING. Endre Katona University of Szeged Department of Informatics DIGITAL TERRAIN MODELLING Endre Katona University of Szeged Department of Informatics katona@inf.u-szeged.hu The problem: data sources data structures algorithms DTM = Digital Terrain Model Terrain function:

More information

Almost Curvature Continuous Fitting of B-Spline Surfaces

Almost Curvature Continuous Fitting of B-Spline Surfaces Journal for Geometry and Graphics Volume 2 (1998), No. 1, 33 43 Almost Curvature Continuous Fitting of B-Spline Surfaces Márta Szilvási-Nagy Department of Geometry, Mathematical Institute, Technical University

More information