point cloud rendering - jacobs university bremen · point cloud rendering • the size of the...

31
320322: Graphics and Visualization 207 Visualization and Computer Graphics Lab Jacobs 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

Upload: others

Post on 30-May-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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

Page 2: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 3: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 209

Visualization and Computer Graphics LabJacobs University

Splatting

Page 4: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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?

Page 5: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 6: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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 .

Page 7: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 8: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 214

Visualization and Computer Graphics LabJacobs University

Splatting

Page 9: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 10: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 11: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 217

Visualization and Computer Graphics LabJacobs University

Splat-based rendering

Page 12: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 218

Visualization and Computer Graphics LabJacobs University

Splat-based rendering

Page 13: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 219

Visualization and Computer Graphics LabJacobs University

2.4 Implicit Surfaces

Page 14: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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

Page 15: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 16: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 222

Visualization and Computer Graphics LabJacobs University

Ellipsoid

with being the radii.

Page 17: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 223

Visualization and Computer Graphics LabJacobs University

Ellipsoid

Ellipsoid with z=constant: cylinder

Page 18: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 224

Visualization and Computer Graphics LabJacobs University

Elliptical Paraboloid

Page 19: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 225

Visualization and Computer Graphics LabJacobs University

Hyperbolic Paraboloid

Page 20: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 226

Visualization and Computer Graphics LabJacobs University

Hyperboloid

α > 0: one sheet α = 0: conesα < 0: two sheets

Page 21: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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).

Page 22: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 23: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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

Page 24: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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

Page 25: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 26: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 27: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 233

Visualization and Computer Graphics LabJacobs University

Constructive solid geometry

Page 28: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

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.

Page 29: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 235

Visualization and Computer Graphics LabJacobs University

Constructive solid geometry (CSG)

Page 30: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 236

Visualization and Computer Graphics LabJacobs University

CSG

Page 31: Point cloud rendering - Jacobs University Bremen · Point cloud rendering • The size of the spheres must be determined locally. • It can be estimated by computing distances to

320322: Graphics and Visualization 237

Visualization and Computer Graphics LabJacobs University

CSG