Part IV, Chapter 15
Surface Reconstruction and Meshing
You have come a long way from the raw returns of chapter 4. You can clean a point cloud (chapter 6). You can give it oriented normals (chapter 7) and bring several scans into one frame (chapter 8). You can separate the ground from what stands on it (chapter 9), and segment and label what is left (chapters 11 and 12). Every one of those products is still a set of points. Now ask any of them for a volume, for a file a printer will accept, or for a model a solver will run on. None provides those. All three need a continuous surface, and you hold a sample of one.
A point cloud is a finite sample of a continuous surface, and between any two measured points that surface is unmeasured. How wide is the gap? On the 200 000 points we reconstruct in figure 15.8 it is 0.74 model units on average, and across each of those 0.74 units the instrument recorded nothing whatever. Everything downstream needs exactly that unmeasured strip. A volume computed on an open mesh can be off by tens of cubic metres. A 3D print fails where the algorithm left a hole. A finite-element analysis returns invalid results on a model that is not watertight. So reconstruction estimates what lies in the strip under an explicit model of the surface, and between the samples your result rests on that model rather than on the measurement. You might think a method that passes through every measured point avoids this. It doesn't. The flat triangle spanned between three measurements is itself a model of the unmeasured surface inside it.
Read the division definition 15.1 draws once more. It matters more for your deliverable than any parameter you set afterwards. Figure 15.10 runs one method of each kind on the same 200 000 points. Ball pivoting interpolates, so its mesh lies 0.30 model units from the input on average and carries 72 748 boundary edges, one on the rim of every gap its ball could not cross. Screened Poisson approximates, so its surface is closed and the thinnest bars of the skull are smoothed away. Neither outcome is a defect. Which of the two you want is settled by the acceptance criteria your deliverable was specified on rather than by the renders.
Where does this work fit? Late, and it draws on almost everything before it. Reconstruction consumes the registered point cloud of chapter 8, cleaned by the filters of chapter 6. Its most capable methods need the oriented normals of chapter 7 to specify to the solver which side of the surface is inside. Terrain meshes need the ground classification of chapter 9 too, since a triangulation of unclassified returns models the canopy and not the soil. Downstream your mesh serves the workflows of chapter 18, and its signed distance fields return in chapter 20 as neural surfaces. The parametric models of chapter 16 are not downstream at all. They are fitted to the classified and segmented points, so the two routes branch from one input. The methods here separate by scale of support and by the origin of the prior, and only the learned reconstructors of section 15.8 fit theirs to training data.
Continue reading Surface Reconstruction and Meshing
€39 opens all 20 chapters in this reader and the 840-page PDF.