Ejecuté una prueba para determinar cómo la velocidad y la calidad difieren entre los dos métodos, aquí están los resultados:
Los datos de entrada
- Imagen NAIP DOQQ de 4 bandas en formato .img (349.34MB)
- Una clase de entidad utilizada como máscara / clipper
Actuación
Se realizaron tres ensayos y se compararon. El método Clip (gestión de datos) es significativamente más rápido que el método Extract by Mask (Spatial Analyst).
Calidad
Ambas extensiones fueron idénticas al igual que los valores NoData. Sin embargo, una evaluación visual mostró que el extracto por el método de máscara alteró ligeramente la disposición de píxeles, probablemente el resultado de algún tipo de remuestreo. La disposición de píxeles en la operación de recorte fue idéntica a la imagen de entrada original.
# Import system modules
import arcpy, time, os
from arcpy import env
from arcpy.sa import *
env.overwriteOutput = 1
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Set local variables
inRaster = r'C:\temp\naip2011.img'
inMaskData = r'C:\temp\fgdb.gdb\clipper'
outws = r'C:\temp'
out1 = os.path.join(outws, 'extractbymask.img')
out2 = os.path.join(outws, 'clip.img')
#############TRIAL 1: EXTRACT BY MASK#########################################
start = time.clock()
# ExtractByMask
outExtractByMask = ExtractByMask(inRaster, inMaskData)
# Save the output
outExtractByMask.save(out1)
end = time.clock()
total = end - start
print "The extract by mask method took: %s seconds" % round(total, 3)
###############TRIAL 2: CLIP#################################################
start = time.clock()
# Clip
arcpy.Clip_management(inRaster, "#", out2, inMaskData, "", "ClippingGeometry")
end = time.clock()
total = end - start
print "The clip method took: %s seconds" % round(total, 3)