82 4. Static <strong>Laser</strong> Scanning• There is no object point that can be acquired exactly <strong>and</strong> identicallya second time from a differentscanner position.• Blunders <strong>and</strong> noise <strong>of</strong> the point clouds have to be completely eliminated beforeh<strong>and</strong> since they di¬rectly influence the registration algorithm.• The registration only refers to a local coordinate frame defined by one scanner position.The point cloud registration tries to find corresponding points within the point clouds despite each singlepoint not being acquired a second time. First,the scanning principle does not support the alignment <strong>of</strong>the laser beam exactly in the same direction a second time, due to the rough angle increment. Second, thechange <strong>of</strong> the viewpoint implies a change in the alignment<strong>of</strong> the laser beam, which results in a differentposition <strong>of</strong> the footprint <strong>of</strong> the laser beam <strong>and</strong> a different angle <strong>of</strong> incidence. The quality <strong>of</strong> the point cloud isinfluenced by several parameters, e.g.<strong>and</strong> blunders.range, surface properties <strong>and</strong> angle <strong>of</strong> incidence, which cause noiseSince the point cloud registration directly uses the acquired data, the results are directlydependent on the quality <strong>of</strong> the point cloud. It is recommended to pre-process data with appropriate noisereduction <strong>and</strong> filter techniques. Since the point cloud registration algorithm works only with the acquiredpoint cloud, the reference frame is defined by one local reference frame. If the point cloud has to be includedin a global reference frame, additional control points with global coordinates are required.In recent years, several algorithms have been developed <strong>and</strong> are currently the topic <strong>of</strong> research projects.The most popular algorithm is the iterative-closest-points algorithm (ICP) developed by [Besl <strong>and</strong> McKay,1992], [Chen <strong>and</strong> Medioni, 1991], <strong>and</strong>fZhang, 1994]. This algorithm starts with two pointclouds <strong>and</strong> an es¬timate <strong>of</strong> aligning the rigid body transform. It then iteratively refines the transformation by alternating thesteps <strong>of</strong> choosing corresponding points across the point clouds, <strong>and</strong> finding the best rotation <strong>and</strong> translationthat minimizes an error metric based on the distance between corresponding points. The ICP algorithm isvaried <strong>and</strong> improved many times [Bergevin et al., 1996], [Masuda <strong>and</strong> Yokoya, 1996]. A detailed overviewat ICP algorithms can be found in [Guhring, 2002] <strong>and</strong> [Grun <strong>and</strong> Akca, 2005], who also introduced a newalgorithm, the least squares 3D surface matching.4.3 Modeling <strong>and</strong> VisualizationModeling is the step followed by registration. The objects described by a point cloud have to be processedin such away that geometrical information can be derived. The pointcloud is well-suited for onlinevisualization.All conceivable information are hidden within the point cloud. Although, point cloudscan be the final products <strong>of</strong> laser scanning, information derived from the point cloud are <strong>of</strong>ten what isrequired. Such information are frequently <strong>of</strong> geometrical nature, but classifications analogouslaser scanning <strong>and</strong> remote sensing are also conceivable to distinguish between different objectssurface, e.g. wet areas, roads, vegetation.to airborneon theThe processing <strong>of</strong> the point cloud depends on the project <strong>and</strong> the application. Based on these aspects themost suitable s<strong>of</strong>tware has to be selected.Commercial s<strong>of</strong>tware packages can be distinguished betweens<strong>of</strong>tware directly using the large number <strong>of</strong> points <strong>of</strong> the acquired point cloud <strong>and</strong> s<strong>of</strong>tware operating onlywith a selected number <strong>of</strong> points.Working group V/3 from the International Society <strong>of</strong> Photogrammetry <strong>and</strong> Remote Sensing (ISPRS) haspublished the most popular s<strong>of</strong>tware based on a questionnairein 2005. Table 4.1 summarizes the mostpopular s<strong>of</strong>tware. The goal <strong>of</strong> using this s<strong>of</strong>tware is <strong>of</strong> further interest, e.g. for registration, modeling,editing, visualization, data inspection,working group V/3.format conversion. More information can be found from the ISPRS
m\m)rdr4.3 Modeling <strong>and</strong> Visualization 83Table 4.1: S<strong>of</strong>tware for processing laser scanning data. The results are based on a questionnaire carried out by theISPRS working group V/3.S<strong>of</strong>tware Manufacturer Use [%]Cyclone HDS Leica Geosystems 28Geomagic Raindrop 17RiScanPRO Riegl 11CloudWorx HDS Leica Geosystems 9Polyworks InnovMetric 8rest various 274.3.1 Geometrical PrimitivesThe modeling <strong>of</strong> geometrical primitives is extensively automated. The parameters for geometrical objectsare computed by a least square adjustment using Gauss-Markov or Gauss-Helmert. The following objectsare considered as geometrical primitives <strong>and</strong> can be mostly computed semi-automatically or fully automat¬ically:• patch or plane: pin—= 0• sphere: \pt——= 0• cylinder : a(pl——= 0The vector n describes the unit normal, p defines each point <strong>of</strong> the point cloud, m is the center point <strong>of</strong> thesphere or the cylinder, <strong>and</strong> a characterizes the orientation <strong>of</strong> the principal axis <strong>of</strong> the cylinder.The para¬meters r <strong>and</strong> d define the radius <strong>and</strong> the diameter, respectively. A more detailed description for calculatinggeometrical primitives can be found in [Hovenbitzer, 2003].4.3.2 TriangulationTriangulation or mesh generation can be described as the process <strong>of</strong> finding geometrical objects in a givendata set, i.e.triangles in 2D <strong>and</strong> tetrahedra in 3D. Typically, this process is based on Delauny triangulation ormarching cubes [Hoppe et al., 1992] <strong>and</strong> [Carr et al., 2001]. Some possible constraints for building trianglesor tetrahedra are defined by [Hoscheck <strong>and</strong> Lasser, 1992]• criterion <strong>of</strong> the shortest diagonal,• criterions <strong>of</strong> the minimum/maximum angle <strong>and</strong> maximum/minimum angle, respectively, <strong>and</strong>• criterion <strong>of</strong> the circumscribed circle.The last criterion leads to the Delauny triangulation, which postulatesthat the circumscribed circle <strong>of</strong> eachtriangle must not contain a fourth point <strong>of</strong> the data set [deBerg et al., 2002]. The Delauny triangulationcomputes uniform triangles <strong>and</strong> avoids both long <strong>and</strong> short triangles as well as overlapping triangles.More information can be found in a number <strong>of</strong> publications, e.g. [deBerg et al., 2002], [Carr et al., 2001][Hoppe et al., 1992], [Hoscheck <strong>and</strong> Lasser, 1992], [Rietdorf, 2005].