Implicit Modeling of Tree Surfaces

9 downloads 0 Views 270KB Size Report
The bark of trees has been observed to follow the force ow lines of the tree, and a particle ow approximation is used to simulate the texturing of bark on trees at ...
Implicit Modeling of Tree Surfaces John C. Hart School of EECS Washington State University Pullman, WA 99164-2752 [email protected]

Brent Baker Ogden Profession Services NHEERL | Western Ecology Division U.S. Environmental Protection Agency Corvallis, OR 97333 [email protected]

Abstract

Tree models can be categorized into two classes: global models that represent the developmental form of the entire tree, and local models that represent the geometric details found on the tree surface and leaves. This paper presents new implicit local tree modeling techniques. An existing generalized cylinder blending model is extended to blend eccentric cones, to simulate the reaction wood trees generate at branching points. The bark of trees has been observed to follow the force ow lines of the tree, and a particle ow approximation is used to simulate the texturing of bark on trees at branching points. Since trees are commonly identi ed by the appearance of their bark, we have also attempted to model bark that is typical of a particular species, rather than just realistic in general.

1 Introduction Research on the modeling of natural trees falls into two general categories. Some models represent the global developmental structure of the tree, such as the L-systems [Prusinkiewicz & Lindenmayer, 1990] and the rami cation matrix [Viennot et al., 1989]. This research instead models the local appearance of tree surfaces. (These terms should not be confused with developmental vs. non-developmental methods, which both model the global structure of a tree, but do not necessarily a ect the local appearance of features such as bark.) The appearance of the tree surface becomes complex at its branching points. This paper introduces new algorithms for smoothly blending the branches at branching points, assigning texture coordinates based on physical properties of the tree, and procedurally forming a realistic, identi able and geometric bark texture.

1.1 Previous Work

While many papers have explored various methods for simulating the global structure of trees, few have investigated techniques for visually simulating the local appearance of tree surfaces. Bloomenthal [1985] simulated the maple tree using generalized cylinders. Parametric surfaces smoothly connected the branches at the crotch where branches meet. This parameterization also yielded reasonable texture coordinates at branching points. A bark bump-map was made from an x-ray of real bark. Oppenheimer [1986] simulated trees with generalized cones interpolating keypoints generated by an interactive cyclic instancing structure. Bark was simulated using a noise-based sawtooth function, which appeared realistic everywhere except at branching points. Trees were rendered with snow using a two-pass z-bu ering technique. Bloomenthal & Wyvill [1990] modeled \branching ramiforms" using a generalized cylinder blend based on distance to avoid bulging. We generalize this work in Section 2 to include the anisotropic reaction wood a tree grows to o set mechanical stress. Max [1990] devised \cone-spheres" as a coarse but fast model for tree limbs. While cone-spheres suce as an ecient representation of individual limbs, they o er no help in the blending and texturing at branch points. 1

Hart [1995] formulated an implicit blending model for interpolating a procedural bark displacement-map texture through a branching point. While the blending procedure joined the bark geometrically at branching points, the bark's features tended to interfere with each other instead of linking. Federl & Prusinkiewicz [1996] simulated bark by placing a physically-based mesh of springs and point masses on the surface of the tree. The cracked appearance of older bark was simulated by randomly perturbing the spring breaking constants. When one spring breaks, the crack tends to propagate through the surface. No mention was made on how such a mesh could be placed at a branching point.

1.2 The Physics of Trees

There are two general classes of trees: gymnosperms and angiosperms. Gymnosperms are so named because their seeds are not enclosed, but are external. These include ginkos, pine, spruce, r and other conifers whose seeds are carried in an open cone. The seeds of angiosperms are enclosed in a mature ovary, a fruit. These species include those called deciduous and most tropical species. The classi cation is important because the two groups have developed di erent mechanisms to resist mechanical stress. Several factors can create an unbalanced load on a structural member of a tree. The most common is the tree's own growth. Branches are occasionally lost, due to external trauma or shade from higher branches. Trees counteract these forces by growing reaction wood [Mattheck, 1991]. Reaction wood either pushes a branch (compression wood) or pulls a branch (tension wood) to counteract rotational force. Compression wood is formed by gymnosperms whereas tension wood is formed by angiosperms1 [Esau, 1960]. Both can be identi ed as a thickening, or eccentricity, of the annual ring on the side of the branch where it forms.

2 Blending Branches The realism of the tree's appearance is greatly increased by the blending of branches and the application of bark. The blending model smoothly interpolates the branches of the tree and to model the \reaction wood" added at branching points to counter the rotational stress caused by a limb's o -center weight. Bloomenthal & Wyvill [1990] developed a skeletal blend of generalized cylinders of constant radius. This blend can be expressed in closed form as a constant o set to an envelop curve

fCyl(x) = e(x) ? r (1) e(x) = d(x; hclosest(x; L1 ); closest(x; L2 )i) (2) where the function d(x; A) denotes the distance between the point x and the set A; the function closest(x; A) to denote the closest point of the convex2 set A to the point x 62 A; and the notation hx; yi to denote the set of points forming a line segment connecting point x to y: The value r is a constant radius for the cylinders. The blend joins generalized cylinders of constant

radius about arbitrary space curves. The blend does not support changes in radius, nor the blending of two constant radius cylinders of di erent radii.

2.1 Blending Cones

In order to blend cones, the constant radius of (1) needs to be replaced with a variable version, yielding the new blending function fCone(x) = e(x) ? r(x) (3)

1 Some authorities maintain that angiosperms form both tension wood and compression wood scattered around the perimeter of the branch, and that reaction wood in angiosperms does not always create a stem eccentricity [Gartner, 1995]. In this work, we assume angiosperms always react with tension wood. 2 In the original formulation, the skeletal elements were generalized cylinders, but when a skeletal segment is not convex, closest can return more than one valid point.

2

The function r(x) is a combination of the radii at the points on the two skeletal segments closest to x: The function r1 (x) is the rst cone's radius measured at the point closest(x; L1 ): The function r2 (x) is likewise de ned. The function r(x) should be a convex combination of the radii of the skeletal segments. This combination can be based on spatial distance, + d(x; L1 )r2 (x) ; rsd (x) = d(x; Ld2()xr;1L(x)) + (4) d(x; L1 ) 2 or on linear interpolation of a skeleton parameter

rli (x) = (1 ? t)r1 + t r2 ; (where the value t 2 [0; 1] is the parametric value of the point on the line connecting closest(x; L2 ) closest to the point x).

(5) closest(x; L1 )

to

Figure 1: Blend of two cones using spatial distance (left) and linear interpolation (right). Figure 1 demonstrates the resulting blends on a simple branching con guration3. Neither solution is entirely satisfactory near the branching point. The spatial distance blend causes the trunk's radius to shrink whereas the linear distance blend results in a severe dimple. These problems can be avoided by using a cubic function to increase the radius of the branch in the neighborhood of its intersection with the trunk, such that the radius of the branch matches the radius of the trunk at the point where their skeletons intersect. Figure 2 shows the resulting blends using both spatial distance and linear interpolation blends. Figure 3 shows the spatial distance blend causes the base of the branch to swell to the size of the trunk, which is unrealistic. The linear interpolation blend maintains the correct branch radius, but creates a faint dimple on the trunk. 3 This con guration consists of a vertical cone of length 3.8, radii 0.5 and 0.3, and a horizontal cone of length 2, radii 0.2 and 0.1. The end of the skeleton of the horizontal cone touches the center of the skeleton of the vertical cone.

3

Figure 2: Blend of two cones with cubic swelling of the branch near the trunk, using spatial distance (left) and linear interpolation (right).

Figure 3: An alternate view of the cubic swelling blend, showing that the spatial distance basis (left) swells more than linear interpolation basis (right). 4

2.2 Adding Reaction Wood

Trees grow reaction wood to counter the rotational moment created by the limb's o -center mass. The amount of reaction wood needed requires static analysis of the supporting structure.

Figure 4: Added reaction wood blend of a gymnosperm branch. The addition of reaction wood on, for example, branch #1 would be (x))  y r1 = r1 + r (1 ? t1 ) 1 ?2 (jjxx??closest (6) closest(x)jj where r is the increase in the branch's radius due to reaction wood, and t1 parameterizes the branch axis from 0 at the base to 1 at the tip. Equation 6 increases the radius in the direction of the unit vector y: For gymnosperms, y points down, and the radius is increased on the bottom side of the base of the branch, thereby modeling compression wood. For angiosperms, the basal radius at the top side of the branch is increased to model tension wood. Figure 4 demonstrates the reaction wood blend using the linear interpolation basis.

3 Texture Coordinate Computation Following Szeliski & Tonnesen [1992], Witkin & Heckbert [1994] and Fleischer et al. [1995], we texture the tree using particles constrained to the implicit surface. Instead of covering the entire surface with particles as previous techniques have, we create a ow of particles from the base of the trunk to the tip of the branches. The bark of trees follows the lines of force ow from the structure of the tree [Mattheck, 1991]. While these force ow lines would result from a nite-element structure analysis, such an expensive procedure would be overkill. Instead, we simulate the formation of bark through a signi cantly simpler ow approximation. Particles are constrained to the surface, beginning at the base of the trunk with an initial upward velocity. The momentum of these particles carries them to the tips of the branches, owing naturally through branching points. The trails of these particles simulates the grain of the bark. 5

The constraint of a particle to an implicit surface that is itself de ned as an o set to a skeleton is equivalent to connecting the particle to the skeleton with a beam, even if this length of this beam depends on the location with respect to the skeleton. Zahlten & Jurgens [1991] used chains of voxels to polygonize implicit surfaces. A chain is a connected ring of cells, where cells could be cubes or simplices (tetrahedra). This chain is pulled across a surface, and its intersection is polygonized. We can similarly use a chain of particles to interrogate the implicit tree surface. Instead of voxels, particles are constrained to lie on the implicit surface. These particles are connected into a ring by springs of zero rest length. Giving the particles an initial velocity pushes the chain across the implicit surface, thereby interrogating it. Surfaces such as trees, while simply connected, require the chain to subdivide into several loops for proper interrogation. The reconnection algorithm is listed in Table 1, and Figure 5 demonstrates this algorithm before and after a reconnection. The function limb(a) returns the limb that particle a is attached to. relinked = FALSE b0 = b a0 = a while limb(a0 ) 6= limb(b0 ) repeat a=b b = limb(b) if b = a0 then return(relinked) until limb(a) 6= limb(b) & jjx(b0 ) ? x(a)jj2 < jjx(b) ? x(a)jj2 relinked = TRUE unlink(a0 ; b0 ) link(a; b0 ) unlink(a; b) link(a0 ; b) b0 = b return(relinked)

Table 1: Relinking algorithm. The parameters of the chain-of-particles are quite delicate and will require some experimentation for reasonable performance. Our trees surfaces were approximated by the chain-of-particles with the following parameters:  Time steps per second: 100.  Initial velocity of particles: 2 units/sec up.  Maximum Link Length: .15 units.  Minimum Link Length: .05 units.  Spring Constant Between Links: 100.  Dampening Constant Between Links: 1.  Spring Constant Between Links and Tree Skeleton: 100. 6

ba a

ba b

b

a a

b0

a0

b

b

a

a b

b a a a

b

b b

a

a

b b

ab

ba a

ba b

b

a a

a b a

b

b

a

a0

b a

b a

b0

b b

a ab

a

a

b b

ab

a ab

Figure 5: Before and after relinking.

Figure 6: Particle ow around a branching point. 7

 Dampening Constant Between Links and Tree Skeleton: 10. Figure 6 demonstrates the result of the particle ow on an unblended branching point.

4 Geometric Bark Texture We have attempted to model the bark of the tree realistically. The appearance of bark is often used to identify a species growing in the forest. The appearance of bark changes as the tree ages, in some ways analogous to the aging of human skin. In many species the bark of younger trees is fairly smooth. As the tree ages the bark becomes much more heavily textured, and can shift in color. We have used [Little, 1994] as a guide for the appearance of the bark of the species we model. The bark texture associates polygons with each particle [Fleischer et al., 1995] in two phases. The rst phase attaches a \background" polygon to each particle from the dynamic particle ow stage of the model. Currently, this polygon is a quadrilateral. Its size is adjusted until the surface of the tree is covered, e ectively polygonizing the surface of the tree. Distances between particles are small enough that these polygons can be at shaded. The second phase attaches a \foreground" feature, made up of several polygons, to some or all of the background polygons, depending on a density parameter. Figure 7 provides a general example. We have classi ed bark appearance into two general categories, spotted and ribbon. This grouping is based solely on appearance and is not connected to the tree's biological classi cation. Quaking Aspen and many birch and alder species have spotted bark. Each spot is a fan of triangles whose outer edge touches the background and whose peak is an adjustable distance above the background. For other species, the entire spot can be raised above the background, and the size increased to almost cover the surface. We used spotted bark where the height to width ratio of the foreground features does not exceed 2:1. An example appears in Figure 8 (left). Ribbon bark consists of a long, narrow segmented ribbon that extends above and below an attached particle. Several layers of di ering heights can be generated and overlaid. Ribbons are aligned with the growth axis of the trunk/limb, but with a controlled amount of random twist introduced. In many cases, ribbon foreground completely obscures the background. Most variations of maple have ribbon bark (Figure 8 right), as well as many oaks, junipers, cedars, and redwood.

5 Conclusion The texturing of bark has long been problematic in computer graphics. The physically-inspired bark simulation strives for a more realistic depiction of speci c bark. Beyond its obvious uses in image synthesis, it may nd use as a multimedia tool for the identi cation of tree species based on an interactive query of bark appearance. The rough texture of bark changes appearance under di erent lighting conditions, simulating similar lighting may aid in visually matching an unknown tree bark with its computationally cataloged counterpart. Skeletal blending of cone segments is a dicult problem. The blend presented in Sec. 2 is a rst solution, but further work needs to be performed. The cone blending research was nished after the geometric bark research, and both will soon be integrated into a single model.

5.1 Further Research

We are interested in simulating the way the bark on trees heals its wounds. Such healing would require the tree surface be completely covered with active particles, instead of the chain-of-particles approach used in this paper. An initial tangential velocity component can cause the bark particles to simulate spiral bark, but it is currently unclear how such bark spins its way around a branching point.

8

Figure 7: A general bark texturing example (left). Mulberry bark (right).

Figure 8: A Quaking Aspen example of spotted bark (left). A Maple-like example of ribbon bark (right).

9

5.2 Acknowledgments

This research is part of the Recurrent Modeling Project, supported in part by the NSF under grants CCR9309210 and CCR-9529809, and by a gift from Intel Corp. The research was performed using the facilities of the Imaging Research Laboratory.

References [Bloomenthal & Wyvill, 1990] Bloomenthal, J. and Wyvill, B. Interactive techniques for implicit modeling. Computer Graphics 24(2), Mar. 1990, pp. 109{116. [Bloomenthal, 1985] Bloomenthal, J. Modeling the mighty maple. Computer Graphics 19(3), July 1985, pp. 305{311. [Esau, 1960] Esau, K. Anatomy of Seed Plants. Wiley, 1960. [Federl & Prusinkiewicz, 1996] Federl, P. and Prusinkiewicz, P. A texture model for cracked surfaces, with an application to tree bark. In Proc. of Western Computer Graphics Symposium, Mar. 1996, pp. 23{29. [Fleischer et al., 1995] Fleischer, K. W., Laidlaw, D. H., Currin, B. L., and Barr, A. H. Cellular texture generation. In Computer Graphics (Annual Conference Series), Aug. 1995, pp. 239{248. [Gartner, 1995] Gartner, B. Personal communication, 1995. Oregon State University, Dept. of Forest Products. [Hart, 1995] Hart, J. C. Implicit representations of rough surfaces. In Proc. of Implicit Surfaces '95. (Eurographics Workshop), April 1995, pp. 33{44. Revised version to appear: Computer Graphics Forum. [Little, 1994] Little, E. L. National Audubon Society Field Guide to North American Trees (Western Region). Knopf, New York, 1994. [Mattheck, 1991] Mattheck, C. Trees: The Mechanical Design. Springer-Verlag, New York, 1991. [Max, 1990] Max, N. Cone-spheres. Computer Graphics 24(4), August 1990, pp. 59{62. [Oppenheimer, 1986] Oppenheimer, P. E. Real time design and animation of fractal plants and trees. Computer Graphics 20(4), Aug. 1986, pp. 55{64. [Prusinkiewicz & Lindenmayer, 1990] Prusinkiewicz, P. and Lindenmayer, A. The Algorithmic Beauty of Plants. Springer-Verlag, New York, 1990. [Szeliski & Tonnesen, 1992] Szeliski, R. and Tonnesen, D. Surface modeling with oriented particle systems. Computer Graphics 26, July 1992, pp. 185{194. [Viennot et al., 1989] Viennot, X. G., Eyrolles, G., Janey, N., and Arques, D. Combinatorial analysis of rami ed patterns and computer imagery of trees. Computer Graphics 23(3), July 1989, pp. 31{40. [Witkin & Heckbert, 1994] Witkin, A. P. and Heckbert, P. S. Using particles to sample and control implicit surfaces. In Computer Graphics (Annual Conference Series), July 1994, pp. 269{277. [Zahlten & Jurgens, 1991] Zahlten, C. and Jurgens, H. Continuation methods for approximating isovalued complex surfaces. In Proc. of Eurographics '91, 1991.

10

Suggest Documents