¿Cómo puedo extraer valores de un ráster por puntos?
Prefiero no en Arcgis.
Prefiero en Qgis o Mapwindow u otros gis de código abierto.
raster
point
open-source-gis
Vassilis
fuente
fuente
Respuestas:
QGIS "Point Sampling Tool" debería ser el complemento que estás buscando.
Aquí hay una descripción detallada de cómo usarlo: http://pvanb.wordpress.com/2010/02/15/sampling-raster-values-at-point-locations-in-qgis/
Actualización basada en el comentario de Paolo:
el complemento no es la única solución, y ya no es siempre la solución más fácil. Una solución alternativa es la función Saga 'Agregar valores ráster al punto' en la caja de herramientas de procesamiento. Ver para más detalles http://pvanb.wordpress.com/2014/07/01/sampling-raster-values-at-point-locations-in-qgis-an-update/
fuente
En PostGIS 2.0 puedes hacer:
Asegúrese de que su ráster esté en mosaico muy pequeño cuando lo cargue (-t 10x10 con el cargador).
fuente
Estaba teniendo problemas con las herramientas GUI de QGIS y SAGA mencionadas en este hilo (
Raster values to points
estaba fallando por alguna razón y arrojando errores inútiles y GRASSv.sample
creó una capa completamente nueva que no fue útil). Después de fallar con las herramientas GUI por un tiempo, intenté hacer esto en la Calculadora de campo. Funcionó bastante bien y pude controlar el proceso un poco mejor de lo que permiten las GUI, y hacer algunos otros cálculos en el camino.Digamos que tiene una capa con nombre
pts
y otra con nombrerast
, ambas en el mismo sistema de coordenadas. Te gustaría probarrast
en cada par X, Y representado enpts
.Si no ha usado la Calculadora de campo antes, es bastante simple. Ingresará su cálculo en el cuadro "Expresión", y Q le dará una serie de variables y operaciones en la columna central, con el texto de ayuda en la columna derecha. Romperé este proceso en cuatro pasos:
Abra la tabla de atributos de la
pts
capa con la que desea muestrear.Una vez que esté en el cuadro de diálogo Calculadora de campo, elija si desea Crear un nuevo campo o Modificar un campo existente en su
pts
capa.A continuación, cree una expresión para llenar la
pts
columna de atributos nuevos o existentes . Puede comenzar modificando el código de expresión que funcionó para mí:raster_value()
un nombre de capa ráster'rast'
, un número de banda1
y la geometría del punto enmake_point()
.$x
y$y
son variables de geometría que dependen de la ubicación del punto en cada fila de la tabla de atributos.Este método también permite operaciones aritméticas como restando el valor de otra capa de trama llamada
other_rast
desderast
que me salvó un montón de tiempo sobre las herramientas GUI. Ejemplo a continuación:Observe nuevamente que las tres capas
pts
,rast
yother_rast
deben estar en el mismo sistema de coordenadas para que este método funcione.fuente
Intente usar QGIS 3.2.2 y SAGA (instalado de manera predeterminada en QGIS): la función "Valores ráster a puntos" hará todo por usted: toma un archivo de imagen y lo convierte en una forma de vector de punto tomando la información de la imagen ráster.
fuente
Las herramientas GME de Hawthorne Beyer lo hacen muy bien a través de la línea de comandos y permiten un procesamiento por lotes fácil con bucles 'for'.
isectpntrst(in="path/to/shapefile", raster="path/to/raster", field="fieldname")
Referencia de comando GME isectpntrst
fuente
En GRASS GIS, puede consultar el mapa en la GUI o usar http://grass.osgeo.org/gdp/html_grass64/r.what.html
fuente
http://gis-techniques.blogspot.com/2012/10/extract-raster-values-from-points.html tiene una guía paso a paso para usar el paquete R Raster para extraer valores ráster de puntos.
fuente
Puede usar esto: http://www.saga-gis.org/saga_module_doc/2.1.3/shapes_grid_3.html
¡Está en la caja de herramientas SAGA de Qgis! Hace todo en un solo paso :)
fuente
Aquí hay una función que escribí usando python y gdal. La función toma una lista de rásteres y un marco de datos de pandas que contiene las coordenadas del punto y devuelve un marco de datos de pandas con las coordenadas del punto, los centroides para las celdas de ráster respectivas y los valores de celda respectivos. La función es parte del paquete chorospy del paquete en desarrollo (que se encuentra aquí ).
Ejemplo de cómo ejecutarlo dado que los rásteres están en su directorio de trabajo actual:
fuente
Si tiene acceso a FME , puede usar uno de los dos transformadores en FME Workbench.
El RasterCellCoercer ( "descompone todas las características de mapa de bits de entrada numérico en puntos individuales o polígonos. Un vector de características es de salida para cada celda en el ráster.")
El PointOnRasterValueExtractor ( "Toma en entidades de punto y una sola trama de referencia. La salida consiste en la banda y la paleta de valor (s) en la ubicación de cada punto.")
fuente
Pensamiento rápido:
fuente