5 votos

Error en la reclasificación con ArcPy

Estoy tratando de reclasificar DEM usando arcpy.sa.Reclassify y muestra un error.

Los siguientes son mis comandos:

dem_re=arcpy.sa.Reclassify("dem_extfish.tif","VALUE",arcpy.sa.RemapRange([[391, 677, 1],[677, 963, 2],[963, 1249, 3],[1249, 1535, 4],[1535, 1821, 5],[1821, 2107, 6],[2107, 2393, 7],[2393, 2679, 8],[2679, 2965, 9],[2965, 3242,10]]))

dem_re.save("reclass_dem_eleband.tif")

El comando anterior da el error:

ExecuteError: ERROR 999999: Error executing function.
Failed to execute (Reclassify).

Sin embargo, se reclasificó usando ArcMap pero ha estado produciendo el error con ArcPy.

El error completo y el rastreo son los siguientes:

ExecuteError                              Traceback (most recent call last)
<ipython-input-39-d371dde30892> in <module>()
----> 1 dem_re=arcpy.sa.Reclassify("dem_extfish.tif","VALUE",arcpy.sa.RemapRange([[391, 677, 1],[677, 963, 2],[963, 1249, 3],[1249, 1535, 4],[1535, 1821, 5],[1821, 2107, 6],[2107, 2393, 7],[2393, 2679, 8],[2679, 2965, 9],[2965, 3242,10]]))

C:\Program Files (x86)\ArcGIS\Desktop10.5\ArcPy\arcpy\sa\Functions.py in Reclassify(in_raster, reclass_field, remap, missing_values)
   5751         reclass_field,
   5752         remap,
-> 5753         missing_values)
   5754 Reclassify.__esri_toolname__ = "Reclassify_sa"
   5755 Reclassify.__esri_toolinfo__ = [

C:\Program Files (x86)\ArcGIS\Desktop10.5\ArcPy\arcpy\sa\Utils.py in swapper(*args, **kwargs)
     51 
     52             try:
---> 53                 result = wrapper(*args, **kwargs)
     54             finally:
     55                 # Reset the geoprocessor state to the original setting.

C:\Program Files (x86)\ArcGIS\Desktop10.5\ArcPy\arcpy\sa\Functions.py in Wrapper(in_raster, reclass_field, remap, missing_values)
   5745             remap,
   5746             out_raster,
-> 5747             missing_values)
   5748         return _wrapToolRaster(u"Reclassify_sa", unicode(result.getOutput(0)))
   5749     return Wrapper(

C:\Program Files (x86)\ArcGIS\Desktop10.5\ArcPy\arcpy\geoprocessing\_base.py in <lambda>(*args)
    508         val = getattr(self._gp, attr)
    509         if callable(val):
--> 510             return lambda *args: val(*gp_fixargs(args, True))
    511         else:
    512             return convertArcObjectToPythonObject(val)

ExecuteError: ERROR 999999: Error executing function.
Failed to execute (Reclassify).

1voto

plnnr Puntos 70

No puedo estar seguro de su entrada u otros factores como la extensión de su entorno o el tamaño de las celdas (sólo puedo suponer los valores predeterminados). Sin embargo, el código de muestra a continuación funcionó para mí usando su ejemplo de reasignación. Posiblemente compruebe sus datos de entrada y su configuración de entorno.

También podría probar otra herramienta como Slice() sólo para verificar que su entrada funciona.

from arcpy.sa import *

# create a sample input with enough values to reclassify based on users remap.
ras1 = CreateRandomRaster("",1, "0 0 1000 1000")
ras2 = ras1 * 1000

remap = RemapRange([[391, 677, 1],
                    [677, 963, 2],
                    [963, 1249, 3],
                    [1249, 1535, 4],
                    [1535, 1821, 5],
                    [1821, 2107, 6],
                    [2107, 2393, 7],
                    [2393, 2679, 8],
                    [2679, 2965, 9],
                    [2965, 3242,10]])

dem_re = Reclassify(ras2,"VALUE",remap)
dem_re.save()

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X