terça-feira, 29 de maio de 2012

converção de linha/coluna de uma imagem geotif para lat/long

Depois de pesquisar um pouco como fazer para extrair as coordenadas de um píxel utilizando Python  e GDAL conseguí aproveitar as dicas publicadas em:

fonte: http://stackoverflow.com/questions/2922532/obtain-latitude-and-longitude-from-a-geotiff-file

e testei da seguinte maneira:

>>> from osgeo import gdal
>>> from osgeo.gdalconst import *
>>> import numpy, sys
>>> ds = gdal.Open('/home/fmorelli/testes/b250_EV_250_Aggr1km_RefSB_b0.tif', GA_ReadOnly)
>>> print ds.GetGeoTransform()
(-65.60666969799999, 0.01, 0.0, 11.845001666000002, 0.0, -0.01)
>>> gt = ds.GetGeoTransform()
>>> linha, coluna = 0,0
>>> gt[0]+coluna*gt[4]+linha*gt[5] # valor da longitude -65.606
>>> gt[3]+coluna*gt[4]+linha*gt[5] # valor da latitude 11.845

Agora falta fazer uma função pra ficar bonito ...