Terrain pyramids
Pyramids are levels of detail generated for a terrain dataset to improve efficiency for some applications. They are used as a form of scale-dependent generalization. Pyramid levels take advantage of the fact that accuracy requirements diminish with scale. They are similar in concept and purpose to raster pyramids, but their implementation is different.
Terrain pyramids are generated through the process of point reduction, also known as point thinning. This reduces the number of measurements needed to represent a surface for a given area. For each successive pyramid level, fewer measurements are used, and the accuracy requirements necessary to display the surface drops accordingly. The original source measurements are still used in coarser pyramids, but there are fewer of them. No resampling, averaging, or derivative data is used for pyramids.
It takes time to produce pyramids, so you need to consider how best to use them to your advantage.
Potential uses of pyramid levels
- Displaying a terrain layer in ArcMap or ArcGlobe
- Rasterization of a terrain
- Extraction of TIN subsets from a terrain dataset
- Using surface analysis tools from the 3D Analyst toolbar
- Using geoprocessing surface analysis tools
Two pyramid types exist: z-tolerance and window size. The z-tolerance pyramid type utilizes vertical tolerance in the definition of the terrain surface resolution. Each pyramid level is a vertical accuracy approximation of the full-resolution data. Using the window size pyramid type, the resolution is defined by equal-area windows at each pyramid level scale range, controlling the horizontal sample density.
When defining a terrain dataset, you must specify how many pyramid levels are needed for the desired pyramid type. For each pyramid level, you provide a reference scale and vertical tolerance or window size. The reference scale is a threshold. A pyramid layer is used to represent a terrain between its reference scale and the reference scale of the next coarsest level. The primary cost associated with creating pyramids is tied more to the smallest vertical tolerance or window size used than to the number of pyramids.
Why use pyramids?
If your intention is only to use terrain measurements at full resolution and at a relatively constant and large display scale, you may not need to generate a multilevel pyramid. For instance, if your use of terrain is limited to raster production for large-scale applications from lidar or sonar data and to store and update source measurements for archival purposes, there may be no reason to incur the processing cost. If, on the other hand, you want to use thinned data to improve performance through a range of scales, multilevel pyramids would be useful.
The Terrain Wizard has a Calculate Pyramid Properties button that will estimate default values. Use it as a starting point, then refine and correct based on your knowledge of the data.
Z-tolerance pyramid type
The z-tolerance pyramid type controls the vertical accuracy of each pyramid level relative to the full-resolution data. The vertical accuracy of a pyramid level is always relative to the accuracy of the full-resolution source data. For example, if the source data has a known vertical accuracy of 0.5 feet and the z-tolerance of the first pyramid is 1 foot, the absolute accuracy of the first pyramid is 1.5 feet.
You must determine how many pyramid levels you require and also the z-tolerance for each. The primary factors that influence these decisions are the scale range of use of the terrain dataset, the z- range, and the variability of height in the terrain. One method you can use to define your pyramid levels follows the contour map model.
Defining z-tolerance pyramid levels
Defining pyramid levels using the contour map model
- Consider a standard set of map scales you would use for constructing contour maps from the terrain.
- Arrange the scales from largest to smallest. Note the contour interval that would be appropriate for each scale. Have your terrain dataset pyramid mimic this collection.
- Define a pyramid level for each map scale, setting the scale threshold for each level to the corresponding map scale. The z-tolerance should be set to half the contour interval that would be used at that scale.
Given the pyramid definition below, the full-resolution data would be used for display scales larger than 1:5,000. The pyramid level based on 0.5 unit z-tolerance would be used between 1:5,000 and 1:12,000, the 1.0 unit z-tolerance level between 1:12,000 and 1:24,000, the 2.5 unit z-tolerance level between 1:24,000 and 1:100,000, and the 5.0 unit z-tolerance level at scales smaller than 1:100,000.
Map scale |
Contour interval (meters) |
---|---|
1:5,000 |
1 |
1:12,000 |
2 |
1:24,000 |
5 |
1:100,000 |
10 |
Scale threshold |
Z-tolerance (meters) |
---|---|
5,000 |
0.5 |
12,000 |
1 |
24,000 |
2.5 |
100,000 |
5 |
Look at the z-tolerances and determine whether they are appropriate for your data. If your study area is relatively flat, it might be appropriate to cut the suggested z-tolerance values in half. The Terrain Wizard has a Calculate Pyramid Properties function that will estimate default values. Use it as a starting point. Refine and correct based on your knowledge of the data.
Z-tolerance data recommendations
If you have very dense data covering a large area (for example, lidar for multiple counties), consider deriving a raster representation for small-scale use. Terrains can be used to produce rasters that can be pyramided themselves. It might be more efficient to use these for smaller-scale applications. Therefore, you might not need terrain pyramids defined at small reference scales. To accomplish this, use scale-dependent drawing in ArcMap, adjusting layer visibility such that the terrain draws only at large scales and the raster only at small.
The z-tolerance pyramid type generally performs best when applied to bare-earth lidar or bathymetry data. If the point data is mostly represented by buildings and vegetation (multireturn lidar), consider using the window size pyramid type with secondary thinning methods applied.
Window size pyramid type
Pyramid level resolution is defined by the window size. The window size pyramid type thins points for each pyramid level by partitioning the data into equal areas (windows) and selecting just one or two points from each area as representatives.
Point selection for each window is based on one of the following criteria:
- The point with the minimum z-value
- The point with the maximum z -value
- Two points to capture both the z minimum and z maximum
- The point closest to the mean z-value
Pyramid level resolution is defined by the window size. This is the length of the side of each square area defining the subdivision. Coarser resolution pyramid levels are defined with large window sizes. A large window size results in relatively few areas from which to select points. Since only one or two points are picked for each area, there will be lots of thinning and generalization. Finer resolution pyramid levels are defined using smaller window sizes. Smaller windows mean more areas, and thus more points, less thinning, and more detail.
Like the z-tolerance-based pyramid, the window size pyramid is cumulative. Points used for a pyramid level are the sum of all the points selected for coarser levels plus an additional set unique to the given level. Cumulative pyramids are storage efficient since a separate and complete copy of data is not needed for each pyramid level.
Point selection method recommendations
The highest resolution pyramid level should use a window size that is equal to or larger than the average point spacing. If you know there are many points that are closer than the average, the z mean would be a good value to use because it could effectively thin some points. Otherwise, use a value that is two times the average point spacing.
The exception is if you're using the z minimum/z maximum point selection method, in which you should use four times the average spacing. The coarsest pyramid level should have a window size that is based on the x- or y-extent of the terrain. Somewhere between 1/500 to 1/1000 the larger of the x- and y-extent is reasonable. The most efficient pyramids are made with window sizes that are a power of two from one another. Determine the smallest window size first and proceed from there.
The selection criteria is used to determine which points are chosen as representatives for the corresponding areas of the different pyramid levels. Each criterion offers a bias that is useful for a certain type of data or application. Note that the bias does not classify or have an impact on the full resolution pyramid level.
Method |
Goals |
Suggested applications |
---|---|---|
Z Minimum |
Bias toward local lows, rivers, valleys |
|
Z Maximum |
Bias toward local highs, ridges, hilltops |
|
Z Minimum/Z Maximum |
Captures extremes; does not thin as much as other options |
|
Z Mean |
Avoids extremes |
|
Secondary thinning
When using the window size pyramid, there is an option to include secondary thinning. This can reduce the number of points for a pyramid level above and beyond the thinning accomplished through the window filtering. This works starting from the coarsest pyramid level window size by examining the data for each window. If the range of z-values for points in the window is within a user-defined threshold, the area is considered flat. One or two points are selected for the area, as is normal for window size processing, but all the remaining points are assigned to the full resolution pyramid level rather than being refiltered by the remaining levels. Since the area is flat, there's no need to select additional points with smaller window sizes.
Secondary thinning method recommendations
When enabled, secondary thinning reduces the number of points used over flat areas. An area is considered flat if the heights of points within the area are within a user-specified secondary thinning threshold. Its effect is more evident at higher resolution pyramid levels, since smaller areas are more likely to be flat than larger areas.
The secondary thinning threshold should be set at least as large as the vertical accuracy of the data to get over its noise floor. As you specify larger values, you'll thin more points and will realize some performance gain, but your ability to resolve/distinguish surface features will decrease.
- Mild Thinning—Works best to preserve linear discontinuities (for example, building sides and forest boundaries). It is recommended for lidar that includes both ground and nonground points. It will thin the fewest points.
- Moderate Thinning—Provides a good trade-off between performance and accuracy. It does not preserve as much detail as mild thinning but comes nearly as close while eliminating more points overall. Moderate thinning is a good thinning method for all types of data.
- Strong Thinning—Removes the most points but is less likely to preserve sharply delineated features. Its use should be limited to surfaces where slope tends to change gradually. For example, strong thinning would be efficient for bare-earth lidar and bathymetry.
Window size pyramid level creation example
The Terrain Wizard has a Calculate Pyramid Properties function that will estimate default values. Use it as a starting point, then refine and correct based on your knowledge of the data. The Calculate Pyramid Properties function works in the same fashion as described below.
Base the pyramid levels on the following information:
- The average point spacing of the point data is 1 meter.
- There is not a great variance in the point spacing, so most points are around 1 meter apart.
- The data extent is 20 kilometers east to west and 10 kilometers north to south.
- Start with a window size of 2 (meters) and increase by powers of two: 2, 4, 8, 16, 32. Stop at 32 since it falls between 1/500 and 1/1000 the extent of 20 kilometers.
- For each window size, use a scale threshold that is twice the size of the previous scale threshold. You should end up with a pyramid definition as indicated below.
Window size |
Scale |
---|---|
2 |
3,000 |
4 |
6,000 |
8 |
12,000 |
16 |
24,000 |
32 |
48,000 |
Comparing window size to z-tolerance
Window size |
Z-tolerance | |
---|---|---|
Strengths |
Faster build time. |
The approximate vertical accuracy of thinned levels of detail is known for analysis. |
Thinning effectiveness is independent of surface variability. |
Thinning adapts to surface variability; retains samples only where needed. |
|
Known horizontal sample resolution. |
||
Pyramid levels have predictable (max) sample counts. |
||
Weaknesses |
May oversample flat or low-sloped ground. |
Longer build time. |
May undersample vegetation or buildings. |
Does not thin data containing buildings and vegetation sufficiently. |
|
Vertical accuracy of the thinned data is unknown. |
||
Data Recommendations |
All data types. |
Bare-earth topography, bathymetry. |