O gdal2tiles.py fornece o ERRO 6 sobre o EPSG: 900913 na nova instalação do Ubuntu 14.04

8

Eu tenho uma nova instalação do Ubuntu 14.04. Eu instalei o gdal com sudo apt-get install gdal-bin python-gdal. Depois disso, tenho: GDAL 1.10.1, lançado em 26/08/2013 .

Estou tentando exibir as imagens de radar meteorológico da NOAA . A seguir, estão minhas etapas e a mensagem de erro exibida.

$wget http://radar.weather.gov/ridge/Conus/RadarImg/latest_radaronly.gif
$wget http://radar.weather.gov/ridge/Conus/RadarImg/latest_radaronly.gfw
$gdal_translate -of vrt -expand rgba ./latest_radaronly.gif temp.vrt
$cp ./latest_radaronly.gfw ./temp.wld
$gdal2tiles.py -s EPSG:3857 -w none -r near -z 3-5 -n ./temp.vrt ./temp/

Os erros mostrados são então:

ERROR 6: EPSG PCS/GCS code 900913 not found in EPSG support files.  Is this 
a valid EPSG coordinate system?
ERROR 6: No translation for an empty SRS to PROJ.4 format is known.
ERROR 6: No translation for an empty SRS to PROJ.4 format is known.
Generating Base Tiles:
ERROR 5: Illegal values for buffer size
ERROR 5: Illegal values for buffer size

A partir desse erro, parece que há um problema com o formato EPSG: 900913 (google). É por isso que eu defino especificamente -s EPSG:3857.

Tudo isso deve funcionar. Eu fiz as etapas acima a partir do zero, porque tenho um servidor mais antigo (ubuntu 12.04) em que atualmente estou fazendo isso sem erros. Depois de atualizar para o 14.04, o erro acima aparece. Estou tentando encontrar o motivo do erro. Uma pesquisa no google pela mensagem de erro resulta em algum tráfego antigo da lista de e-mails que não eram sobre o ubuntu ou tinham outros problemas.

Como observação, também tentei criar a partir da fonte e não houve alterações nos erros exibidos.

hazzey
fonte
4
É um script python e você pode abrir o arquivo e editar 900913 no 3857 em todos os lugares. No GDAL 2.0.1, esta correção está incluída. O principal motivo é provavelmente que o Proj4 mais recente não vem com o código 900913 falso.
user30184
3
@ user30184 Acho que seu comentário vale uma resposta completa.
ANDREJ
Substituir o código no arquivo gdal2tiles.py funciona.
hazzey

Respostas:

15

Indo do que @ user30184 disse no comentário.

Esse problema é que o script gdal2tiles.py diz ao gdal para gerar 'mercator' como EPSG: 900913 . Isso é bom, desde que ele saiba como converter para isso.

A correção é alterar a seguinte linha em gdal2tile.py (linha 785):

if self.options.profile == 'mercator':
    self.out_srs.ImportFromEPSG(900913)

para:

if self.options.profile == 'mercator':
    self.out_srs.ImportFromEPSG(3857)

Essa alteração permite que o gdal2tiles.py seja executado sem erros.

hazzey
fonte
local. obras para a versão mais recente do gdal (diferente número de linha) no Ubuntu 16.04.4 upvoted :)
gil tony