надежные брокеры бинарных опционов
алиэкспресс на русском языке официальный сайт

Tratame bien!

Tratar imágenes satelitales suele obligarnos a utilizar paquetes de software propietarios (cerrados!) desarrollados para tal fin. Estas aplicaciones suelen tener una universo de funcionalidades tan inmenso que no solo marean al usuario inexperto (como yo) sino que para tareas muy específicas termina siendo más complejo adaptarnos al “bendito” programa que resolver el problema en cuestión.

Si bien ya soy bastante manso, un dejo de rebeldía adolescente y la inquietud de una divina amiga franchuto-argentina me llevó a indagar otro tipo de solución.

Por suerte existe Python. Un lenguaje en el que se pueden hacer muchas cosas respetables, sabiendo muy poco del mismo (bue, tampoco es que yo soy muy respetuoso). El tema es que usando PyRaster -una colección de herramientas basadas en Python- se puede procesar eficientemente imágenes raster. Esta herramienta usa la Librería de Abstracción de Datos Geoespaciales GDAL (Geospatial Data Abstraction Library) para leer/escribir alrededor de 100 formatos de imágenes y tratarlos como una matriz estándar, por lo que, independientemente del formato se utilizan los mismos procesos.

Instalación

Descargar el módulo PyRaster de acá y luego importalo desde el programa principal.

Dependencias

-No me digás que tenés que tener instalado Python?
-Obvio querid@, (probado con la versión 2.6 sin problemas), pero además se debe instalar:

  • Numerical Python: Numpy 1.2.1 or greater
  • Pyhon bindings for GDAL: python-gdal 1.5.4 or greater

En debian/ubuntu:

#aptitude install python-numpy python-gdal

Aprendiendo a leer y escribir

En el siguiente código se lee la imagen prueba0.img (una imagen Erdas Imagine .img de formato HFA) y se obtienen los metadatos (header o información general sobre la imagen), así que los valores de todos los píxeles de la banda/layer 1 de la imagen en forma de matriz. Al final, y se muestra en pantalla el pixel de la fila 0, columna 1.

import rasterIO

file_pointer = rasterIO.opengdalraster(‘prueba0.img’)
driver, XSize, YSize, proj_wkt, geo_t_params = rasterIO.readrastermeta(file_pointer)
kelvin_band = rasterIO.readrasterband(file_pointer, 1)
print kelvin_band[0][1]

Y bue, así se hace eso que dije. Justo iba a escribir algo trascendental pero me acabo de quedar sin tinta.

  1. aguanteeeee :mrgreen:

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Social Widgets powered by AB-WebLog.com.

Social Widgets powered by AB-WebLog.com.

Social Widgets powered by AB-WebLog.com.