domingo, 12 de marzo de 2017

Novedades de estilos con el QGIS 3.0










Vuelvo a escribir un post después de un largo tiempo, sinceramente me gustaría hacerlo más seguido, pero no siempre se puede. Bueno, en esta oportunidad hablaré sobre las novedades que se vienen con el QGIS 3.0.  Estoy probando la versión de desarrollo (2.99 Master), el cual se puede instalar a través del repositorio OSGeo4W, o también como instalación personal directamente desde aquí.

Figura 1: Vista del repositorio OSGeo4W con la opción para instala 
la versión de desarrollo del QGIS



Novedades en los Estilos - Point cluster


Supongamos que tenemos datos vectoriales de puntos, por ejemplo los centros poblados de un ámbito, pero que dependiendo de la escala de visualización, al mostrar todo el ámbito de estudio, muchas veces se aprecia un mar de puntos muy cercanos entre ellos; si bien existe la posibilidad de trabajar con ajustes para visualizar puntos en función a la escala, ahora dentro de "Estilos de capas", se aprecia la opción denominada "Point cluster".


Figura 2: Opción de Point cluster dentro de los estilos para puntos


La finalidad de esta opción de estilo, es generar agrupaciones de los puntos. Las agrupaciones pueden variar en función al valor de la distancia que se ingrese, por lo tanto, su visualización va a depender de la escala de presentación. 
En nuestro ejemplo tenemos un polígono que representa un ámbito, en este caso un Departamento del Perú llamado Apurímac, y puntos que representan sus centros poblados, sobre esta última capa podemos activar el diálogo estilos de capas desde el panel de capas y luego buscar la opción del Point cluster, tal como se aprecia en la Figura 2. 
Como paso siguiente, ingresamos un valor de distancia, el cual definirá a una determinada escala, cuantas agrupaciones se van a representar.

Figura 3: Empleo del Point cluster en función a su distancia

Hay que tener en cuenta que los números que aparecen, indican la cantidad de puntos que conforman esta agrupación, y nosotros al variar la escala, ellos se irán modificando y a su vez irán mostrándose los "centros poblados".
Si bien los números salieron por defecto, es importante ver que pueden ser representados por cualquier tipo de símbolo, para ello podemos ir al símbolo de cluster, en nuestro caso estamos empleando el "Font maker" como el tipo de capa del símbolo, el mismo que debería ser representado por letras, pero tal como se aprecia en la Figura 4, se puede ir al constructor de expresiones, con la finalidad de indicar que use la variable "@cluster_size", el cual permite mostrar el número de símbolo que contiene un cluster o agrupamiento.

Figura 4: Uso del constructor de expresiones para indicar la variable a emplear 
en la representación de los clusters


Dándole estilo a los cluster

Vamos a realizar un paso más, es decir podemos darle más estilo a nuestros agrupamientos, para ello, debemos ir dentro del estilo de capas, al renderizador y cambiar a Categorized, luego en Configuración del renderizador, te brinda la opción de seleccionar una columna de datos, por lo tanto, teniendo en cuenta que se trata de centros poblados, vamos a seleccionar una columna que presenta valores que permiten un tipo de agrupamiento, como por ejemplo el nombre de provincias (NOMBPV02), tal como apreciamos en la Figura 5, veremos que el Departamento contiene siete (7) provincias, los que se van a colorear de manera aleatoria.


Figura 5: Opción de organizar los datos según valores que los agrupan


Con lo realizado, simplemente nuevos valores se van a visualizar por colores cuando hagamos el acercamiento adecuado, pero lo que requerimos ahora es que nuestros cluster también se coloreen de la misma manera. Para ello nos vamos a editar el símbolo del "Point cluster", en este caso el relleno, tal como se aprecia en el Figura 6, en donde usamos la variable @cluster_color.

Figura 6: Estableciendo colores a los cluster

Ahora queremos hacer variar el tamaño del símbolo de los clusters, para lo cual en este caso activando el "Asistente" para la edición del tamaño definida por datos, nos permite generar una expresión que determina los tamaños de nuestros clusters, estableciendo un rango, todo ello considerando la variable @cluster_size como fuente.

Figura 7: Definiendo el tamaño de los cluster con el asistente

Finalmente, una vez definido el rango de tamaño, tendremos como resultado tamaños de cluster en función a la cantidad de símbolos que lo agrupan. Todo esto nos permite poder tener una vista más apropiada de nuestros datos si empleamos el "Point cluster" como estilo de presentación.

Figura 8: Resultado de vista de los cluster en función al tamaño 
de los símbolos que agrupan


En resumen, creo que estas nuevas opciones de estilo que se vienen en la nueva versión, nos permitan mostrar este tipo de datos de la mejor manera. Para quienes quieren revisar un vídeo relacionados a esta característica les recomiendo ver este de North Road.
Hasta otra oportunidad en donde espero poder mostrar otras características nuevas que se vienen con la nueva versión del QGIS.








lunes, 24 de octubre de 2016

Novedades para la Descarga de Imágenes del Sentinel-2





Con el objetivo de actualizar una anterior entrada, donde se describe algunas alternativas para descargar las imágenes del Sentinel-2, en esta oportunidad vamos a probar nuevamente el SCP (Semi-Automatic Classification Plugin) pero con la última versión 5.0 "Kourou", la cual presenta muchas mejoras, les recomiendo ver Exploring the new features of Semi-Automatic Classification Plugin v.5.0 "Kourou"
Primero veremos que existen algunos pequeños cambios para descargar ahora las imágenes del Sentinel-2 a través del SCP, luego se presenta una nueva opción para descargar dichas imágenes desde otras fuentes.

Empleando el SCP


Tal como lo indicamos anteriormente el SCP implementa una herramienta para buscar y descargar imágenes Sentinel-2 además del Landsat y ASTER. Para lograr una descarga adecuada debemos contar con un usuario y constraseña, para lograr eso, actualmente la Agencia Espacial Europea – ESA, ha creado un portal de acceso libre de datos para las imágenes de los satélites SENTINEL-1 y SENTINEL-2, el cual se puede acceder usando el link  https://scihub.copernicus.eu/dhus/#/home.

Como primer paso debemos registrarnos en el portal de ESA, para ello para esto tendremos que irnos al icono superior derecho con el nombre de SIGN UP y completar los datos requeridos (Figura 1).

Figura 1: Registro en ESA


Una vez hecho nuestro registro y haya sido validado, ahora podemos entrar a nuestro QGIS y activar nuestro SCP  e ingresar dentro de la pestaña de "descarga de imágenes" a "Sentinel -2 descargapara indicar nuestro usuario y contraseña, empleando ahora como servicio a https://scihub.copernicus.eu/dhus/. A partir de esto seguimos con el mismo procedimiento ya descrito en una anterior entrada

En uno de los últimos tutoriales del creador del Plugin, se describe una manera de cómo podemos identificar zonas de "gránulos" del Sentinel-2 (Ver Ref. 3), para ello nos presenta la posibilidad de descargar un archivo tipo Shapefile en formato ZIP, conteniendo dichas zonas, el cual fue adaptado a partir de un archivo KML disponible desde ESA a través de este link. 

Una vez descargado este archivo Shapefile que contiene las zonas Sentinel-2, en este caso solamente trabajamos la zonas que cubren el Perú (Figura 2), a partir del cual determinamos nuestra zona de interés, el cual nos facilitará al momento de seleccionar una imagen del Sentinel-2.

Figura 2: Zona de Imágenes del Sentinel -2 (Granules) que cubren el Perú.



En esta oportunidad se ha seleccionado una zona del Norte del Perú, y de todas las imágenes disponibles se procedió a descargar la que presenta menor nubosidad (Figura 3). 

Figura 3: Descarga de las imágenes Sentinel-2 empleando el SCP


Luego de una gran tiempo, considerando el hecho que seleccionamos que realice el pre-procesamiento de imágenes y que los cargue dentro del QGIS, aparecerá en nuestro panel de capas, todas las bandas del Sentinel-2 (Figura 4), debemos recordar que en la pestaña que dice "Opciones de Descarga", tenemos la posibilidad de seleccionar solamente las bandas que requerimos, por defecto se seleccionan todas.

Figura 4: Imágenes Pre-Procesadas del Sentinel-2 cargadas en el QGIS


Empleando el EarthExplorer del USGS


Para quienes están habituados a descargar imágenes del LandSat, se habrán percatado que recientemente tenemos la posibilidad de poder descargar también las imágenes del Sentinel-2 empleando el EarthExplorer.

Figura 5: Opción del EarhExplorer para descargar imágenes Sentinel-2


Con la finalidad de obtener la misma imagen obtenida empleando el SCP, seleccionamos la zona de interés y un rango de fechas similares. Luego de ubicar la imagen simplemente lo confirmamos con una vista previa y lo podemos descargar.

Figura 6: Imagen del Sentinel-2 seleccionada para descargar usando el EarthExplorer.


Por ahora esto quería mostrarles, por mi parte espero que para quienes están interesados en la descarga de imágenes del Sentinel-2, les sirva estas indicaciones.



Referencias:

  1. Sentinel-2 Products Specification Document (PSD)
  2. Descripción, Descarga y Manipulación de Productos Sentinel-2 
  3. Congedo Luca (2016). Semi-Automatic Classification Plugin Documentation. DOI
  4. USGS Distribution of Sentinel-2 Products



martes, 19 de julio de 2016

Algunas Novedades que trae el QGIS 2.16












Ya está entre nosotros el QGIS 2.16 Nødebo (nombre de un pueblo ubicado en Dinamarca), el cual nos trae muchas novedades, de todos ellos me permito mostrarles algunos que estuve probando en éstos días.



  • Editor de gradiente interactivo Rediseñado

El editor de gradiente de rampa ahora cuenta con controles interactivos para facilitar la manipulación de los gradientes. El diálogo incluye ahora una trama interactiva para modificar gradientes y sus paradas de los valores de color de tipo HSV o RGB. Entre las nuevas características del editor podemos mencionar: (1) se puede arrastrar las paradas de color, desde el gradiente y también desde un gráfico de trazado, (2) permite generar nuevas paradas haciendo doble clic, (3) se pueden eliminar las paradas seleccionada con "suprimir", (4) se puede mover las paradas usando las teclas de flechas y si mantenemos presionada la techa "Shift" el desplazamiento será mayor, (5) podemos arrastrar colores recientes para generar nuevas paradas.





  • Elección de la vista por defecto al abrir la tabla de atributos

En las versiones anteriores de QGIS el cuadro de diálogo de atributos siempre se abre en la vista de tabla. Ahora, usted tiene la opción de predeterminar el tipo de vista, puede ser como tabla, formulario o recordar la última vista utilizada.





  •  Funciones de copiado en formato GeoJSON


Se cuenta con la opciones de seleccionar funciones de copiado como "Texto sin formato, sólo atributos", "Texto sin formato, geometría WKT" y una nueva opción "GeoJSON". Cuando se establece en "GeoJSON", funciones de copiado en QGIS, se puede colocar una representación de texto GeoJSON y sus características, empleando el portapapeles para pegarlo fácilmente en otras aplicaciones / código JavaScript. Estos ajustes se pueden encontrar en Configuración -> Opciones -> Fuentes de datos -> Copiar objetos como..






  • Pegar objetos GeoJSON directamente en QGIS
El manejador de portapapeles del QGIS ahora puede analizar muchos formatos de texto adicionales, incluyendo soporte nativo para colecciones de objetos GeoJSON. Esto le permite copiar y pegar directamente en las cadenas de GeoJSON dentro del QGIS y hacer que se convierten automáticamente en coberturas de QGIS incluyendo sus geometrías.




  • Selector de colores mejorados.
Los menús desplegables del botón de color ahora muestran una rueda de color, lo que permite realizar ajustes muy rápidos de los colores.




  • Widgets incrustados en el panel de capas.
Esto nos permite la presentación de widgets incrustados en el panel de capas, el cual es añadido para cada cobertura individual, dentro del diálogo de las propiedades de la capa (en una nueva pestaña de Leyenda). La idea es tener una manera de acceder rápidamente a algunas acciones que se utilizan a menudo con una capa.
Por ahora la aplicación viene con el widget de la transparencia, en el futuro puede haber más de widgets estándar, por ejemplo, la configuración del filtrado, la selección, el estilo entre otros. La API permite a los plugins registrar sus propios widgets, los cuales serán útiles para los plugins específicos, asignando varios widgets personalizados a las capas que se gestionan.







Existen muchas más novedades que lo podrán ver en las referencias que se indican, mi objetivo era mostrar solo algunas que considero interesantes.


Referencias:


  1. http://www.qgis.org/en/site/forusers/visualchangelog216/index.html
  2. http://changelog.qgis.org/en/qgis/version/2.16.0/ 

miércoles, 13 de julio de 2016

Complementos del QGIS para analizar la Biodiversidad Parte 2

Continuamos con la segunda parte hablando sobre los complementos que presenta el QGIS relacionados con temas de Biodiversidad. Tal como lo mencionamos en la anterior entrada, ahora trataremos sobre el complemento QSDM (QGIS Species Distribution Model).


QSDM Plugin



Básicamente el plugin incorpora modelos estadísticos para realizar el modelado de distribución de especies con QGIS, teniendo desde sus inicios el objetivo de ejecutar modelos MAXENT dentro de QGIS, pero el creador indica que su ambicioso plan es permitir contar con otras técnicas de modelado, tales como "RandomForests" y LogisticRegression. Para quienes han tenido la oportunidad de trabajar con MAXENT, se habrán dado cuenta que el principal requerimiento es, contar con la misma extensión y dimensiones de todos las coberturas de tipo ambiental de entrada, lo cual a veces es un poco dificultoso.
Para adelantarme en la descripción, con la herramienta "Unify Environmental Layers" presente en QSDM, podremos unificar nuestras coberturas de tipo ambiental  a una resolución común y guardarlas como un archivo .asc de ESRI; esto gracias al excelente script de Yury Ryabov.

Otras de las herramientas disponibles con QSDM son:

  • Calculate Niche Overlap Statistics:
    Permite 
    calcular el grado de solapamiento o superposición del nicho utilizando la estadística de Schoeners D y la de Warren’s I basado en las distancias Hellinger para todos las coberturas de entrada. Los valores varían de 0 a 1, lo que representa respectivamente no superposición y una distribución idéntica.
  • Range Shift
    Muestra la diferencia entre dos capas de predicción de entrada. Por ejemplo, para las condiciones actuales y condiciones futuras.

  • Create Species Richness grid: 
    Crea un nuevo raster que contiene riqueza de especies y endemismo como capas de ocurrencia de entrada.


  • Data Transformations
    Hace transformaciones rápidas de capas raster de entrada.




  • Modelado de distribución de especies: 
    Tal como lo venimos indicando, se cuenta con la posibilidad de trabajar con el  MAXENT (Máxima Entropía).



Configurando el Plugin


Lo primero que debemos asegurarnos es que tengamos instalado JAVA; del mismo modo debemos contar con la versión más reciente del Maxent y conocer la ubicación del archivo ejecutable (Maxent.jar) y también indicar nuestras carpetas de trabajo y las de salida. Todo ello debemos hacerlo dentro de las opciones de nuestra caja de herramientas de proceso.

Fig. 1: Configurando el Plugin QSDM para trabajar con MAXENT



Datos de Entrada para el MAXENT


Como datos de entrada vamos a trabajar con aquellos obtenidos en la entrada anterior, además requerimos contar con las variables ambientales, para ello podemos descargar la base de datos climática libre WorldClim; para este caso vamos a descargarlos por "tiles (Zona 33)" y corresponderá para la zona que cubra el Perú. Se recomienda descargar en formato GeoTiff.

Fig. 2: Sitio de descarga de los datos del WorldClim


Ejecutando el Modelo MAXENT


Ahora que tenemos los datos de entrada, para fines demostrativos vamos a trabajar con cinco variables: Altitud, bio1, bio5, bio6 y bio12, para conocer la descripción de las variables bioclimáticas, consultar aquí.

El paso siguiente será crear las condiciones para que el modelo Maxent pueda trabajar, por lo tanto, activamos la herramienta "Maximun Entropy Modelling" desde nuestro panel de procesos dentro del plugin. Luego debemos indicarle nuestro archivo de ocurrencias, asimismo nuestro campo que identifica a la especie y también debemos seleccionar las variables ambientales de entrada. Luego lo hacemos correr.

Fig. 3: Manejo de los archivos para trabajarlos con Maxent

Cuando se está ejecutando la herramienta, podemos notar que está convirtiendo los archivos que estaban en formato GeoTiff hacia el formato *.asc; todos ellos se van almacenando dentro de la carpeta definida previamente como "maxent_out". Ahora si podemos ejecutar la otra herramienta "Maximun Entropy Modelling (Manual Configuration)", en donde de manera similar al anterior indicamos el vector con las ocurrencias, el campo de la especie y ahora le indicamos que las variables ambientales con la extensión adecuada se ubican en otro directorio.

Fig. 4: Ajustando los valores de acuerdo a los requerimientos del Maxent.

Al correr esta aplicación nos abrirá el entorno del Maxent, en donde ya se encuentra seleccionado la ruta tanto de la tabla con la especie en estudio y las variables ambientales en el formato que Maxent lo reconoce( *.asc); asimismo, podemos verificar que la carpeta de resultados será aquella que indicamos anteriormente como "maxent_work".

Fig. 5: Entorno del Maxent listo para ejecutarse.


Al finalizar podremos apreciar todos los resultados que normalmente nos proporciona si lo trabajamos de manera independiente, pero ahora también se carga en nuestro QGIS el raster con la distribución de probabilidades.

Fig. 6: Lista de archivos como resultado del modelado.



Para efectos de visualización se ajustaron los colores de nuestro resultado obtenido.

Fig. 7: Resultado final obtenido mostrado en el QGIS.



En general el Maxent permite modelar  la  distribución geográfica  de  las  especies,  utilizando  como datos sólo  los  sitios  de  presencia (en este caso se trabajó con datos de presencia de la especie Theobroma Cacao) y las variables  bioclimáticas asociadas  a  cada  uno de  esos  puntos  de presencia. Para  modelar  las distribuciones se  basa  en  el  principio  de Máxima Entropía. Para entender mejor nuestros resultados obtenidos, recomiendo revisar principalmente las referencias 5 y 6, en ellos se profundiza el tema de una manera didáctica. Bueno por mi parte espero haber contribuido a despertar un interés sobre este tema y que experimenten con el plugin.



Referencias:

  1. https://conservationecology.wordpress.com/qgis-plugins-and-scripts/qsdm/
  2. https://conservationecology.wordpress.com/2014/05/11/macroecology-for-qgis-the-new-qsdm-plugin/
  3. https://github.com/Martin-Jung/QSDM
  4. http://www.cs.princeton.edu/~schapire/maxent/
  5. https://www.cs.princeton.edu/~schapire/maxent/tutorial/tutorial-in-spanish.doc
  6. http://www.mncn.csic.es/docs/repositorio//es_ES//Blog/Documentos_blog/apuntes-sig-modelacion.pdf