Anisotropic Point Set Surfaces Anders Adamson∗ Department of Computer Science TU Darmstadt
Marc Alexa† Department of Computer Science TU Darmstadt
Abstract Point Set Surfaces define smooth surfaces from regular samples based on weighted averaging of the points. Because weighting is done based on a spatial scale parameter, point set surfaces apply basically only to regular samples. We suggest to attach individual weight functions to each sample rather than to the location in space. This extends Point Set Surfaces to irregular settings, including anisotropic sampling adjusting to the principal curvatures of the surface. In particular, we describe how to represent surfaces with ellipsoidal weight functions per sample. Details of deriving such a representation from typical inputs and computing points on the surface are discussed. CR Categories: G.1.2 [Numerical Analysis]: Approximation of surfaces and contours— [I.3.5]: Computer Graphics— Curve, surface, solid, and object representations Keywords: point-based modeling, sparse representations
1
Introduction
Representing a smooth surface with point samples has become an established approach lately [Zwicker et al. 2002; Pauly et al. 2003; Alexa et al. 2004; Amenta and Kil 2004b; Kobbelt and Botsch 2004]. In particular, Point Set Surfaces (PSS) (see Section 2 for a brief introduction) provide an efficient way to compute a smooth surface from the points locally, which is necessary for shape processing or rendering [Levin 2003; Alexa et al. 2001; Adamson and Alexa 2004; Amenta and Kil 2004a]. While PSS have gained popularity and are used widely in point processing pipelines, their definition is inherently based on the assumption of uniform sampling. In Section 3 we explain why simple approaches to account for anisotropic sampling (e.g., [Pauly et al. 2003; Alexa et al. 2004; Kobbelt and Botsch 2004]) are not sufficient to solve the problem and present a fundamentally new approach: Instead of locally estimating the feature size and then using this feature size for weighting the samples, each sample defines its influence on the space. ∗ e-mail: † e-mail:
[email protected] [email protected] Figure 1: The smooth surface of the Mannequin model represented by an anisotropic sample with ellipsoidal weight functions. The ellipsoids have been derived from a given set of point samples, which are used as the centers. The support of the weight functions overlaps and the ellipsoids have been scaled by half for this illustration.
This weighting scheme allows representing featureless areas of the surface with fewer samples, resulting in a compact representation. We focus on using ellipsoidal weight functions for the points. Such representations can be derived directly from clean sample sets (Section 4.1), or, using variational shape approximations techniques, directly from dense, noisy samples (Section 4.2). Note, however, that our goal is not shape compression, i.e. storing the surface with as few points/bits as possible given a certain error threshold [Botsch et al. 2002; Pauly et al. 2002; Fleishman et al. 2003; Waschb¨ usch et al. 2004; Wi and Kobbelt 2004]. We rather aim for robustness and flexibility with regard to variations in the input.
Section 5 details the algorithm to compute the surface from a set of points with ellipsoidal weight functions. The construction of spatial data structures is more complex than for points, as it has to contain all ellipsoidal support regions (Section 5.1). Sometimes these ellipsoidal weights are protruding into free space and could result in artifacts. This can be easily corrected by an adaptive closeness criteria (Section 5.2). Several examples show that ellipsoidal weighting allows shape representation that adapt to principal curvature directions and variations in the surface.
2
Notation & Basic Approach
Let points {pi ∈ R3 }, i ∈ {1, . . . , N } be sampled from a smooth surface. Each point is equipped with the normal direction ni of the surface in pi . In the classic isotropic setting, we define a ball Bi = {x|d(x, pi ) < r} for each point, describing the region of space that is influenced by pi . We use the union of the balls B = ∪i Bi for two functions: The weighted average of locations P i wi (x)pi a : B → B, a(x) = P (1) i wi (x) and the weighted principal normal direction X wi (x)(n(x)ni )2 .1 n : B → S2 , max kn(x)k=1
(2)
i
The weight functions {wi : Bi → R+ } are locally supported, smooth functions, typically monotonically decreasing with d(x, pi ). A simple and popular choice is wi = exp(−kx − pi k22 ) (or a spline approximation to the Gaussian) . A point x belongs to the surface S represented by the points (and normals) if the direction towards a(x) has no component in normal direction n(x), i.e. n o S : x|n(x)T (a(x) − x) = 0 (3) This definition can be embedded in the framework of Amenta & Kil [2004b] or Adamson & Alexa [2004] (which is derived from the original work of Levin [2003]). Their interpretations of the surface as a product space, or level set, respectively show that S is smooth. Recently, it has been shown that given an r-sample of a surface (sampling density is proportional to the distance of the medial axis of the surface, see [Amenta et al. 1998; Dey and Kumar 1999; Amenta et al. 2000]) the MLS surface [Shen et al. 2004] reconstructs an isotopic surface [Kolluri 2005]. It seems that this proof can be extended to the extremal surface we are dealing with here [Dey et al. 2005]. This would settle the open manifoldness question, at least for r-sampled manifold surfaces.
3
Weighting in space
In many reconstruction approaches, all weight functions wi (x) behave in the same way, i.e. one could drop the index i and simply define „ « kx − pi k wi (x) = w(x, pi ) = θ (4) h where θ(·) is a smooth, monotonically decreasing function. In most cases we use piecewise polynomial approximations to a Gaussian-shaped function with limited support (e.g., Wendland’s functions [Wendland 1995]). The parameter h is a model-specific constant describing the average distance among point samples. The obvious drawback of this approach is that the point density has to be roughly constant
all over the surface, or, at least, cannot vary arbitrarily. On the other hand, one would like to have more point samples in regions of high surface variation and less samples where the surface is flat. Pauly et al. [2002; 2003] suggest to adapt h to the local density of the points, i.e. to define a function h : B → R and then „ « kx − pi k wi (x) = w(x, pi ) = θ . (5) h(x) However, it is known in statistics that these baloon estimators, especially those based on k-nearest neighbors, fail to improve the order of mean squared error (MSE) relative to h [Sain 2002]. This means the reconstructed surface will suffer from irregular samplings, and varying h over space cannot fundamentally compensate for the problem. For this reason, we rather suggest to use weight functions defined per point wi (x) = θ (di (x, pi )) .
(6)
Not only does this type of definition have the potential to significantly improve the MSE, it also adds a lot of flexibility to the modeling framework: the shape of iso-contours of a weight function can be controlled per point. In the following we discuss potential shapes for the weight functions. We begin with the case of planar curves and extend the ideas to surfaces in space.
3.1
Plane curves
Consider a plane curve with constant curvature. This curve should be sampled at regular intervals proportional to the curvature, and it is sufficient to weight each sample spherically: « „ kx − pi k . (7) wi (x) = θ h There is no reason to weight the influence of points differently along tangent and normal direction of the curve, as long as the curve is far away from other curve components. Of course, the supports of the weight functions have to be large enough to overlap. If they are very large, the representation is inefficient. Due to numerical problems very small or very large weights can also result in severe artifacts (see [Adamson and Alexa 2004] for details). For varying curvature, the radius of spheres and the spacing of samples should adapt to the curvature „ « kx − pi k wi (x) = θ , (8) hi which can be modeled by adjusting hi according to the curvature in pi . But since curvature varies only along one direction we have found no reason to use more complicated weights than radial ones. Quite on the contrary, the potential complications resulting from anisotropic weights (see Section 5.2) seem to outweigh their potential benefits.
3.2
Surfaces
1 Note
that normals could also be computed by averaging the vectors if they are consistently oriented. This is faster and the results are comparable in practice.
The surface case differs significantly from plane curves in that the curvature can be different along the two dimensions
of a surface. Let (kmin , kmax ) be the minimum and maximum principal curvatures. As mentioned for the curve case, the weighting should be relative to the curvature, and neither too small nor too large. A conservative spherical support is typically bounded from above by kmax . If the principal curvatures differed that would result in an inefficient representation along the direction of smaller curvature. A cylinder is an extreme case, where km in = 0, km ax = r1 . Along the curved direction a sufficient number of samples is required, in order to approximate the circular shape. The small spacing of these samples yields a relatively small support, resulting in only a narrow ring of the cylinder being represented. Although there is no curvature in the other dimension, several samples are needed to represent a long cylinder.. To allow weighting the two tangental directions differently we propose using ellipsoidal weights Hi instead of radii hi in each sample. Weighting is then performed by transforming the vector x − pi with Hi , i.e. wi (x) = θ(kHi−1 (x − pi )k)
(9)
The ellipsoid Hi should be oriented so that one of its axes points into normal direction, and the other two align with the principal curvature directions. The length of the tangental half-axes should reflect kmin and kmax . In Figure 6, top row, we show how to represent a cylinder using a ring of samples with ellipsoidal weight functions. The length of the cylinder could be arbitrary 2 Other support functions would be also possible. However, we have found that except for extreme cases, ellipsoidal weight functions seem to be a flexible and natural choice. They allow the use of • flat ellipsoids in flat regions, in order to avoid interference with other surface patches (if needed), • cylindrical ellipsoids in curved regions with small Gauss curvature, • and spherical supports in all other regions. In order to reduce the memory needed and to improve the computational performance, we replace the ellipsoids by spheres if the two tangental axes are roughly equal, i.e. if they ratio is close to one.
4
Computing ellipsoidal weight functions
In the following two sections, we discuss how to choose weighting transforms Hi in different scenarios.
4.1
Computing weights per sample point from clean samples
For dense clean samples of a surface our assumption is that the k-nearest neighbors of a point pi in space are also close 2 Note, that towards the ends the overlap of ellipsoids of the cylinder a transition of the curved surface to piecewise linear surface areas can be observed (upper rendering). Nevertheless, the surface quickly converges towards a cylinder when several supports overlap. In order to show this, we have cut off the cylinder at 0.5 of the half-axis length (lower rendering).
on the sampled surface. Some irregularities close to boundaries can be fixed by symmetrizing the k-nearest neighbor graph. Then, we can simply determine an ellipsoid covering the points by performing a covariance analysis [Hoppe et al. 1992] and an appropriate scale. Let pi(1) , . . . , pi(k) be the k-nearest neighbors and set the covariance matrix Σi = k−1
k X (pi(j) − pi )(pi(j) − pi )T .
(10)
j=1
Then Σi contains squared lengths λ2ik of the main axes of an ellipsoid, which we want to use to cover the k points. Note that we cannot ensure a covering. Assuming that the k points are uniformly distributed over a planar surface, we can derive expected squared radii ri2k of an (ideal) enclosing ellipsoid. The relation, interestingly, depends on k and we first look at it in one dimension: For k = 1, we have r2 = λ2 . For large k, many points contribute, and assuming a uniform distribution with zero mean asymptotically leads to Z r 1 x2 dx = r2 . λ2 = r−1 (11) 3 0 For k points distributed √ uniformly on the surface we expect the radii to grow as k. Together with the expected behavior for small and large k, we find that squared axes of the covariance matrix and squared radii of enclosing ellipsoids relate as √ 1 + √2k 2+ k √ . (12) = γk = 3 3 k We use this relation to compensate for the effect of k and set the squared weighting transform to be Hi2 = γk−1 Σi . In many cases we only need the square of Hi , however, if the root is needed, it can be obtained from the diagonalization of Σi as 1 −1/2 Hi = γk Ri Λi2 , Σi = RΛi RT . (13) Figure 1 illustrates ellipsoids derived with this approach.
4.2
Computing weights for reduced sets from dense samples
In most cases, the original point set describing the surface contains more samples then necessary and the samples might contain noise. Furthermore, a small set of samples might be beneficial. A popular approach for decimating the number of primitives in mesh modeling is to collapse pairs of vertices [Hoppe 1996; Garland and Heckbert 1997] and this has also been tried for point sets [Pauly et al. 2002]. Our experience, however, shows that decimation is inferior to generating a reduced representation directly on the dense model. This has recently been done very successfully for meshes [Cohen-Steiner et al. 2004], radial basis functions [Ohtake et al. 2004], and splats [Wi and Kobbelt 2004]. We believe that our representation is flexible enough to work well with either of these approaches. In particular, we have developed an approach reminiscent of Cohen-Steiner et al’s [CohenSteiner et al. 2004], however, generating ellipsoids rather than planes and working directly on point sets. The main idea is to maintain a set of proxy ellipsoids that approximate subsets of the point samples. Alternating, point samples are assigned to proxies and then proxies are recomputed based on the assigned samples.
Points are assigned to proxies based on the deviation of the point normal to the proxy normal and, as a secondary criterion, based on elliptically weighted distance to the center of the proxy. However, a point can be assigned to a different proxy only if one of its neighbors belongs to that proxy. This assures that points assigned to one proxy form connected components. Proxies are computed from the assigned points and their neighbors to make sure that the ellipsoids sufficiently intersect. Proxy center and normal direction are computed by averaging. The ellipsoid in tangental directions is computed from a local covariance analysis and the axes are adjusted to cover all points.
5
Defining and computing the surface
The generalized weighting scheme leads to slight changes in the basic approach: The points {pi } now define a set of ellipsoidal support regions Ei = {x|kHi−1 (x − pi )k < 1} for each point, describing the region of space that is influenced by pi . In the union of these regions E = ∪i Ei the two averaging functions are defined as before, using individual ellipsoidal weight functions for each points sample, i.e. P −1 i θ(kHi (x − pi )k)pi a : E → E, a(x) = P (14) −1 i θ(kHi (x − pi )k)
we can locally orient the surface yielding a signed distance to the surface. If the sign of f (x) changes, we iterate towards the intersection by interval search or simply interpolate the intersection linearly.
5.1
Spatial data structures
However, the efficiency of performing these computations depends largely on the quality of the spatial data structures that supports the evaluation of f . In particular, for evaluating f (x), all samples pi influencing x have to be determined. For uniform weighting this is equivalent to proximity searching in space, and standard approaches apply. However, the different radii and the ellipsoidal shape make the problem harder. Therefore, in each voxel of the spatial data-structure we store a list of all ellipsoids intersecting it. To compute f (x) we only have to find the voxel containing x and iterate through the list of ellipsoids.
and n : S → S2 ,
max
kn(x)k=1
X
θ(kHi−1 (x−pi )k)(n(x)ni )2 . (15)
i
The surface is then defined implicitly as before as f (x) = n(x)T (a(x)−x) = 0. Note that the weight functions are now different for each point that contributes to the sum, however, the computation is not fundamentally more involved. Independent of the generalized weighting scheme, the basic approach behaves identical to the approaches of Amenta & Kil [Amenta and Kil 2004b] and Adamson & Alexa [Adamson and Alexa 2004]. Consequently, points on the surface can be computed using a projection operator or by intersecting rays with the surface. The ray intersection method can lead to interactive frame rates, using highly optimized data structures and code [Wald and Seidel 2005].
Figure 2: The beetle model represented by ellipsoids. Their OBBs (top) are down-scaled in normal direction and used to build a kd-tree (bottom).
The projection operator results from iterating xr+1 = xr − n(xr )(a(xr − xr )) n(x)
(16)
until kxr + 1 − xr k < . The result is a point x in space for which |n(x)(a(x) − x)| < , as desired. Note, however, that this projection is not orthogonal. Adamson & Alexa [Alexa and Adamson 2004] discuss how to derive orthogonal projections, if necessary. For intersecting rays with the surface, we use the absolute value |n(x)(a(x) − x)| for sphere tracing [Hart 1996], i.e. using |n(x)(a(x) − x)| as the step size on the ray. While this measure is a good approximation of a distance field under regular sampling conditions and isotropic weight functions, it can differ in the case of ellipsoidal weighting. If the quality of the representation is low (see Section 5.2), we apply a ray marching approach similar to [Wald and Seidel 2005]. If the normals are not consistently orientated, we check for sign changes of n(x) during marching along the ray. This way
In our implementation we use a kd-tree, which is built considering the oriented bounding boxes (OBBs) of the ellipsoids (the half-axes are an efficient representation for OBBs as well). In order to obtain tighter non-empty voxels, we scale the OBBs in normal direction by a factor smaller than one for the kd-tree construction. The surface is expected to be close to the tangental planes of the ellipsoids. In a second pass, we insert all the ellipsoids which intersect the voxels, ensuring all the potentially contributing support functions are contained. A kd-tree, resulting from this procedure and the used OBBs are depicted in Figure 2.
5.2
Ill-shaped ellipsoidal coverings
Choosing the locations and shapes of the ellipsoids has to be done with care. The methods described in Sections 3.1 and 3.2 usually produce good ellipsoidal coverings. However, in
a(x)
a)
x
b)
Figure 3: In these situations, the excentric locations of the planes defined by (pi , ni ) are covered by other supports. No extra surface parts result in these cases. Note, that this is always the case when using spherical supports, if we assume the neighboring samples to be close to coplanar.
Figure 5: At locations inside excentrically isolated parts of the support ellipsoids kx − a(x)k is large relative to the radii Hi of the ellipsoid. An upper bound on the weighted average of Hi−1 (x − pi )set in order to eliminate these parts difference vector Hi−1 (x − pi ) already has length in the unit interval, i.e. a vector with almost unit length is far away from the center relative to the local scale. Averaging over these difference vectors P −1 (x − pi ) i wi H Pi a0 (x) = (17) w i i also yields a vector with length between 0 and 1. We require < 1 − ka0 (x)k
Figure 4: An example of undesired zero transitions in the implicit function (color-coded in blue) of an ill-conditioned two-dimensional setting of support ellipses (left) (For illustration purposes, the supporting ellipses are scaled down) The threshold for Equation 18 is applied ( = 0.15), erasing the undesired iso-surface parts (right).
general it is possible that highly anisotropic ellipsoids lead to large regions in space that are only supported by a single sample (see Figure 3a)). For surfaces defined according to Section 2 this is a problem if the plane normal to ni through pi gets isolated. In these locations, the implicit function becomes zero, as kx − a(x)k has no component in normal direction. Figure 4 (left) demonstrates the effect in a twodimensional setting. Note, that also two or more supporting ellipsoids can produce the undesired additional zero transitions of the implicit function. When only spherical support functions are used, this is unlikely to happen, as usually the only component which remains from cutting away other spheres contains the center (See Figure 3b)). Locations far away from a sample are also far away from the plane defined by the sample point and its normal, because the neighboring samples are located (almost) coplanar. Therefore, their implicit values differ from zero. The result is a fair approximation of the surface’s distance field. If an ellipsoidal covering is ill-shaped, we use the following technique to avoid reconstructing surfaces from few samples protruding into empty space: A point x is considered only if it is close its weighted average a(x), because a(x) is located inside the convex hull of the contributing samples, so it is necessarily close to the reconstructed surface (refer to Figure 5). If excentric parts of an ellipsoid are isolated from the other ellipsoids, they are far away from the weighted average a(x) of these locations (i.e. the center of the ellipsoids). Setting a threshold to this distance eliminates these regions. As the sizes of the ellipsoids vary, the threshold distance has to be adjusted to the ellipsoids. Note that the transformed
(18)
for x to be a valid point on the surface. Figure 4 (right) shows the result for applying a cut-off with = 0.15.
6
Conclusions
We have generalized the weighting scheme typically used with Point Set Surfaces. More fundamental than it might appear at first sight, we propose that each sample carries its own weight function (i.e. local scale) rather than averaging local scales directly. Statistics demonstrate that only this change has the promise to improve the properties of the reconstructed surface when the samples are not regular. In particular, we suggest to use ellipsoidal weights per sample. Surface samples can have cylindrical shape if the principal curvatures are different. This is not only convenient to keep the representation compact, it also restricts the space around complex features as much as possible, avoiding expensive calculations away from complex, and consequently densely sampled, features. The computation times of our approach greatly vary with the application and model parameters. Ray casting a mostly smooth model can be done in a fraction of a second, while shapes with many features and samples take can take a few seconds. To our information, this is the first approach that integrates anisotropic, curvature dependent sampling into mesh-less representations, so that the representation is easy to generate and the surface quickly rendered.
7
Acknowledgments
We would like to thank Nina Amenta, Mark Pauly, and Denis Zorin for fruitful discussions. This work was supported in part by the European Union. Some of the models are taken from the AIM@Shape Shape repository.
References Adamson, A., and Alexa, M. 2004. Approximating bounded, non-orientable surfaces from points. In Proceedings of Shape Modeling International 2004, IEEE Computer Society, F. Giannini and A. Pasko, Eds., 243–252. Alexa, M., and Adamson, A. 2004. On normals and projection operators for surfaces defined by point sets. In Proceedings of Eurographics Symposium on Point-based Graphics, Eurographics, M. Alexa, M. Gross, H. Pfister, and S. Rusinkiewicz, Eds., 149–156. Alexa, M., Behr, J., Cohen-Or, D., Fleishman, S., Levin, D., and Silva, C. T. 2001. Point set surfaces. In IEEE Visualization 2001, 21–28. ISBN 0-7803-7200-x. Alexa, M., Gross, M., Pauly, M., Pfister, H., Stamminger, M., and Zwicker, M. 2004. Point-Based Computer Graphics. SIGGRAPH’04 Course Notes #6, SIGGRAPH-ACM publication. Amenta, N., and Kil, Y. 2004. The domain of a point set surface. In Eurographics/IEEE Symposium on PointBased Graphics, Eurographics, 139–148. Amenta, N., and Kil, Y. J. 2004. Defining point set surfaces. ACM Transactions on Graphics 23, 3, 264–270. Amenta, N., Bern, M., and Kamvysselis, M. 1998. A new voronoi-based surface reconstruction algorithm. Proceedings of SIGGRAPH 98 (July), 415–422. Amenta, N., Choi, S., Dey, T. K., and Leekha, N. 2000. A simple algorithm for homeomorphic surface reconstruction. In Proceedings of the 16th Symposium on Computational Geometry, 213–222. Botsch, M., Wiratanaya, A., and Kobbelt, L. 2002. Efficient high quality rendering of point sampled geometry. In Rendering Techniques 2002: 13th Eurographics Workshop on Rendering, 53–64. Cohen-Steiner, D., Alliez, P., and Desbrun, M. 2004. Variational shape approximation. ACM Transactions on Graphics 23, 3 (Aug.), 905–914. Dey, T. K., and Kumar, P. 1999. A simple provable algorithm for curve reconstruction. In Proceedings of the Tenth Annual ACM-SIAM Symposium on Discrete Algorithms, ACM-SIAM, N.Y., 893–894. Dey, T. K., Goswami, S., and Sun, J., 2005. Extremal surface based projections converge and reconstruct with isotopy. manuscript. Fleishman, S., Cohen-Or, D., Alexa, M., and Silva, C. T. 2003. Progressive point set surfaces. ACM Transactions on Graphics 22, 4 (Oct.), 997–1011. Garland, M., and Heckbert, P. S. 1997. Surface simplification using quadric error metrics. In Proceedings of SIGGRAPH 97, Computer Graphics Proceedings, Annual Conference Series, 209–216. Hart, J. C. 1996. Sphere tracing: a geometric method for the antialiased ray tracing of implicit surfaces. The Visual Computer 12, 9, 527–545. Hoppe, H., DeRose, T., Duchamp, T., McDonald, J., and Stuetzle, W. 1992. Surface reconstruction from
unorganized points. Computer Graphics (Proceedings of SIGGRAPH 92) 26, 2 (July), 71–78. Hoppe, H. 1996. Progressive meshes. In Proceedings of SIGGRAPH 96, Computer Graphics Proceedings, Annual Conference Series, 99–108. Kobbelt, L., and Botsch, M. 2004. A survey of pointbased techniques in computer graphics. Computers & Graphics 28, 6, 801–814. Kolluri, R. 2005. Provably good moving least squares. In ACM-SIAM Symposium on Discrete Algorithms. to appear. Levin, D. 2003. Mesh-independent surface interpolation. In Geometric Modeling for Data Visualization, Springer. Ohtake, Y., Belyaev, A. G., and Seidel, H.-P. 2004. 3D scattered data approximation with adaptive compactly supported radial basis functions. In Shape Modeling International 2004, 31–39. Pauly, M., Gross, M., and Kobbelt, L. P. 2002. Efficient simplification of point-sampled surfaces. In Proceedings of the 13th IEEE Visualization 2002 Conference (VIS-02), IEEE Computer Society, Piscataway, NJ, R. Moorhead, M. Gross, and K. I. Joy, Eds., 163–170. Pauly, M., Kaiser, R., Kobbelt, L., and Gross, M. 2003. Shape modeling with point-sampled geometry. ACM Transactions on Graphics (SIGGRAPH 2003 issue) 22, 3. to appear. Sain, S. R. 2002. Multivariate locally adaptive density estimation. Computational Statistics and Data Analysis, 39, 165–186. Shen, C., O’Brien, J. F., and Shewchuk, J. R. 2004. Interpolating and approximating implicit surfaces from polygon soup. ACM Transactions on Graphics 23, 3 (Aug.), 896–904. Wald, I., and Seidel, H.-P. 2005. Interactive Ray Tracing of Point Based Models. In Proceedings of 2005 Symposium on Point Based Graphics. ¨sch, M., Wu ¨rmlin, S., Lamboray, E. C., Waschbu Eberhard, F., and Gross, M. 2004. Progressive compression of point-sampled models. In Eurographics/IEEE Symposium on Point-Based Graphics, Eurographics, 95– 102. Wendland, H. 1995. Piecewise polynomial, positive definite and compactly supported radial functions of minimal degree. Adv. Comput. Math. 4, 4, 389–396. Wi, J., and Kobbelt, L. 2004. Optimized sub-sampling of point sets for surface splatting. Computer Graphics Forum 23, 3 (August). Zwicker, M., Pauly, M., Knoll, O., and Gross, M. 2002. Pointshop 3d: An interactive system for pointbased surface editing. ACM Transactions on Graphics 21, 3 (July), 322–329.
Figure 6: A series of models (cylinder, saddle, ear and hand), containing anisotropic features are represented by anisotropic ellipsoids (left column). For illustration purpose, the ellipsoids are scaled by factor 0.25, except for the cylinder model. The magnitude of the implicit function is visualized along a planar cut (middle column). The models are rendered using ray casting (right column). In the lower cylinder rendering, the cut-off threshold is set to 0.5, in order to exclude the endings, where the overlap of the support ellipsoid decreases.