¿Cuáles son las reglas aritméticas que rigen los valores de Nodata? ¿Independientemente de cómo se definen estos valores nulos? Estoy usando ArcMap Raster Calculator.
Estoy pensando específicamente en operaciones como 1 * Nodata (o 1 * nulo), 1 / Nodata, 1 + Nodata, 1-Nodata, Nodata-1, etc.
arcgis-desktop
python
arcgis-10.1
raster-calculator
usuario32882
fuente
fuente
Respuestas:
De acuerdo, nadie ha proporcionado una respuesta a esta pregunta, así que pensé en intervenir. Sospecho que todos los SIG que brindan soporte para el valor NoData lo hacen exactamente de la misma manera. Cada operación matemática que se aplica a una imagen ráster busca el caso especial de celdas de la cuadrícula que contienen valores NoData y luego ejecuta una ruta que ignora efectivamente la operación y genera un valor NoData para la celda de la cuadrícula correspondiente en la imagen de salida . Aquí hay un ejemplo tomado de la herramienta Agregar en el código abierto GIS Whitebox GAT:
Por cierto, este es el código que también se ejecuta si agrega dos imágenes en la Calculadora ráster de Whitebox. En Whitebox, cada ráster puede tener un valor NoData único, ya que se especifica en el archivo de encabezado del ráster. Como tal, no es necesariamente lo mismo para ambas imágenes que se agregan y es por eso que ves las variables noData1 y noData2 definidas en el código anterior. Es importante ver que a medida que el código recorre cada celda de la cuadrícula en la pila de ráster, recupera los dos valores en las imágenes de entrada correspondientes para una celda (z1 y z2), luego verifica que ambos no sean iguales a NoData . Por lo tanto, la adición solo ocurre si ambos rásteres contienen un valor válido en las entradas. Si este no es el caso, no se ingresa nada en la celda de la cuadrícula de salida. De hecho, la imagen de salida se creó e inicializó con su propio valor NoData, entonces, al no ingresar un valor agregado para una celda de cuadrícula (porque al menos una de las entradas es NoData), la salida también tendrá el valor NoData. Se realizan operaciones similares para cada una de las operaciones matemáticas y, de hecho, la mayoría de las herramientas que involucran datasets ráster de entrada seguirán un enfoque similar para tratar el caso especial de los valores NoData. Dos excepciones comunes a esta regla de que las operaciones generan un valor NoData para las entradas NoData se encuentran en la mayoría de los SIG enCon y establecer herramientas nulas . La herramienta Con de ArcGIS dice: "Si NoData no satisface el, no recibe el valor de y sigue siendo NoData". Por lo tanto, si 'NoData' es parte de la declaración condicional y una celda de cuadrícula con este valor reducido a 'VERDADERO', se puede generar un valor que no sea NoData. Del mismo modo, la herramienta Establecer nulo generará un valor que no sea NoData para las celdas de entrada que contengan NoData.
Espero que eso te ayude a comprender el funcionamiento de ese misterioso valor NoData. ¡Y recuerda que cero no es lo mismo que NoData! (A menos que, por supuesto, cero haya sido etiquetado como el valor NoData para un ráster particular).
fuente
Cada uno de sus ejemplos, la respuesta es en realidad NoData
1 * Nodata (o 1 * nulo) = NoData
1 / Nodata = NoData
1 + Nodata = NoData
1-Nodata = NoData
Nodata-1 = NoData
Debo agregar que muchas operaciones le dan la opción de "omitir" NoData en una función.
fuente