point cloud rendering - jacobs university bremen · point cloud rendering • the size of the...
TRANSCRIPT
320322: Graphics and Visualization 207
Visualization and Computer Graphics LabJacobs University
Point cloud rendering• The size of the spheres must be determined locally.• It can be estimated by computing distances to
neighboring points.– natural neighbors– k-nearest neighbors with fixed k– k-nearest neighbors with variable k– k-nearest neighbors with angle criterion
320322: Graphics and Visualization 208
Visualization and Computer Graphics LabJacobs University
Splatting
• Rather than drawing isotropic extensions, one wouldlike to draw extensions only in directions tangential to the surface.
• Spheres are replaced by spherical disks.• The disks are called splats.• This approach is called splatting.
320322: Graphics and Visualization 209
Visualization and Computer Graphics LabJacobs University
Splatting
320322: Graphics and Visualization 210
Visualization and Computer Graphics LabJacobs University
Splat generation
• Splats can be computed as the intersection betweenthe sphere and the tangential plane in the respectivepoint.
• Question: How can we obtain the tangential plane?
320322: Graphics and Visualization 211
Visualization and Computer Graphics LabJacobs University
Estimating tangential plane
Fit a plane through and its neighborssuch that the distances from the points to the planeis minimal in the least squares sense.
320322: Graphics and Visualization 212
Visualization and Computer Graphics LabJacobs University
Estimating tangential plane
Theorem:The normal of the fitting plane P is the third principaldirection/component that is computed by theeigenvector to the smallest eigenvalue of matrix
with .
320322: Graphics and Visualization 213
Visualization and Computer Graphics LabJacobs University
Estimating tangential planeProof: Q is symmetric and positive semi-definit
-> Q is diagonizable->
with eigenvalues-> eigenvectors and span P-> for any rotation
-> Every rotation S increases the squared distance to P.
320322: Graphics and Visualization 214
Visualization and Computer Graphics LabJacobs University
Splatting
320322: Graphics and Visualization 215
Visualization and Computer Graphics LabJacobs University
Anisotropic sampling
• In case of anisotropic sampling, circular splats can bereplaced by elliptical splats.
320322: Graphics and Visualization 216
Visualization and Computer Graphics LabJacobs University
Splat transitions
• To produce nicer transitions between splats, thesplats are drawn with increasing transparencytowards their border.
• Transparency transition can be determined usingGaussian filters.
320322: Graphics and Visualization 217
Visualization and Computer Graphics LabJacobs University
Splat-based rendering
320322: Graphics and Visualization 218
Visualization and Computer Graphics LabJacobs University
Splat-based rendering
320322: Graphics and Visualization 219
Visualization and Computer Graphics LabJacobs University
2.4 Implicit Surfaces
320322: Graphics and Visualization 220
Visualization and Computer Graphics LabJacobs University
Implicit surfaces
Definition:• Implicit surfaces are surfaces that are given as a
solution to a mathematical equation.
Example:• Circle
in parametric form can be described as the kernelF(x,y) = 0 of the implicit function
320322: Graphics and Visualization 221
Visualization and Computer Graphics LabJacobs University
Implicit surfaces
• Simple implicit functions that are easy and fast to evaluate can be used to replace piecewise linear object representations by meshes.
• The most simple non-planar surfaces are quadrics.
320322: Graphics and Visualization 222
Visualization and Computer Graphics LabJacobs University
Ellipsoid
with being the radii.
320322: Graphics and Visualization 223
Visualization and Computer Graphics LabJacobs University
Ellipsoid
Ellipsoid with z=constant: cylinder
320322: Graphics and Visualization 224
Visualization and Computer Graphics LabJacobs University
Elliptical Paraboloid
320322: Graphics and Visualization 225
Visualization and Computer Graphics LabJacobs University
Hyperbolic Paraboloid
320322: Graphics and Visualization 226
Visualization and Computer Graphics LabJacobs University
Hyperboloid
α > 0: one sheet α = 0: conesα < 0: two sheets
320322: Graphics and Visualization 227
Visualization and Computer Graphics LabJacobs University
Rendering
Implicit surfaces can be rendered by:• sampling the implicit equation at discrete positions,
i.e., converting it into an explicit mesh representation,• ray tracing (see later).
320322: Graphics and Visualization 228
Visualization and Computer Graphics LabJacobs University
Sweep geometry
• Sweep geometry is a (semi-)implicit method, where a 2D structure is implicitly extruded to a 3D objectusing rotation.
• Construction:– Given a 2D contour in form of a closed curve or a curve with
endpoints on the rotation axis.– Sweep the contour around the rotation axis by 360° to form
a rotationally symmetric 3D object.
320322: Graphics and Visualization 229
Visualization and Computer Graphics LabJacobs University
Sweep geometry
• Curve with endpoints on the rotation axis:
• Result: Boundary representation of genus 0 object.
explicit curve representation:sequence of line segments
320322: Graphics and Visualization 230
Visualization and Computer Graphics LabJacobs University
Sweep geometry
• Closed curve:
• Result: Boundary representation of genus 1 object.
implicit curve representation:quadric
320322: Graphics and Visualization 231
Visualization and Computer Graphics LabJacobs University
Constructive solid geometry
Idea:• Use a set of objects with simple representation and a
set of efficient operations to combine the simple objects to more complex ones.
• Only store pointers to simple objects and operations.• Hence, this can also be considered as a (semi-)implicit
representation.
320322: Graphics and Visualization 232
Visualization and Computer Graphics LabJacobs University
Constructive solid geometryBasis objects represented by their boundaries:• Polyhedra: cuboids, tetrahedra, …• Implicitly defined objects: quadrics, sweep geometry, …
Operations operate on solids (volumetric objects):• Boolean operations: intersection, union, difference,
xor,…
Combining constructions:• Many basis objects can be successively combined using
Boolean operations.• The combinations are stored in a binary tree.
320322: Graphics and Visualization 233
Visualization and Computer Graphics LabJacobs University
Constructive solid geometry
320322: Graphics and Visualization 234
Visualization and Computer Graphics LabJacobs University
Constructive solid geometry
Transformations:• In addition to the operations, we need to store
transformations for the objects that are appliedbefore the objects get combined.
320322: Graphics and Visualization 235
Visualization and Computer Graphics LabJacobs University
Constructive solid geometry (CSG)
320322: Graphics and Visualization 236
Visualization and Computer Graphics LabJacobs University
CSG
320322: Graphics and Visualization 237
Visualization and Computer Graphics LabJacobs University
CSG