LP360 (Advanced) for both ArcGIS and Windows (e.g. "Standalone") includes a Point Cloud Task (PCT) for vectorizing clusters of points of a particular class. A squaring option is included for constraining the vectors to straight lines with 90° vertex angles (for example, when tracing an object with known straight edges and 90° such as a building roof). The link below provides a detailed overview of using this tool. LP360 Tracing and Squaring User Guide
Point Group Tracing and Squaring in LP360
Lewis Graham
27 Dec 2012
Introduction
This document contains a heuristic discussion of the adjustment of parameters for the LP360 Point Cloud Task (PCT) - Point Group Tracing and Squaring.
This PCT is used to vectorize clusters of classified points. A squaring option is included for constraining the vectors to straight lines with 90° vertex angles (for example, when tracing an object with known straight edges and 90° such as a building roof). An example of tracing High Vegetation is depicted in Figure 1.
Figure 1: Traced High Vegetation
Prior to running this PCT, the points that you wish to trace must be classified into a distinct class such as "High Vegetation" or "Building." Note that at this time, the PCT cannot accept more than one class (for example, you cannot trace low, medium and high vegetation in a single operation). We intend to remove this restriction sometime in 2013.
Options Setting Summary
The Trace dialog is depicted in Figure 2.
Figure 2: The Trace Boundary settings dialog
A quick summary of option setting is provided as Table 1.
Table 1: Quick Setting Guide
Option |
Setting |
Notes |
Boundary Trace Class |
Class of points you wish to trace (e.g. High Vegetation) |
Currently only a single class can be traced. Multi-classes will be implemented sometime in 2013. |
Units |
Same as Map Units |
Advanced users - see detailed description. |
Grow Window |
Use the "eye dropper" tool to digitize a representative polygon over a data region in the map view. |
This controls clustering. Larger values make courser clusters. If set to less than about twice the point spacing, no clusters will be created. If set to more than about 4X the nominal point spacing, you will note a significant decrease in performance. |
Trace Window |
Start with 2X the Grow Window size (automatically set when you use the dropper tool). |
Controls the "jaggedness" of the polygon outline. The smaller the value, the more detailed the edge. Values below 2X "Grow Window" can cause clusters to not be fully enclosed. |
Minimum Area |
Set this to the minimum area that you want traced (e.g. if you set this to 50 then no clusters less than 50 sq ft or sq m, depending on the units settings, will be traced) |
|
Reclassify Min Points |
Only enable if you want to clean up the building classification. |
|
Should Undo Minimum Area |
Only enable if you want to clean up the building classification. |
Traces smaller than the Minimum Area will be removed. |
Min Class |
Do not use |
Points in clusters smaller than the Minimum Area will be reclassified to this class if the Reclassify Min Points is enabled. |
Classify Interior Points |
Check if you want all points within a trace outline to be reclassified to the Boundary Trace Class. |
This setting currently does not allow filtering. Thus, all interior points will be reclassified. You must set LAS files to Read/Write if this option is used. |
Option |
Setting |
Notes |
Perform Squaring |
Select this option if you want all polygon corners to be 90° (as in buildings) |
|
Squaring Angle (deg) |
Adjusts the detail of a squared outline. The smaller the value, the more detailed the outline. |
45° is a good starting value |
Dissolve Overlapping Polygons |
Select this option if you want non-square outlines |
This option does two things - creates detailed outlines and ensures that these detailed outlines do not overlap. |
Maximum Grow Window Area |
Set to 5000 and do not adjust. |
|
NOTE: Make sure to press the Apply button or your changes will not take affect!
Detailed Discussion of Options:
Boundary Trace Class
This is the class of points that will be traced by the function. Currently you can trace only a single class (we intend to make this a multi-select option some time in 2013. It requires not only a dialog change but quite a bit of changes to the underlying algorithms).
Note that the class that you intend to trace must have "clustering" properties. For example, attempting to trace the Ground class might simply yield a polygon around the entire data set.
Units
This should normally be set to the same units as the data in the map view. As with all PCT's, this parameter is present to allow you to create unit independent parameters. For example, if you carefully craft parameters in a metric map (units of meters), then setting this value to "meters" will cause the parameters to be automatically translated to the proper values if you apply the filter to a data set with units of feet.
Grow Window
The parameter controls point clustering. A point (in all discussions we assume that when we say a point we mean a point that is of the Boundary Trace Class) is selected. If at least one other point is located within a window, centered on this point and of size 2*(Grow Window) by 2*(Grow Window), the window is re-centered on the new point(s) and the process is repeated. This algorithm continues until either no new point is located, or the Maximum Grow Area parameter is exceeded.
It should be obvious that if the Grow Window parameter is less than half the average distance between points in the Boundary Trace Class, no points will be collected into a cluster. On the other hand, if the Grow Window parameter is a few times the point spacing in the Boundary Trace Class or larger, clusters will begin to be grouped together. Thus set this parameter to a minimum of about the point spacing of the Boundary Trace Class.
If you need a starting point, use the dropper tool (located beside the Grow Window input box) to trace a polygon over the Map View in a region containing points of the Boundary Trace Class. This will provide initial values for both the Grow Window and Trace Window parameters.
Note that using a value for the Grow Window that is significantly larger than the Boundary Trace Class point spacing will result in very slow running of the algorithm.
Trace Window
This parameter sets the minimum distance between vertices of the polygon created around the clusters (recall that clusters are determined by the Grow Window parameter). Thus it is a smoothness parameter for the traced outlines. Note that if it is made smaller than the distance between points, no outlines will be drawn. A good starting value is twice the Grow Window size (this will be the default value if you use the eye dropper tool). If you set this parameter to less than twice the Grow Window size, you may notice that clusters become truncated.
Minimum Area
This parameter determines the minimum size of cluster that will be traced, in square units of the Units setting (e.g. if you set this parameter to 50 and the Units are set to feet, clusters smaller than 502 will not be traced).
Reclassify Min Points, Should Undo Minimum Area, Min Class
This, in theory, is supposed to classify points that do not meet a cluster criterion into a user selectable class.
Classify Interior Points
Setting this option will cause all points within a traced boundary to be reclassified to the Boundary Trace Class. This can be useful when performing an operation such as tracing building roofs. Note, however, that it currently does not allow a vertical distance parameter and hence will classify points that are vertically 'far' from the Boundary Trace Class. An example of this problem is vegetation overhanging a set of roof (building) points. Similarly, classifying the interior of vegetation polygons will cause all ground points within the polygons to be reclassified to the Boundary Trace Class so be sure of the residual effects of this option. I recommend that you always use a copy of your LAS data if you are going to enable this option.
Perform Squaring
This option will cause the PCT to generate a second set of polygons that represent a squaring of the trace polygons. The Squaring Angle (Deg) setting determines the detail of these squared polygons. The algorithm functions by fitting lines with corners restricted to 90° to the trace polygon. If, at a particular point on the original trace polygon, the angle between the polygon and the squared polygon is more than
Squaring Angle, a new corner is created in the squared polygon. Thus the larger the Squaring Angle, the fewer corners and less detail in the fitted, squared polygons. NOTE: There is currently a defect in our algorithm for rotating the squared polygon relative to the detailed polygon when the Squaring Angle is large (say greater that 50°. This can result in the squared footprints being skewed relative to the detail model. This defect is on our list for correction.
Dissolve Overlapping Polygons
This is effectively the detailed (as opposed to Squared) polygon option since it is a radio button control. It generates detailed polygons.
Maximum Grow Window Area
This parameter is in affect only when creating detailed polygons (by the Dissolve Overlapping Polygons option). It limits the maximum cluster size when grouping points prior to creating the polygons. In practice, it is only useful in very specialized circumstances. Making this value small can cause excessive run times with no noticeable change in the output. We intend, in a future release, to remove this parameter. Always set this parameter to 5,000.
Setting the output file
When you run this PCT outside the Preview Window, you will be prompted for an output shape file. This file will contain the vector results of the operation. If you choose Perform Squaring, two vectors files will be output. The detailed outline will be contained in the file whose name you specify. The squared outlines will be contained in a file with the same base name but post-fixed with a "_sqr" in the name. Note that if you run the command multiple times, you can choose the same file. You will be asked if you wish to append to the existing file. If you choose Yes, the results will be added to the current results. If you choose No, the file will be rewritten and contain only the latest results. If you have already inserted the file into your Table of Contents, the display will be automatically updated. This is a nice feature for rapidly examining parameter changes without being restricted to the preview window.
Troubleshooting
Nothing is traced
- Grow Window is too small (use the eye-dropper tool to get a good initial approximation).
- There are no points of the type selected in the Boundary Trace Class (test this by setting a display filter to the same parameters and observe the Map View).
- The Trace Window is less than 2X the Grow Window (always start your parameter adjustment process with the Trace Window at least 2X the Grow Window. If you use the eye dropper tool, this parameter will be automatically set for you.
- The Minimum Area parameter is set larger than the largest cluster in your data set.
Process runs extremely slowly
- Grow Window is too large. As soon as the Grow Window exceeds about 4X the nominal point spacing of the Boundary Trace Class, you will see a significant decrease in performance without much change in clustering. Keep this parameter in the range of 2 to 4 times the nominal point spacing.
- Reset Maximum Grow Window Area to 5,000 and do not adjust.
- It's a complex algorithm. Try a smaller test area.
Buildings have too many facets
- Increase the Squaring Angle parameter (45° is a good starting point)
Building footprints are rotated
- Decrease the Squaring Angle parameter
- We have a known defect with properly orienting simple (e.g. 4 sided) outlines to the true orientation.
Summary
The Point Group Tracing and Squaring PCT provides a very powerful means of creating vectors from points. Using the suggested default settings will typically provide an excellent starting point for the task. Experiment with settings using the preview window to avoid the need to repeatedly import the vector result set into your project.
Comments
0 comments
Please sign in to leave a comment.