2 votos

¿Qué está causando estas rayas en mi tif de salida usando arcpy.CopyRaster_management?

Esta es la línea de código que está creando estos ...

arcpy.CopyRaster_management(raster, fname, "DEFAULTS","0","","","ColormapToRGB","8_BIT_UNSIGNED")

y sí tenía un archivo de mapa de colores con especificaciones para hacer ese azul claro. No sé de dónde viene el otro color o el aparente "rayado". Creo que vi algo similar publicado sobre esto cuando estaba buscando información sobre este tipo de conversión, pero parece que no puedo encontrar ese post ahora. La pregunta sigue siendo "¿Por qué ocurre esto y qué puedo hacer al respecto? Parece que debe ser un error. Tenga en cuenta que estoy usando 10.1 ArcGIS.

Esta es la ENTRADA . En realidad es un tif hecho a partir de la misma GRID de entrada mediante la "exportación de datos" directa desde ArcMap. enter image description here

Esta es la SALIDA OUTPUT

2 votos

A mí me parece que el valor nodata está mal definido.

0 votos

No creí que tuviera que preocuparme por NoData, así que lo dejé en blanco. No estoy seguro de qué valor utilizar pero voy a explorar esto.

0 votos

No estoy seguro de por qué un "" por defecto está "mal definido". Sin embargo, si pongo un 0 o cualquier otro número distinto de 255 en el argumento NoData, se soluciona el problema.

1voto

Steve Puntos 11

Lo primero que se me ocurre es un valor de nodata mal definido. Lo que observo en las dos imágenes es que la zona azul oscuro debería ser nodata y que sólo se produce entre píxeles válidos/datos/azules claros.

Basado en el archivo de ayuda En realidad se refiere a dos de los parámetros de la herramienta: nodata_value y background_value. Del archivo de ayuda:

Utilice esta opción para eliminar los valores no deseados creados alrededor de los datos ráster. El valor especificado se distinguirá de otros datos valiosos en el conjunto de datos ráster. Por ejemplo, un valor de cero a lo largo de los bordes del conjunto de datos ráster se distinguirá de los valores cero dentro del conjunto de datos ráster.

El valor del píxel especificado se establecerá como NoData en el raster de salida de salida.

Para los rásteres basados en archivos y los rásteres de las bases de datos geográficas personales, el botón Ignorar Valor de fondo debe establecerse en el mismo valor que NoData para que para que el valor de fondo sea ignorado.

Y eso se parece bastante a lo que está ocurriendo. Los píxeles en el exterior/borde de la imagen se están renderizando como blanco/nodatos, pero esos presumiblemente mismos valores en el interior de otros datos se están renderizando como otra cosa. Su línea de código está estableciendo el fondo a 0, pero no está definiendo nodata. Dado que los dos no coinciden, están siendo representados de manera diferente en la salida. Aunque me parece interesante que puedas usar diferentes valores y conseguir que funcione en un raster basado en archivos, al contrario de lo que dice la ayuda.

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