lunes, 3 de julio de 2023

Lionel Messi seen from the sky!!

Since the last FIFA World Cup everyone has been talking about Messi. But one person in Córdoba (ARG) went one step further: a drawing of Lionel Messi in the crop! So it can be seen from the sky!. To be able to see it you need to be registered to Google Earth Engine. Let's have a look!

Open the code editor and write:

//import Sentinel 2 collection
var s2 = ee.ImageCollection("COPERNICUS/S2_SR")
// Define a region
var region = ee.Geometry.Polygon([[
  [-64.27491667317739,-32.30908813533604],
  [-64.27491667317739,-32.313585635718105],
  [-64.27079680013051,-32.313585635718105],
  [-64.27079680013051,-32.30908813533604]
]])
// Filter the collection using the defined region
var filtered = s2.filterBounds(region)
// Filter by dates
filtered = filtered.filterDate('2023-01-01', '2023-01-15')
// Filter clouds
filtered = filtered.filter(ee.Filter.lt('CLOUD_COVERAGE_ASSESSMENT', 20))
// Convert the collection into a list
var ilist = filtered.toList(filtered.size())
// there are 3 images in this period, get the first one (you can also try with the others)
var i = ee.Image(ilist.get(0))
// compute a vegetation index 
var nd = i.normalizedDifference(['B8', 'B4'])
// clip with the region 
nd = nd.clip(region)
//Get the date of the image to show as the name of the image in the map
var d = i.date().format('yMMdd').getInfo()
// Get the min and max values of the vegetation index in the region we defined
var minmax = nd.reduceRegion({
  reducer:ee.Reducer.minMax(),
  geometry: region,
  scale: 10
}).getInfo()
var min = minmax['nd_min']
var max = minmax['nd_max']*0.7 // stretch
// create visualization parameters (you can play around with the palette in this section)
var vis = {min:min, max:max, palette:['pink', 'brown', 'black']}
// add layer to map
Map.addLayer(nd, vis, d)
// center scene
Map.centerObject(region, 16)

Or just use the following link: https://code.earthengine.google.com/447a24f33cedfa8a8c676d822340bb73

jueves, 14 de octubre de 2021

¡Cuidado con AirBNB en Argentina! (SEPT2021)

Hace un par de semanas planificamos una escapada familiar a un sitio cercano. Era fin de semana largo y los días iban a estar espectaculares, así que se estaba llenando todo muy rápidamente. Como he usado con anterioridad AirBNB sin ningún problema, busqué también ahí. Encontré una cabaña que no solo nos podía alojar a todos, sino que estaba en un predio de una hectárea, con un parque hermoso. El costo estaba en dólares así que para compararlo con otros alojamientos lo convertí al cambio "blue". Estaba a buen precio, así que me apresuré a reservarlo por miedo a que se alquilara mientras yo me decidía. La plataforma no te obliga, ni siquiera te recomienda, comunicarte con el anfitrión antes de reservar. Se me debitó inmediatamente el costo del alojamiento (u$s150,36), desglosado en los siguientes ítems:

(A esa fecha, el cambio (C/V) blue $182,50/186,50 y el oficial $98,18/104,18)

  • AIRBNB = $15.787,80 (105 pesos por dólar (~104,18 compra oficial))
  • DEBITO PERCEP GCIAS = $5.186,22 (32.8%) (49.39 u$s)
  • IMPUESTO PAIS S/OP. DEBITO = $4.445,05 (28.1%) (42.33 u$s)
  • TOTAL PESOS = $25.419,07
Mi cálculo había sido u$s150,36 x 186,5 = 28.042 pesos (bastante cercano al total en pesos pagado).

Hasta acá todo bien, ahora el problema...

Muy poco después de haber reservado me escribe el anfitrión a través de la plataforma para decirme que el alojamiento no estaba disponible debido a que fue afectado por una catástrofe natural (incendio), pero que (cito textual) "Tenemos problemas con airbnb en la modificación del alojamiento para dar de baja en estos periodos".

El alojamiento tenía política de cancelación completa (devuelven el total del costo del alojamiento) pero igual le pedí al anfitrión que lo cancelara para que la plataforma no alegue que era problema mío.

Cuando finalmente llegó el reembolso, el monto devuelto fue 14.841,28 pesos 🙀

Llamé enseguida a AirBNB para reclamar, pero me dijeron que ellos me devolvieron el 100% de lo que yo pagué (150.36 u$s x 98.18 = 14,762.34, bastante cerca). El problema es que no me devolvieron los impuestos que pagué.

Uno de los agentes de AirBNB me dijo que en el costo del alojamiento está incluido un seguro, para los casos en que ninguna de las dos partes puede hacer nada al respecto. Así que le dije que en este caso la "culpa" es compartida, el anfitrión debió haber sacado el alojamiento de la plataforma por no estar disponible, AirBNB está al tanto de esta situación pero no hace nada al respecto, y por último yo puede haber preguntado antes de reservar (aunque no es obligación, ni siquiera consejo.. en la repartija de culpa a mi me toca muy poca). Pero el único damnificado fui yo, y por lo tanto me correspondería que me compensaran utilizando el seguro.

A pesar de que me falta reclamar al estado para que me devuelvan los impuesto, yo me siento estafado, perdí 91,72 u$s. A esto hay que sumarle el costo de oportunidad de todo el tiempo que perdí reclamando (y el que voy a perder reclamando al estado para que me devuelvan los impuestos).

Consejos finales:

  • Que AirBNB sea su última opción
  • Si va a alquilar a través de AirBNB, siempre pregunte al anfitrión antes de reservar

miércoles, 2 de diciembre de 2020

Convert a string to a raw string in Python

The situation is the following:

1. I retrieve a string from a server and store it in a variable. 

2. The string contains newline characters ( \n )

3. I want to store the string in a file (as it is)

4. The new line characters are stored as new lines in the resulting file


So, how do I store the RAW string in a file?

And that is it! Hope it helps

lunes, 26 de octubre de 2020

Add Basemaps to QGIS without installing any plugin

Hello

I will quickly show you how to add a BaseMap to QGIS without installing any plugin.

1. you have to find a website where you can get the URLs for the basemaps. I will use this as example: https://leaflet-extras.github.io/leaflet-providers/preview/

2. choose the layer you want and copy the URL. For example, I will use ESRI World Imagery: https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x} 

3. in the Navigator window of QGIS, look for "XYZ Tiles"

4. Right click > New Connection

5. set a Name of your choice

6. pase the URL you got from step 2 into the URL text field

7. once it appears under the section "XYZ Tiles" you can add it to the map as any other layer

You can see a video of the process here: https://www.youtube.com/watch?v=3j8UaOYC-0A

Thank you for reading. Leave your comments in the comments sections

jueves, 6 de junio de 2019

Información Espacial de Argentna

Si necesitas información geográfica de Argentina como límites, zonificaciones, rutas, suelos, vegetación, u otro, existe un sitio perteneciente al estado Argentino que básicamente engloba a todos los sitios estatales que hospedan información geográfica: www.idera.gov.ar



¿Cómo usar IDERA?

Hay básicamente tres formas de utilizar esta información.

1. Visualizador
Si solo querés visualizar la información, entrando a "Visualizador" vas a encontrar un mapa interactivo con muchas capas que podrás explorar, pero no podrás descargar para procesos posteriores

2. Catálogo
En cambio, si necesitas descargar la información para procesarla localmente con algún software como QGIS u otro, tenes que entrar a "Catálogo de Metadatos", ahí podes buscar la capa que te interese, y una vez encontrada, hacés click en el nombre para ingresar. Una vez dentro, los datos se pueden obtener desde la sección "Descarga y Enlaces".

3. Servicios
Los servicios WMS y WFS se utilizan para acceder a los datos de forma remota. Los datos están en servidores que "sirven" estos datos geográficos a medida que se requieren (similar a un sitio web). Para acceder a estos servicios se puede utilizar software como QGIS. En un próximo artículo les contaré como hacerlo.

miércoles, 20 de diciembre de 2017

Nested list comprehension in Python

When you code in python, you will use list comprehension eventually. It's not hard, but when it comes to NESTED list comprehension, it's a bit tricky.

As I go through this over an over, I just write it down to help others.

CODE: (you can copy and paste in your IDE or IDLE)

Note: code syntax highligth does NOT match Python syntax highlight. I use the colors to make the relation between with and without list comprehension

#####################################################
# first list
a = [1, 2, 3, 4]

# second list
b = ['a', 'b']

# expected list
exp = ['a1', 'a2', 'a3', 'a4', 'b1', 'b2', 'b3', 'b4']

# WITHOUT list comprehension
result = []
for item_a in a:
    for item_b in b:
        result.append(item_b+str(item_a))

print('without', result)

# WITH list comprehension
result = [item_b+str(item_a) for item_a in a for item_b in b]

print('with', result)
######################################################

This is the easy one.. but what happens if we have a nested list, let's see..

#####################################################
# first list
a = [ [1, 2], [3, 4] ]

# second list
b = ['a', 'b']

# expected list
exp = ['a1', 'a2', 'a3', 'a4', 'b1', 'b2', 'b3', 'b4']

# WITHOUT list comprehension
result = []
for item_b in b:
    for list_a in a:
        for item_a in list_a:
            result.append(item_b+str(item_a))

print('without', result)

# WITH list comprehension
result = [item_b+str(item_a) for item_b in b for list_a in a for item_a in list_a]

print('with', result)
######################################################

I guess you can see the pattern =)

So, the structure will be:

[ OPERATION for #1 for #2 ... for #N]

domingo, 5 de junio de 2016

PHOTO2SHAPE - Software Open Source para pasar fotos a shape

Hola a todos nuevamente!

Cada día es más común utilizar el celular como GPS, la gente va aprendiendo a usarlo, y al ver la practicidad, lo hacen. Yo particularmente lo uso mucho para trabajar, acá les dejo un link con una app muy interesante para el trabajo en el campo:


Durante un buen tiempo estuve desarrollando un software que permita pasar un conjunto de fotos georreferenciadas (ej., una salida a campo) a un archivo geográfico en formato shapefile (.shp), keyhole markup language (.kml) o geoJSON (.geojson). Hasta ahora está compilado solo para linux (Ubuntu). Si alguien quiere y se anima a compilarlo para windows, bienvenido!

acá les dejo el link:
photo2shape ver 1.0

Espero sus aportes!
Gracias

domingo, 27 de diciembre de 2015

Cómo sacar LAS MEJORES FOTOS en el BOSQUE

Hola a todos nuevamente!

A veces me agarran rachas de inspiración y me pongo a escribir…

Los que trabajamos en el bosque muchas veces necesitamos sacar fotos, y si bien no hay limitantes para esto, podemos aprovechar las nuevas tecnologías para sacar las mejores fotos que podamos.

En el último artículo les presenté los que para mi son los pro y los contra de usar el celular o tablet como GPS (http://elgeekforestal.blogspot.com/2015/12/como-usar-el-celular-o-tablet-como-gps.html). Uno de los pro es que podemos usar el dispositivo móvil para sacar fotos. Por eso en este artículo les voy a mostrar cómo podemos utilizar el dispositivo para sacar mejores fotos en el bosque.

Prácticamente no hay chances de que estando en el bosque tengamos una situación de luz homogénea en todos lados, y por lo tanto en muchas fotos vamos a tener zonas muy oscuras y otras muy claras, dentro de la misma foto. Esto lo podemos mejorar en gran medida utilizando una función que traen algunas aplicaciones, llamada HDR. Seguramente hay muchas app que traen esta función, pero las que yo conozco son 2, la app de cámara que traen los nuevos Motorola (Moto E, Moto G, Moto X) y la app de cámara de Google (Google camera).

Básicamente lo que hace esta función es sacar muchas fotos, cada una con distinta exposición de luz, y después unir automáticamente todas para obtener la mejor foto (en lo que respecta a luz).

Esta es una foto sacada SIN HDR:



Y esta es la misma foto sacada CON HDR:


Podrán ver que la diferencia entre ambas fotos es muy grande, y todo gracias al HDR. Obviamente que esta función no solo sirve para sacar fotos en el bosque sino para cualquier situación en la que tengamos grandes diferencias de luz en la misma toma.

Les dejo el link del video que hice en el cual muestro como hacerlo y los resultados obtenidos.



Algo a TENER EN CUENTA es que usar esta función consume más batería que lo normal (era uno de los "contra" mencionados en el post anterior).

Bueno, espero que les sirva!
Y si quieren,
COMPARTAN
COMENTEN
SUSCRIBANSE!

Gracias y hasta la próxima!

lunes, 14 de diciembre de 2015

Cómo usar el CELULAR o TABLET como GPS de campo (Android) - Locus Free

Hola a todos y bienvenidos nuevamente!!


En esta oportunidad les voy a dejar una serie de tutoriales en los cuales les muestro como usar los celulares o tablets con android como GPS de campo.

Para los que no les gusta leer les dejo el link del video:

https://www.youtube.com/playlist?list=PLnckoVQACueRiCCO_FI_dIuKf2zM5HaV8


Para los que sí leen, les voy a exponer los que para mi son los pro y los contra de usar un dispositivo móvil como GPS:


Pro


  • La precisión ya ha alcanzado a la de los GPS tradicionales (3 m máximo)
  • Podemos tener varios dispositivos que normalmente se llevaban por separado en un sólo dispositivo (cámara de fotos, brújula, clinómetro, barómetro, etc), aunque esto depende del dispositivo.
  • Podemos ver documentación o bibliografía en el lugar.
  • Podemos utilizar otro tipo de datos como imágenes satelitales, curvas de nivel, modelos digitales de elevación, etc.
  • Tenemos una gama de interfaces y opciones mucho más amplia (distintas apps según el uso que queremos darle)
  • Tienen un bajo costo si consideramos que tenemos varios dispositivos en uno.


Contras


  • La primer gran desventaja es la batería, principalmente si usamos celulares. Por experiencia personal puedo decirles que un celular puede llegar a durar medio día con un uso medio a alto, mientras que una tablet puede llegar a durar todo el día. Sin embargo, si la tareas de campo llevan más de un día deberían considerar este punto. Para “solucionarlo” podríamos utilizar baterías externas y cargadores en los vehículos o solares.
  • Suelen ser más frágiles que los GPS tradicionales.
  • Pueden ser incómodos para transportar (tablets).
  • Si tenemos algún problema y no lo podemos usar, nos quedamos sin nada.


Bueno, dicho esto, les cuento que la app que yo elegí para usar en el campo (por ahora al menos) se llama Locus Free (https://play.google.com/store/apps/details?id=menion.android.locus&hl=es_419).


Acá les dejo la lista de reproducción donde explico algunas cosas de la app, espero que les guste y por sobre todo les sirva!


https://www.youtube.com/playlist?list=PLnckoVQACueRiCCO_FI_dIuKf2zM5HaV8


Espero sus comentarios!
Si les gustó pueden compartilo!
Gracias


Hasta la próxima

lunes, 2 de noviembre de 2015

Ley de Bosques Nativos Argentina - MAPA de ubicación, montos y titulares de proyectos

Hola a todos nuevamente,

Para los que no están en el tema forestal voy a hacer una breve introducción. El que quiera ir directamente a la parte del mapa hacer click acá.

Introducción

ARGENTINA. En el año 2009 se reglamenta la ley de presupuestos mínimos de protección ambiental de los bosques nativos (Ley N° 26.331) mediante el Decreto N° 91/2009.

En el marco de la ley, las provincias deben clasificar a sus bosques nativos en 3 categorías de conservación diferentes, y “pintar” en el mapa a los bosques según la categoría que le corresponde a cada uno. Esto se denominó Ordenamiento Territorial de los Bosques Nativos (OTBN). La clasificación es la siguiente:
  1. Conservación: es la categoría I y está pintada de rojo. Dentro de esta categoría están los bosques que la Provincia determinó que, en ellos, no se pueden realizar actividades productivas de alto impacto, en especial las de extracción de madera. Sí están permitidas actividades como la explotación turística, obtención de productos no madereros, restauración.
  2. Manejo Sostenible: es la categoría II y está pintada de amarillo. Son los bosques sobre los cuales la Provincia determinó que se pueden hacer actividades productivas de mediano impacto, incluidas las de extracción de madera, pero deben ser sostenibles, es decir, asegurar la persistencia del bosque y asegurar que sigan brindando los servicios ambientales, sin disminuir el valor ecológico que este tiene.
  3. Cambio de uso: es la categoría III y está pintada de verde. Son los bosques que la Provincia determinó que puede hacerse un cambio de uso, enmarcado siempre en un Plan que lo justifique.


Durante el transcurso de los primeros años la mayoría de las Provincias presentaron sus Ordenamientos, excepto algunas….

A partir de que las Provincias cuentan con el OTBN, pueden acceder a los fondos disponibles (subsidio) a través de la ley, con el objetivo de mantener o mejorar los servicios ambientales que brinda el bosque.

El decreto a su vez dice que toda actividad que se realice en el bosque nativo debe estar enmarcada en un Plan de Manejo o un Plan de Conservación o un Plan de Cambio de Uso, según la categoría que le corresponda, de acuerdo al Ordenamiento que elaboró la Provincia.

Para acceder a estos fondos, los usufructuarios (propietarios o no) del bosque deben presentar un proyecto que será elegido (o no) para ser financiado por la Autoridad Provincial de Aplicación de la ley (la Provincia).

Estos proyectos pueden ser de dos tipos diferentes:
  1. Proyectos de Formulación: utilizarán los fondos para formular alguno de los 3 tipos de Planes admitidos, a saber:
    1. Plan de Conservación (PC): Conservación en categoría I, II o III del OTBN.
    2. Plan de Manejo (PM): Manejo sostenible en categoría II o III del OTBN.
    3. Plan de Cambio de Uso (PCU): Cambio de Uso sólo en categoría III del OTBN.
  2. Proyectos de Implementación: utilizarán los fondos para implementar tareas enmarcadas en  un PM o PC o PCU, según corresponda.

Recientemente la Dirección de Bosques de la Nación publicó un mapa interactivo en el cual podemos ver todos los proyectos presentados hasta el momento en las diferentes Provincias que cuentan con el OTBN, en el cual, además de ver un punto en la ubicación de cada uno, podemos ver también el tipo de proyecto y el monto asignado a cada uno.

Acá les dejo el link:



Bueno, espero que les resulte tan interesante como a mi.

Si les gustó no se olviden de compartirlo y comentar a gusto.
Hasta la próxima!

viernes, 23 de octubre de 2015

Ayudemos a mejorar QGIS !! - Encuesta oficial

Hola nuevamente,

El sitio oficial de QGIS ha lanzado una encuesta para que los usuarios (o sea, nosotros) ayudemos a mejorar el software.

Les dejo el link para completar la encuesta en español.

http://blog.qgis.org/2015/10/16/take-the-qgis-user-survey-in-spanish/

A colaborar!

Después pueden leer la sección SIG de mi blog haciendo click acá.

Hasta la próxima!


viernes, 9 de octubre de 2015

SAS Planet - Poner fotos georreferenciadas en el mapa como marcadores

Hola a todos nuevamente!

En esta oportunidad les voy mostrar cómo poner fotos georreferenciadas, es decir que contienen la información geográfica del lugar donde fueron tomadas (punto GPS), en SAS Planet, como si fueran marcadores. Estas fotos son las que generalmente tomamos con nuestros dispositivos móviles que tienen GPS (celulares o tablets).

Acá les dejo el videotutorial: Link

Espero que les sea útil.
Si les gustó por favor compartan, comenten, delen me gusta, etc etc etc. 

Hasta la próxima!

jueves, 1 de octubre de 2015

Nueva versión de SAS Planet - SEPT 2015 - NOVEDADES

Hola a todos nuevamente!

Hace muy poco ha salido una nueva versión de SAS Planet y quisiera compartir con ustedes las novedades. Si bien no son muchas, básicamente agregaron el primer geoproceso que puede realizar este magnífico Software.

Acá les dejo el link del videotutorial:
https://youtu.be/Wul1wTGPy2o

El geoproceso que podremos realizar con la nueva versión involucra el uso de polígonos.
Podemos obtener:
- la unión
- la intersección
- la diferencia
- la exclusión
entre dos polígonos (no recomiendo más de dos).

Espero que les sea útil.
Acá les dejo el link a los otros artículos relacionados:

SAS Planet #1

SAS Planet #2

SAS Planet #3.

Hasta la próxima!