43 votos

Cómo proyectar la trama 0 360 a-180 180 con el meridiano 180 corte

Tengo un geotiff imagen de trama que tiene un sistema de coordenadas con longtitudes de 0 a 360. El centro horizontal de la imagen es de 180 longtitude. Ver la imagen de abajo:

enter image description here

Quiero transformar en EPSG:4326 SRS con -180 180 longtitude gama. Y quiero que el centro de la imagen en el meridiano de Greenwich (0). Supongo que esto srs es muy ampliamente utilizado. Espero que el resultado se vea como esto:

enter image description here

Por lo que uso una gdalwarp comando para reproyectar:

gdalwarp -s_srs '+proj=latlong +datum=WGS84 +pm=180dW' -t_srs EPSG:4326 test_col.tif test_4326.tif

Pero sólo obtengo un archivo tiff con grandes dimensiones (más píxeles) y EPSG:4326 metadatos. La imagen de sí mismo tiene el mismo aspecto, como el inicial. Pero espero que se de intercambio de los hemisferios.

La pregunta es - ¿cómo puedo gdalwarp una imagen estrictamente -180 180 EPSG:4326 con el centro en 0 longtitude?

Este es gdalinfo de mi archivo inicial:

Origin = (-0.102272598067084,89.946211604095552)
Pixel Size = (0.204545196134167,-0.204423208191126)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  INTERLEAVE=BAND
Corner Coordinates:
Upper Left  (  -0.1022726,  89.9462116) (  0d 6' 8.18"W, 89d56'46.36"N)
Lower Left  (  -0.1022726, -89.9462116) (  0d 6' 8.18"W, 89d56'46.36"S)
Upper Right (     359.897,      89.946) (359d53'50.18"E, 89d56'46.36"N)
Lower Right (     359.897,     -89.946) (359d53'50.18"E, 89d56'46.36"S)
Center      ( 179.8975000,  -0.0000000) (179d53'51.00"E,  0d 0' 0.00"S)

Este es gdalinfo después de gdalwarp

Origin = (-180.102727401932952,89.946211604095552)
Pixel Size = (0.091397622896436,-0.091420837939082)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  (-180.1027274,  89.9462116) (180d 6' 9.82"W, 89d56'46.36"N)
Lower Left  (-180.1027274, -89.9699975) (180d 6' 9.82"W, 89d58'11.99"S)
Upper Right ( 179.8211116,  89.9462116) (179d49'16.00"E, 89d56'46.36"N)
Lower Right ( 179.8211116, -89.9699975) (179d49'16.00"E, 89d58'11.99"S)
Center      (  -0.1408079,  -0.0118929) (  0d 8'26.91"W,  0d 0'42.81"S)

31voto

Frank Warmerdam Puntos 1001

Usted podría establecer explícitamente las coordenadas de salida en el rango con el objetivo de grado opción para gdalwarp (es decir. "-te -180 -90 180 90"), pero también se puede utilizar el CENTER_LONG opción de configuración para forzar el ajuste alrededor de una nueva central de longitud. Algo como esto:

  gdalwarp -t_srs WGS84 ~/0_360.tif 180.tif  -wo SOURCE_EXTRA=1000 \
           --config CENTER_LONG 0

Tenga en cuenta también la "SOURCE_EXTRA=1000" urdimbre opción. Cuando se hace el ajuste, el rectángulo de origen cálculo se confunden alrededor de la longitud de la interrupción y perder algunas imágenes. Esta opción dice que sacar algo extra. Sin ella, aparecerá una brecha de datos cerca de el meridiano de greenwich.

PS. configuración de un meridiano de 180dW como lo hizo no es una buena idea en mi humilde opinión.

6voto

sgwill Puntos 2444

Básicamente, usted necesita para cortar la trama en dos partes y piezas de nuevo juntos, con un nuevo desplazamiento/escala.

Hay un ejemplo de cómo hacerlo desde [-180,180] a [0,360] con gdal_translate y la VRT controlador: http://trac.osgeo.org/gdal/wiki/UserDocs/RasterProcTutorial

Escanear a "5 min tutorial" y los detalles están bajo "Archivos Virtuales". Debe ser lo suficientemente simple para modificar el ejemplo para adaptarse.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X