Build Footprints (Data Management)
Summary
Computes the footprints for each raster dataset in a mosaic dataset.
Usage
-
If there is a selection, only those selected footprints will be recalculated.
-
The footprint is used to calculate the boundary. If you modify the shape of the footprints along the perimeter of the mosaic dataset, you need to recalculate the boundary. If you don't choose to use this tool, then you can do it later using the Build Boundary tool.
-
You cannot rebuild footprints for a referenced mosaic dataset.
-
The Approximate Number of Vertices parameter is used to define the complexity of the footprints. The higher the number of vertices will mean the footprint is more accurate and more irregular. Valid values range from 4 to 10,000. You can set your value to be -1 so that no generalization will take place, but this may mean your footprint will have a very large number of vertices.
Database fragmentation and frequent data manipulation may increase the size of your mosaic dataset dramatically. If your database size is inflated due to constant transactions, you should run the Compact tool.
Syntax
Parameter | Explanation | Data Type |
in_mosaic_dataset |
The mosaic dataset for which the footprints will be calculated. | Mosaic Layer |
where_clause (Optional) |
Using SQL, you can define a query or use the Query Builder to build a query. | SQL Expression |
reset_footprint (Optional) |
Choose which method to use when redefining the footprints.
| Boolean; String |
min_data_value (Optional) |
The lowest pixel value representing valid image data. This value is determined by the bit depth of the raster dataset. For example, with 8-bit data, the values can range from 0 to 255. A value around 0 represents very dark colors, like black border pixels. When you specify 1, then the only value less than 1 is 0, so all 0 values will be considered invalid data and will be removed from the perimeter of the footprint. If the imagery is compressed using a lossy compression method, then you should define a value slightly greater than 1 to remove all the black pixels. When dark areas, such as shadows, have been incorrectly removed from the footprint, this value should be decreased. | Double |
max_data_value (Optional) |
Highest value representing valid data. This value is determined by the bit depth of the raster dataset. For example, with 8-bit data, the values can range from 0 to 255. A value around 255 represents very bright colors, such as white clouds and snow. If you specify 245, then all values between 246 and 255 will be removed from the perimeter of the footprint. | Double |
approx_num_vertices (Optional) |
Approximate number of vertices with which the new footprint polygon will be created. The minimum value is 4 and the maximum value is 10,000. The greater this value, the more accurate and irregular the polygon and the longer the processing time. A value of -1 will show all the vertices in the footprint, therefore, your polygon footprint will not be generalized. | Long |
shrink_distance (Optional) |
Distance value specified in the units of the mosaic dataset's coordinate system by which the overall polygon will be reduced in size. Shrinking of the polygon is used to counteract effects of lossy compression, which causes edges of the image to overlap into NoData areas. | Double |
maintain_edges (Optional) |
Use this parameter when using raster datasets that have been tiled and are butt joined (or line up along the seams with little to no overlap).
| Boolean |
skip_derived_images (Optional) |
Adjust the footprints for derived images, such as service overviews.
| Boolean |
update_boundary (Optional) |
Generates or updates the boundary polygon of a mosaic dataset. By default, the boundary merges all the footprint polygons to create a single boundary representing the extent of the valid pixels.
| Boolean |
request_size (Optional) |
The size to which the raster will be resampled when it is examined using this tool. The value (such as 2,000) defines the dimension using rows and columns. You can increase or decrease this value based on the complexity of your raster data. Greater image resolution provides more detail in the raster dataset and thereby increases the processing time. A value of -1 will not resample the footprint, therefore, it will compute the footprint at the native pixel size. The request size cannot be greater than the raster contained by the footprints. If this is the case, then the value will automatically be the same as the size of the raster. | Long |
min_region_size (Optional) |
Determines a filter used to remove holes created in the footprint. This value is specified in pixels, and it is directly related to the Request Size, not to the pixel resolution of the source raster. | Long |
simplification_method (Optional) | The simplification will reduce the number of vertices, since dense footprints can affect display performance. Choose which method to use in order to simplify the footprints.
| String |
edge_tolerance (Optional) |
The tolerance value is specified in the units of the mosaic dataset's coordinate system below which the footprint will snap to the sheet edge. This is used when maintain_edges is set to MAINTAIN_EDGES. By default, the value is empty for which the tolerance is computed based on the pixel size corresponding to the requested resampled raster. A value of -1 will compute the tolerance using the average pixel size of the mosaic dataset. | Double |
Code Sample
This is a Python sample for the BuildFootprints tool.
import arcpy
arcpy.BuildFootprints_management(
"c:/data/Footprints.gdb/md", "#","RADIOMETRY",
"1", "254", "25", "0", "#", "SKIP_DERIVED_IMAGES",
"UPDATE_BOUNDARY", "#", "#", "CONVEX_HULL")
This is a Python script sample for the BuildFootprints tool.
# Build Footprint by setting the valid pixel value range from 1 to 254
# Allow 25 vertices to be used to draw a single footprint polygon
# Skip the overviews image
# Build new boundary afterwards
# Build footprints based on minimum bounding geometry
import arcpy
arcpy.env.workspace = "C:/Workspace"
mdname = "Footprints.gdb/md"
query = "#"
method = "RADIOMETRY"
minval = "1"
maxval = "254"
nvertice = "25"
shrinkdis = "0"
maintainedge = "#"
skipovr = "SKIP_DERIVED_IMAGES"
updatebnd = "UPDATE_BOUNDARY"
requestsize = "#"
minregsize = "#"
simplify = "#"
arcpy.BuildFootprints_management(
mdname, query, method, minval, maxval, nvertice, shrinkdis,
maintainedge, skipovr, updatebnd, requestsize, minregsize,
simplify)