Pyramids are used to improve display performance. They are a downsampled version of the original raster dataset and can contain many downsampled layers. Each successive layer of the pyramid is downsampled at a scale of 2:1. Below is an example of two levels of pyramids created for a raster dataset:
Pyramids can speed up the display of raster data by retrieving only the data at a specified resolution that is required for the display. With pyramids, a lower-resolution copy of the data displays quickly when drawing the entire dataset. As you zoom in, levels with finer resolutions are drawn and performance is maintained because you're drawing successively smaller areas. The database server automatically chooses the most appropriate pyramid level based on the user's display scale. Without pyramids, the entire dataset must be read from disk and resampled to a smaller size. This is called display resampling and occurs when the display is refreshed.
Pyramids only need to be built once per raster dataset. After that, they are accessed each time the raster dataset is viewed. The larger the raster dataset, the longer it takes to create the set of pyramids, but display will be faster and you will save time in the long run.
Although you are not able to build pyramids on raster catalogs, it is possible to build pyramids for each raster dataset within a raster catalog. Mosaic datasets are similar to raster catalogs. You can build pyramids for each raster dataset within a mosaic dataset, and you can build overviews for a mosaic dataset using tools in the Mosaic Dataset toolset.
Pyramid files
Pyramids are stored in a single file that by default is in the same location as the source raster. There are two types of pyramid files: an overview (.ovr) and a reduced-resolution dataset (.rrd). ArcGIS can read both types of pyramid files, but it will only write .ovr files—with a few exceptions as described below.
An .rrd file is created for ERDAS IMAGINE files.
An .ovr file is created and used by ArcGIS starting at version 10. One advancement of the .ovr file that you can choose the compression method and compression quality. Keep in mind, JPEG type compressions can only be used with file types that can store data according to JPEG specifications. If JPEG pyramids are selected, the compression quality of the JPEG pyramids can also be specified.
The .ovr file is approximately 8 percent of the size of the original uncompressed file. If the pyramids are compressed, the .ovr file may be even smaller (such as 2 percent). An .ovr file size is difficult to estimate because the compression will depend on the homogeneity of the data.
Below is an example of the increase in the storage size of a raster dataset due to pyramid levels based on the various compression types. Level 0 is the original raster dataset.
Level | No compression | LZ77 compression | JPEG compression |
---|---|---|---|
0 | 1.0 GB | 1.0 GB | 1.0 GB |
1 | 1.0655 GB | 1.0483 GB | 1.0133 GB |
2 | 1.0824 GB | 1.0606 GB | 1.0169 GB |
3 | 1.0866 GB | 1.0637 GB | 1.0179 GB |
4 | 1.0877 GB | 1.0645 GB | 1.0182 GB |
5 | 1.0880 GB | 1.0647 GB | 1.0183 GB |
6 | 1.0881 GB | 1.0647 GB | 1.0183 GB |
Pyramid resampling methods
There are three pyramid resampling methods available: nearest neighbor, bilinear, and cubic convolution. Nearest neighbor is the default and typically works for any type of raster dataset, though it is recommended that you use nearest neighbor for discrete (nominal) data or raster datasets with color maps, such as land-use data, scanned maps, and pseudocolor images. Bilinear interpolation or cubic convolution should be used for continuous data such as satellite imagery or aerial photography. Although bilinear interpolation is performed more quickly, the result is not as sharp as the result of cubic convolution. Bilinear interpolation is recommended for 1-bit TIFF or IMG files.
Mosaicking and the raster dataset origin
When mosaicking raster data in a geodatabase, pyramids can be built on a raster dataset as raster data is being mosaicked into the raster dataset, or they can be built when the loading is complete. ArcGIS allows partial pyramid construction, which rebuilds only the part of the pyramid overlapped by the source data during a mosaic operation. This helps when updating a mosaicked raster dataset, because if a new raster dataset is added, the entire raster dataset does not need to rebuild pyramids. If you update the data at the raster dataset's origin (pyramid reference point), the pyramid needs to be rebuilt for the entire raster dataset.
The raster dataset's origin is the raster dataset's upper leftmost coordinate. The construction of the pyramid begins at this coordinate and proceeds to the right and down. Mosaicking data to the left or above the raster dataset's origin requires the origin to shift to reflect the new upper leftmost point. Shifting the existing raster dataset's origin requires pyramids to be rebuilt. Rebuilding pyramids can be a costly operation in terms of time, especially if the raster dataset has grown because a number of raster dataset source files (or other raster datasets) have already been mosaicked to it.
Since rebuilding the pyramid is such a costly operation in terms of time, you should identify the raster dataset's upper left raster coordinate through analysis of your source data and enter it when you create the raster dataset. You set the x- and y-coordinates for the pyramid reference point when you create your raster dataset (see Create Raster Dataset), rather than using the upper left coordinate of the first raster dataset that is inserted. Therefore, it is possible to avoid shifting the raster dataset's origin by setting a pyramid reference point when you create the raster dataset.