Mosaic dataset overviews
At a basic level, mosaic dataset overviews are like raster dataset pyramids. They are lower-resolution images created to increase display speed and reduce CPU usage since fewer rasters are examined to display the mosaicked image. However, they differ greatly, because you can control many of the parameters used to create them. You can create them to cover only a specific area or only at specific resolutions. They are created to allow you to view all the rasters contained in the entire mosaic dataset, not just for each raster. Overviews generally begin where raster pyramids stop, but you can specify a base pixel size at which your overviews will be generated if you prefer not to use all the raster's pyramids.
With overviews, a lower-resolution copy of the data appears quickly while viewing entire mosaic datasets. When you zoom in, levels of finer resolution are drawn, and performance is maintained because the mosaicked image is created with successively smaller areas. This is very useful when serving the mosaic dataset as an image service or over a network. The most appropriate overview is chosen based on the display scale. Without overviews, the entire dataset would have to be processed on the fly.
There is a property on a mosaic dataset to limit the number of rasters that will be used to generate the mosaicked image. You can modify this property; however, if you are hitting this limit, it is recommended that you build overviews. This limit is designed to protect the computer from performing too much pixel processing and to maintain a reasonable display speed.
When overviews are generated, they will be processed using the functions applied to the source rasters. However, they are not processed with any functions applied at the mosaic dataset level. Therefore, if you modify your mosaic dataset-level functions, you will not have to regenerate the overviews.
Creating overviews
There are two tools for generating overviews. The Define Overviews tool lets you customize the overviews that will be generated. The Build Overviews tool defines missing overviews, updates, and generates overviews.
You can build overviews, using the defaults, when you add your raster data using the Add Rasters To Mosaic Dataset tool or the Build Overviews tool. Which tool you use depends on your workflow. If you're creating a simple mosaic dataset—for example, one that contains all the orthophotos for your city—and you're not making any modifications to the footprints, you can check the option on the tool dialog box to build overviews when adding the data. This applies all the options available on the Build Overviews tool to build complete overviews. If you haven't built pyramids and statistics for your raster datasets, you may want to add your orthophotos to the mosaic dataset, use the Build Pyramids And Statistics tool, then use the Build Overviews tool.
Many raster datasets have internal pyramids; you can also build pyramids. Pyramids on the raster datasets will reduce the number of overviews required by the mosaic dataset.
Generally, overviews will perform faster than displaying the pyramids for each raster within the mosaic dataset. You may consider building overviews over raster pyramids when using
- Preprocessed tiled imagery, such as orthophoto quads
- Butt-joined (nonoverlapping) imagery, which will not be affected by changing mosaic methods
- Imagery that will be processed on-the-fly, but the parameters and mosaicking method will not be changed
When building more complex mosaic datasets, especially where you will be taking advantage of the mosaic methods and on-the-fly processing, then it can be advantageous to build pyramids on the source rasters and to build overviews only where they are needed, such as when
- The mosaic methods will be used due to overlapping imagery
- On-the-fly processing will occur on the source rasters at all scales
- Images are not static preprocessed rasters
Additionally, if you plan to view individual rasters from within the mosaic dataset using Lock Raster (for example), the rendering may be faster at different scales for raster datasets with their own pyramids (and statistics). Previewing the raster in the Raster Viewer window (accessed from the Raster column in the attribute table) will also be faster.
The Build Overviews tool has several useful options that apply to workflows where you are modifying or updating your mosaic datasets. There is an option to regenerate stale overview images. Stale implies that the source rasters used to create the overviews have been modified or are missing. Use this option if you have removed rasters from your mosaic dataset or modified the footprints after you generated overviews. The option to define missing overview tiles is useful when you've made many modifications to your mosaic dataset, involving adding or removing rasters or changing their footprints. This option will assess the mosaic dataset to determine if enough overviews have been defined or if new data was added without defining additional overviews, thereby allowing you to generate a complete set of overviews for your mosaic dataset.
There may be times when you define overviews but don't build them; the location where your overviews are stored crashed and you lost the files; or for some reason the overviews are missing, but they are defined within the mosaic dataset. You can use the option to generate the missing images to create or re-create the missing overviews.
Optionally, you can use another dataset as your overview, such as a layer from ArcGIS.com or other overviews you've generated for other mosaic datasets. This is often recommended because as you zoom out, much of the detail in the imagery is lost, colors don't look as good and features become blended, or large features can be less easily discerned, especially when using high-resolution imagery or orthophotos. These raster datasets can be added using the Add Rasters To Mosaic Dataset tool and are handled like all the other rasters in the mosaic dataset. The only difference between these and overviews generated from the mosaic dataset is the Category field value in the attribute table will not be Overview.
Controlling the overview generation
If you want to have more control over where, how, or what overviews are generated, use the Define Overviews tool.
Where overviews are stored
No matter how or when you generate overviews, the process taking place first defines the overviews by adding them to the mosaic dataset attribute table, then the overview—which is a raster dataset—is generated. By default, the overviews are generated and stored in a folder next to where the mosaic dataset resides. This folder has the same name as the geodatabase, with an .overview extension. However, if the mosaic dataset is created in an ArcSDE geodatabase, the overviews will be created within that geodatabase.
Mosaic datasets reference their source rasters, and you might prefer that the overviews are stored with the source rasters if they're not maintained within the geodatabase. Additionally, if you intend to use the overviews created in one mosaic dataset in other mosaic datasets, you may want to manage their location independently. Use the Define Overviews tool to define the output location for your overviews before generating them.
Defining where the overviews are generated within the mosaic dataset
There are a couple of parameters that allow you to control the area in the mosaic dataset that is used to generate overviews and at what level they're generated. By default, the overviews will be generated for the area contained within the mosaic dataset boundary. But there may be cases where you want to control the area generated. You can define a rectangular area by specifying the minimum and maximum x- and y-coordinates in the mosaic dataset's spatial reference system.
Alternatively, you may want to control the level or resolution at which the overviews are generated. You can define a base pixel size that will be used to generate the overview. You can use this option to perform preprocessing on your rasters to help improve the display speed. For example, if your mosaic dataset has rasters that are being orthorectified, pan-sharpened, and color balanced, this can be computationally intensive when viewing the mosaicked image at the resolution where all three functions are being applied. You may want to create processed rasters in an area that is frequently viewed. To do this, you can define the extent, then define the pixel size where the pan-sharpening function would be applied (the resolution of the panchromatic image). By default, the tool will define overviews for this area starting at that resolution until it reaches the minimum overview size limit. You could further control this by defining the number of levels you want generated. For example, you may only want to generate one overview at the resolution of your panchromatic image. To do this, you can specify one overview level.
You can also control whether the raster's pyramids are considered in overview generation. The original pyramids may have been generated using a resampling method you don't like, or for some other reason you do not want to use any of the pyramids. You can check the Force Overview Tiles option on the Define Overviews tool dialog box and any raster pyramids will be ignored, and overviews will be defined beginning at a factor above the raster's base pixel size. For example, if the factor is 3 and the base pixel size or the rasters is 1 meter, the overviews will begin generation at 3 meters.
Alternatively, you might have a mosaic dataset with a large mix of data sources and for some reason you want to use some of the first pyramids but not all of them. You can define the pixel size where you want the overview to start.
Defining the size of your overviews
It is recommended that you allow the software to determine the size of the overview; however, there may be cases where you need to create something specific. You can control the size in three ways: by rows and columns, by a factor, or by compression. You can limit the physical dimensions of the overview by defining an optimal number of rows and columns. The larger the value, the bigger the file, and the more likely it will need to be regenerated if any lower image changes. This number will also affect the number of overview raster datasets created. If it's a large number, fewer overviews will be generated. If it's a small number, more files are generated.
You can also affect the number of overview raster datasets created by modifying the overview factor. This factor is used to determine the size of the successive overview. For example, if the cell size of the first level is x and the overview factor is 3, then the next overview pixel size will be 3x. The larger the factor, the fewer the overview raster datasets generated; however, this can affect the speed at which the mosaicked image is displayed. The more overview levels there are, generally, the faster the display will be because there is less resampling.
There are several compression methods that can be used to control the space required to store the overviews. You can store your overview with no compression; however, this will consume the most disk space. It is recommended that you use some form of compression. The LZ77 compression is lossless and is recommended if you're concerned with preserving pixel values in your overviews. Alternatively, the JPEG compression is lossy, but it can provide greater compression. If you use JPEG compression, you can control the quality, thus affecting the file size. The higher the compression quality, the better the image quality but less file size compression.
Overview image quality
There are image parameters on the Define Overviews tool that allow you to control the resampling method used to create the overviews, along with their compression and compression quality. Therefore, if your data is thematic, you might choose to use nearest neighbor, or if you have aerial or satellite imagery, you might prefer to use bilinear interpolation or cubic convolution. When creating overviews with bilinear resampling, Gaussian blurring is used to reduce high frequency noise and aliasing. This results in a higher quality image, especially after several level of resampling occur.
As mentioned earlier, you can choose the compression and its quality. You can choose no compression, a lossless compression, or a compression where you can define the overall image quality. For example, you might choose a JPEG compression with a quality of 75, since this gives you the optimal quality and file size for your data. Of course, before you create any large mosaic dataset or any database, it is always recommended that you create a smaller test case to define your optimal parameters.
Overview generation time
Adding data to your mosaic dataset can be quick since you're not moving any pixel data. However, when you are creating large mosaic datasets, you will need to account for overview generation time in your planning. Most of the options mentioned above will affect the time taken; therefore, it's difficult to estimate a length of time. The more overviews required, the longer the time taken. This is another good reason to create a test case.
You do not have to wait for overviews to be generated before using or serving your mosaic dataset. You can access a mosaic dataset and its base rasters as soon as it's created, and as the overviews are generated, you will begin to see the mosaicked image affected or created as you zoom farther out on the mosaic dataset.