Comprender la configuración de simbología ráster

9

Estoy tratando de entender cómo usar las opciones de simbología para capas ráster en QGIS, particularmente las opciones de remuestreo, pero la documentación oficial solo menciona la configuración muy brevemente y no entra en detalles sobre cómo funcionan.

Estoy interesado en cómo usar la configuración para ver mejor las imágenes ráster, como mapas topográficos o cartas náuticas, ya sea a través de servicios de mapas en mosaico o formatos estáticos fuera de línea como GeoTIFF. La mayoría de los videos y tutoriales que puedo encontrar parecen tratar el remuestreo con fines de manipulación de datos en lugar de mostrarlos.

EDITAR: Las respuestas existentes sobre el muestreo de Lanczos son bastante informativas y serán útiles a medida que avance un poco más. Sin embargo, mi pregunta no es realmente acerca de los diferentes métodos de interpolación, que entiendo bastante bien, sino más bien sobre qué efecto tienen las configuraciones específicas en QGIS en la representación de la capa ráster.

Normalmente, investigaría esto cambiando la configuración y comparando visualmente el resultado, pero no veo ninguna diferencia cuando los aplico (aparte de que la imagen no se procesa bajo ciertas configuraciones en ciertos niveles de zoom). En resumen, no entiendo por los nombres de las configuraciones cómo debería esperar que afecten a la imagen. Específicamente:

  • ¿Cuáles son las configuraciones de "acercamiento" y "alejamiento", y qué pasos debo seguir para compararlas visualmente? ¿Están relacionados con el muestreo ascendente y descendente, como se describe en el artículo de Lanczos?
  • ¿Qué es "sobremuestreo" y cómo afecta visualmente una imagen?
  • ¿Alguna de las otras configuraciones de simbología es relevante para la apariencia visual de algo así como un mapa topográfico?
Nathan
fuente
Lea gis.stackexchange.com/questions/10931/… que tiene algunas comparaciones muy interesantes entre los métodos.
Michael Stimson
Gracias; ¡muy informativo! Sin embargo, mi pregunta es en realidad un poco más rudimentaria: he editado la pregunta para explicar cómo.
Nathan

Respuestas:

7

Respuesta editada (11-SEP-2018)

Las siguientes respuestas y descripciones se basan en QGIS 3.2. No tocarán los métodos de interpolación ya que el interlocutor ya está familiarizado con ellos.

Supongo que la pregunta se hizo específicamente sobre la configuración en Propiedades de capa -> Simbología -> Muestreo (como en la figura a continuación)

Figura 1

Zoom: vecino más cercano, bilineal, cúbico

En general, esta configuración se activa cuando el usuario "acerca" (es decir, hacia el suelo) más allá de la resolución de píxeles nativa de la capa ráster. Consulte la figura a continuación para ver el efecto. (Asegúrese de mantener el valor de sobremuestreo en 1.0 o superior. El valor predeterminado es 2.0).

Específicamente: esta configuración estaba destinada a tener efecto cuando la resolución de píxeles de la vista de mapa es mayor que la resolución de píxeles original (es decir, archivo) de la capa ráster.

Figura 2

Alejado - Vecino más cercano, promedio

En general, esta configuración se activa cuando el usuario "aleja" (es decir, lejos del suelo) más allá de la resolución de píxeles nativa de la capa ráster. Consulte la figura a continuación para ver el efecto. (Asegúrese de mantener el valor de sobremuestreo en más de 1.0. El valor predeterminado es 2.0).

Específicamente: esta configuración estaba destinada a surtir efecto cuando la resolución de píxeles de la vista de mapa es menor que la resolución de píxeles original de la capa ráster (es decir, el archivo).

El método promedio es en realidad una interpolación bilineal. En la mayoría de las situaciones, el valor predeterminado de Oversampling de 2.0 proporciona el "mejor" resultado visual frente al rendimiento. Para el ráster de ortofoto grande, los valores de sobremuestreo más grandes pueden dar mejores resultados visuales, especialmente si el ráster tiene muchos puntos blancos (por ejemplo, debido a reflejos de luz de automóviles, tejados, cuerpos de agua, producción de mapas de baja calidad, combinaciones de los mencionados anteriormente, etc. ) Pero los valores de sobremuestreo más grandes también aumentan la duración de la representación y pueden no necesariamente producir mejores resultados. Las diferentes ortofotos de ráster ofrecen resultados visuales diferentes, así que experimente con diferentes valores de sobremuestreo .

figura 3

El valor de sobremuestreo

La aplicación real y el efecto del sobremuestreo se pueden explicar a partir de los códigos fuente QGIS reducidos / simplificados a los siguientes pasos:

let pixelRatio = map view's pixres / raster layer's pixres,
let toUseRatio = min(pixelRatio, Oversampling),

toUseRatio es el más pequeño de pixelRatio y Oversampling . Por lo tanto, el sobremuestreo es un nombre inapropiado y, en su lugar, debería etiquetarse como "Relación máxima de píxeles" .

// Assuming Zoom_In and/or Zoom_Out is not Nearest_Neighbour.

if toUseRatio < 1.0 or toUseRatio near 1.0 then
    resamplerToUse = interpolation specified in Zoom_In
else if toUseRatio > 1.0 then
    resamplerToUse = interpolation specified in Zoom_Out
else 
    resamplerToUse = Nearest Neighbour

A continuación, QGIS decide entre (el método de interpolación especificado en) Acercar y Alejar usando la lógica anterior. La "idiosincrasia" resultante es que Zoom In puede seleccionarse en lugar de Zoom Out cuando el Usuario "aleja" más allá de la resolución de píxeles nativa de la capa.

let resWidth  = map view's width * toUseRatio,
let resHeight = map view's height * toUseRatio,

let InpImg = Block(raster layer, map view's extent, resWidth, resHeight),
let OutImg = scale InpImg to map view's width and height using resamplerToUse.

Y por último, la operación de copia / escalado de imágenes. Si toUseRatio es "grande", también lo hará resWidth y resHeight , y esto dará como resultado directamente que InpImg tenga más píxeles de un lado a otro. InpImg luego se reduce (o aumenta) para adaptarse al ancho y alto de la pantalla de la vista del mapa.

Si InpImg tiene más píxeles (de lado a lado) que la vista de mapa, se producirá una reducción de escala y el resultado será "bueno". Por el contrario, si InpImg tiene menos píxeles (de lado a lado) que la vista del mapa, se producirá una ampliación y el resultado será deficiente. (Vea la figura a continuación).

Figura 4

Ralph Tee
fuente
¡Gracias, eso es exactamente lo que estoy preguntando! ¿Podría explicar un poco más sobre lo que hace Oversampling y también cómo se aplicaría esta configuración a las capas ráster que contienen múltiples mosaicos dentro de un único servicio de mapas? Por ejemplo, el servicio de mapas topográficos de USGS contiene diferentes mapas para las escalas 1: 250k, 1: 100k y 1: 24k, y estas escalas diferentes se muestran en diferentes niveles de zoom. He notado que un valor de sobremuestreo más alto a veces da como resultado que aparezcan los mapas con un nivel de zoom más alto, en lugar de aquellos que normalmente se representan para ese nivel de zoom. ¿Por qué es esto?
Nathan
Para un servicio de mapas web (por ejemplo, WMTS), QGIS se "bloquea" automáticamente en la mejor capa dependiendo de la escala de la vista de mapa actual o la resolución de píxeles. QGIS luego "Acerca" o "Acerca" hasta que la vista del mapa alcance la siguiente mejor capa. Y el proceso se repite.
Ralph Tee
Es la resolución actual (escala nominal) o la resolución de píxeles de la vista de mapa del Usuario la que determina qué capa de servicio de mapas web carga QGIS, y no ningún valor en Oversampling.
Ralph Tee
¿Qué explicaría el cambio, entonces? Por ejemplo, a una escala de 1: 125,000 y un aumento de 2x, con Oversampling establecido en 2.0, QGIS carga la capa topo de 100k. A la misma escala y aumento, con Oversampling establecido en 3.0, QGIS muestra la topografía de 24k (aunque primero representa la capa de 100k, que aparece brevemente con una resolución mejorada hasta que la capa de 24k se carga en su lugar).
Nathan
1
¿Puedo sugerirle que cree una nueva entrada para sus preguntas (aparentemente relacionadas)? Esto es para cumplir con las pautas del foro. Además, el comentario no es un gran lugar para poner respuestas.
Ralph Tee