sábado, 27 de mayo de 2017

Unidos Mapillary con QGIS - Probando go2mapillary












Decidí probar el recientemente lanzado plugin denominado go2mapillary, por lo tanto, lo primero que hice fue registrarme en la página de Mapillary, confieso que no conocía mucho de este proyecto, por eso estuve investigando (ref 1ref2), sobre todo porque mi idea era cargar mis propias imágenes y luego probar el plugin, por también recomiendo revisar  "Get started with Mapillary" para los que se inician como yo.


Registrando vistas con Mapillary


Con la facilidad de que podemos descargarlo a nuestro celular, una vez instalado y registrado, me subí a mi bicicleta y prepare mi celular para captar en modo vídeo con Mapillary mi recorrido. Una vez instalado en tu celular veremos que estamos listos para iniciar la grabación, solo apretamos donde dice "Capture" (Figura 1). Lo que me pareció interesante es que una vez subido tu recorrido, el usuario que registraste se muestra en dicho recorrido grabado, ayudando con ello a una mejor identificación. 

Figura 1: Aplicativo Mapillary desde el celular listo para grabar.


Ahora si podemos realizar nuestra grabación, en mi caso hice un pequeño recorrido, de los que acostumbro hacer casi todos los días en mi bicicleta, luego de ello logre subirlo al aplicativo y con un correo me comunicaron que mis imágenes ya están publicadas. Luego lo comprobé desde mi celular y este es el resultado.

Figura 2: Resultado luego de subir lo grabado a Mapillary


Usando el go2mapillary en QGIS


Ahora nuestro objetivo principal es ver el recorrido realizado dentro del QGIS, para ello instalé el plugin, el cual lo pueden descargar desde el repositorio de plugins (go2mapillary), si no lo ubican desde el administrador de complementos.

Bueno luego es todo sencillo, en nuestra barra de herramientas podemos ver el icono del plugin y al activarlo nos va a generar un panel en donde podremos apreciar la imágenes. Ahora solo buscamos la zona de nuestro recorrido, para ello se recomienda usar un fondo que nos permita ver las calles; luego de identificar nuestro recorrido con el identificador de objetos nos posicionamos en un punto (de preferencia al inicio de nuestro recorrido) y al hacer un clic derecho veremos unos códigos, hacemos clic en uno de ellos, con ello aparecerá en un panel la imagen del sitio.


Figura 3: Identificando un punto para visualizar el recorrido.


Finalmente, dentro del panel de las imágenes, podemos hacer clic en el botón de "Play" y veremos todo nuestro recorrido en una secuencia de vídeo, la que se irá mostrando en el mapa nuestro avance. 

Figura 4: Resultado de nuestro recorrido dentro del QGIS

Otro detalle que apreciamos es el hecho que se generan capas vectorial de tipo línea en nuestro panel de capas, identificando nuestros puntos que describen nuestro recorrido.

Figura 5: Detalle de la tabla de atributos del recorrido.

Lo interesante y útil es la posibilidad de poder exportar estos datos a otros formatos de tipo vectorial, como por ejemplo los de tipo GPX para intercambio de datos con los GPS.

Bueno espero que lo puedan probar y claro agradecer al autor enrico ferreguti por su contribución. Hasta otra oportunidad.







viernes, 5 de mayo de 2017

QGIS + GIMP para vectorizar una Imagen del Sentinel-2











En esta oportunidad vamos a tratar sobre el plugin denominado "Gimp Selection Feature", el cual fue desarrollado por  Luís Motta para el IBAMA (Brazilian Institute of Environment and Renewable Natural Resources). En general esta herramienta logra establecer un enlace con el programa de gráficos Gimp y convierte una selección de una imagen en formato shapefile.

Nuestro objetivo será extraer algunos polígonos de una imagen proveniente del Sentinel-2, el cual comprende una zona del norte del territorio peruano, si desean reproducir el ejercicio, la imagen la pueden descargar desde aquí.

Uso del Gimp Selection Feature

Una vez instalado el plugin, desde nuestro administrador de complementos, en nuestro QGIS lo vamos a poder activar como una herramienta dentro de "Ráster" en la barra de menús, asimismo se veremos un icono en la barra de herramientas.

Figura 1: Ubicación del plugin instalado.

Es importante tener en cuenta que debemos tener instalado previamente el programa Gimp, el cual lo van a poder descargar e instalar desde aquí, actualmente se cuenta con la versión 2.8.20. Cuando abrimos el Gimp, debemos apreciar a IBAMA en la barra de menú.

Figura 2: Verificación de la herramienta en Gimp


Ahora una vez que lo activemos aparecerá un panel específico del plugin, el mismo deberá acoplarse dentro de los ya existentes para una mejor visualización de las opciones existentes. Dentro del panel podremos observar dos bloques en general, el primero denominado "Image" y el segundo "Transfer".


Figura 3: Mostrando el panel del plugin y sus opciones


Una vez que tenemos la imagen sobre nuestro lienzo (canvas), primero hacemos clic en "Set current", con ello se está seleccionando para de la imagen con el cual trabajaremos y sobre el cual vamos a extraer los polígonos, es decir nuestro ROI; posteriormente en el otro bloque hacemos clic en el botón "Send image", para que se traslade dicha zona de interés al Gimp, tal como se muestra en la Figura 3. Si nos vamos al Gimp podremos apreciar nuestra imagen recortada sobre el área de dibujo.

Figura 4: Imagen del Sentinel-2 dentro del Gimp


Dentro del Gimp empezaremos a usar las herramientas que contiene, dentro de su panel denominado "Caja de herramientas", podemos usar la "varita", el cual indica que realiza una selección difusa, es decir que selecciona una zona por su color, tal como se aprecia en la Figura 5, lo vamos hacer en tres lugares, teniendo en cuenta que para seguir agregando áreas, es importante que señalemos dentro de las opciones de la herramienta, lo que corresponde a "añadir a la selección actual".


Figura 5: Seleccionando polígonos dentro de la imagen.

Podemos seguir seleccionando polígonos, pero para el ejemplo solo serán esos tres, aunque les recomiendo también usar la herramienta del Gimp denominada "herramienta de selección libre", lo que nos permite ajustar mejor nuestra selección, incluso agregar zonas continuas que no necesariamente tienen el mismo color, realizar esto a manera de práctica sería interesante.

Ahora de regreso al QGIS, haremos que dichos polígonos se trasladen como una nueva capa vectorial en el QGIS, para ello nos vamos al panel y hacemos clic en el botón "Get features", podremos apreciar los polígonos sobre nuestra imagen, se recomienda luego guardarlos como shapefiles.

Figura 6: Polígonos extraídos de la imagen desde el Gimp al QGIS


Finalmente, luego de convertirlo a un formato tipo Esri Shapefile, podremos apreciar que en su tabla de atributos existen campos que indican la ruta de la imagen trabajada, la fecha y el sistema de referencia.

Figura 7: Campos generados de la nueva capa vectorial


Bueno, nuestro objetivo principal se cumplió, espero que lo puedan probar y si pueden lo comentan.

Para que puedan apreciar mejor de cómo funciona, les recomiendo revisar el siguiente vídeo: QGIS + Gimp: Vetorização de imagens Sentinel-2 com o plugin do Ibama ; asimismo una pequeña presentación del autor: Gimp Selection Feature Plugin QGIS


jueves, 4 de mayo de 2017

Compartiendo Mapas con Google Drive y QGIS - GooGIS





Recientemente ha sido lanzado un plugin (experimental) del QGIS denominado GooGIS, lo que sería un proveedor de datos de Google Drive para QGIS. Me pareció interesante, por ello lo estuve probando y quería compartir con ustedes las opciones de uso de este plugin.

Características del Plugin GooGIS


Logra mantener una sincronización entre una capa de memoria local y una hoja de cálculo de una unidad de google remota, proporcionando un entorno  "peer to peer o red de pares" simple, para compartir y editar contenidos geoespaciales con otros usuarios. Sólo se requiere una cuenta de Google válida.

La estructura de datos de la capa QGIS (geometría y atributos) se almacena en una hoja de cálculo de Google remota. El plugin administra los derechos de lectura/escritura en la capa, asimismo, controla el acceso y edición de datos simultáneos y sincroniza la tabla local y remota al inicio/fin de la edición. Muchos usuarios pueden ver y modificar simultáneamente datos espaciales sin conflictos.


Conectándose al Google Drive.


Como primer paso en el QGIS vamos a instalar el plugin GooGIS, desde nuestro administrador de complementos, asumiendo que contamos con una cuenta Google.


Figura 1: Plugin GooGIS instalado


Cuando se instala se inserta dentro de la barra de menús "Vectorial", se encuentra como "Google Drive Provider", también se localiza en la barra de herramientas con su propio icono. Al hacer clic sobre el icono, solicita ingresar nuestra cuenta de Google para su validación.

Figura 2: Ventana para ingresar nuestra cuenta válida de Google


Luego te pedirá confirmar nuestra cuenta o seleccionar entre otras cuentas que podamos tener, para que después te indique los cambios a realizarse y nuestro permiso para que se ejecute.

Figura 3: Confirmando nuestra cuenta Google para que trabaje con el plugin



Listo, ahora ya podemos trabajar con el plugin, en esta oportunidad vamos a trabajar con una capa vectorial (prov_huaraz_poly1.shp). 

Figura 4: Capa vectorial de ejemplo para compartirlo con GooGIS.



Una vez activado el plugin, vamos a hacer clic en la opción de "export to GDrive", y escogemos nuestra capa vectorial.

Figura 5: Exportando nuestra capa al Google Drive


Al contar con la capa dentro de nuestro Google Drive, si deseamos podemos consultar nuestra cuenta y veremos una hoja de cálculo y una imagen que representa la capa. Ahora lo que vamos hacer es dar los permisos para compartir, en este caso vamos a indicarle que cualquiera puede leer/escribir, es decir que lo pueden editar, para ello activamos la casilla que lo indica; posteriormente vamos a apreciar que se coloca un icono de tipo "world icon"; pero en caso nosotros le indicamos las cuentas con las que requerimos compartir, el icono cambia a un tipo de "group icon".


Figura 6; Indicando los permisos de lectura y escritura para nuestra capa

Si aprecian la Figura 6, verán que existe la información relacionada a la capa, tales como la cuenta Google del creador, el nombre de la capa y algo importante, el código ID (18FwSiQGGQc-nmq7YLY6U8TFMPjKOKWRkvx_YBXb7VLo), el mismo que podrá ser usado para que pueda ser importada por otros y de acuerdo a los permisos otorgados, podrán ser editados. Por lo tanto, en mi caso, como tengo otra cuenta Google, para hacer la prueba, instalé en otra máquina con QGIS el plugin, realizando los mismos pasos, y al activar el plugin, lo que voy hacer ahora es importar la capa por ID.


Figura 7: Incorporando una capa ingresando el código ID generado por el creador


Ahora que tenemos la capa en otro equipo, mostrando el "world icon", se realizó una edición adicionando una columna de datos (count).

Figura 8: Visualización en otro equipo de la capa compartida


Luego nos queda es actualizar (refresh), para que desde nuestro equipo podamos visualizar el cambio realizado, existiendo también la opción desde la capa, haciendo clic derecho, el de sincronizar con Google Drivees. Es importante tener en cuenta que la actividad de lectura/escritura tanto local como remota se informa en la barra de mensajes de QGIS. Finalmente en nuestro equipo inicial veremos los cambios.

Figura 9: Visualización en el equipo inicial de las modificaciones realizadas.


Con todo lo realizado se logró el objetivo de compartir nuestros datos con cualquiera que tenga el ID, pero en caso de que se comparta con una lista seleccionada, a cada uno de ellos les llegará un correo indicándole las opciones de edición, lo que significa que se puede trabajar de manera colaborativa un mismo proyecto. Espero que lo puedan probar y comenten como les fue.

Para mayor información les recomiendo consultar el siguiente link, en ella encontrarán algunos códigos ID de ejemplo para que lo prueben.









miércoles, 3 de mayo de 2017

Opciones de QGIS para adicionar los servicios de ArcGIS Online - Parte 2


Ahora vamos a continuar con los dos procedimientos pendientes de la entrada anterior.

3. Consulta a los Servicios ArcGIS

Paso 1: En primer lugar debemos ingresar al enlace o capa URL con el que venimos trabajando http://sampleserver6.arcgisonline.com/arcgis/rest/services/Census/MapServer/3, Luego nos iremos hasta el final donde se indica la posibilidad de hacer una consulta (Query).


Figura 1: Activando la opción de consulta sobre la capa seleccionada.

Paso 2: Ahora veremos que nos aparece un panel o formulario de consulta, desde aquí podemos realizar una consulta SQL, con la finalidad de extraer información de dicha capa. En primer lugar en la parte de "Where", vamos a colocar 1=1, lo que significa que estamos llamando a todas las entidades presentes o almacenados en esta capa.

Figura 2: Ingresando valores a los campos dentro del panel de consulta

Paso 3: Luego debemos indicarle en el campo denominado "Out Fields", que requerimos considerar a todos los campos contenidos en la capa, para ello ingresamos "*". También debemos asegurarnos que esté activado (TRUE) la casilla que indica el retorno de la Geometría. Ahora debemos indicarle el formato de salida, el mismo puede ser JSON o también GeoJSON, para que finalmente hagamos clic en "Query (GET)".


Figura 3: Completando la información mínima requerida en el panel de consulta

Paso 4: Luego de realizar una consulta vamos a apreciar que en nuestro navegador se mostrará en formato JSON el detalle de los campos de información solicitada en dicha consulta. Ahora vamos a copiar el enlace (URI) para que dentro del QGIS podamos mostrar la capa. Para ello solo tenemos que "Añadir una capa vectorial" y en la ventana que nos aparece, seleccionar "Protocolo", luego indicar que dicho Protocolo sea de tipo GeoJSON y en el campo URI, pegar el enlace generado y hacer clic en Abrir.

Figura 4: Añadiendo una capa vectorial en QGIS con el protocolo GeoJSON 
producto de la consulta realizada

Paso 5: Como último paso, debemos comprobar que la capa que se muestra contenga todos los campos de información, de la misma manera que se obtuvo con los demás procedimientos, para ello solo bastará con abrir la tabla de atributos. 

Figura 5: Resultado obtenido al añadir la capa vectorial como una consulta en formato GeoJSON.


Con los procedimientos mostrados, ustedes podrán luego guardarlo como un Esri Shapefile, para que lo puedan tener entre sus archivos.

4. Uso del QuickMapServices.

Una vez que tenemos instalado el plugin QuickMapServices, el cual ha sido creado por NextGIS, vamos a poder contar con la opción de cargar servicios Web, con capas que se mostraran como mapas base de buena calidad. 

Figura 6: Instalando el plugin QuickMapServices

Ahora si nos vamos a nuestra barra de menús, dentro de Web, veremos al plugin y desde donde podremos desplegar los servicios disponibles, entre ellos observamos a los de Esri.


Figura 7: Mostrando los servicios ofrecidos por Esri


Con ello simplemente hacemos clic en el tipo de servicio que requerimos (Por ejemplo: ESRI Ocean) y con ello aparecerá en nuestro panel de capas.

Figura 8: Incorporando un mapa base denominado ESRI Ocean



Con el plugin podemos adicionar otros servicios, para mayor detalle de cómo hacerlo, recomiendo consultar la referencia 3 y 4.

Muy bien, con esto completo los procedimientos que se mencionaron para lograr adicionar desde QGIS los servicios disponibles por Esri.

Referencias Consultadas: