1 votos

GDAL_Translate corrompe una imagen bitmap grande

Estoy intentando traducir un mapa de bits grande (60000 x 25000) con GDAL_Translate pero parece que corrompe la imagen. Esto funciona bien para las imágenes más pequeñas, pero tiene resultados extraños con los más grandes.

Puedo ver la imagen en WildBit visor antes de traducir y no tiene la corrupción. Después de la traducción, la parte superior de la imagen parece ser una repetición de la parte inferior de la imagen. ¿Hay alguna forma de evitarlo?

He probado la opción -co BIGTIFF=YES y no tiene ningún efecto.

Mis argumentos:

gdal_translate.exe -of GTiff -a_nodata 0 --config GDAL_DATA "*data path*" -a_ullr tlX tlY brX brY -a_srs EPSG:3857 InputPath OutputPath

El resultado final

corrupted image

GDALInfo de la imagen de entrada

Size is 63264, 24960
Coordinate System is `'
Corner Coordinates:
Upper Left  (    0.0,    0.0)
Lower Left  (    0.0,24960.0)
Upper Right (63264.0,    0.0)
Lower Right (63264.0,24960.0)
Center      (31632.0,12480.0)
Band 1 Block=63264x1 Type=Byte, ColorInterp=Red
Band 2 Block=63264x1 Type=Byte, ColorInterp=Green
Band 3 Block=63264x1 Type=Byte, ColorInterp=Blue

GDALInfo de la imagen de salida

Size is 63264, 24960
Coordinate System is:
PROJCS["WGS 84 / Pseudo-Mercator",
    GEOGCS["WGS 84",
        DATUM["WGS_1984",
            SPHEROID["WGS 84",6378137,298.257223563,
                AUTHORITY["EPSG","7030"]],
            AUTHORITY["EPSG","6326"]],
        PRIMEM["Greenwich",0,
            AUTHORITY["EPSG","8901"]],
        UNIT["degree",0.0174532925199433,
            AUTHORITY["EPSG","9122"]],
        AUTHORITY["EPSG","4326"]],
    PROJECTION["Mercator_1SP"],
    PARAMETER["central_meridian",0],
    PARAMETER["scale_factor",1],
    PARAMETER["false_easting",0],
    PARAMETER["false_northing",0],
    UNIT["metre",1,
        AUTHORITY["EPSG","9001"]],
    AXIS["X",EAST],
    AXIS["Y",NORTH],
    EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],
    AUTHORITY["EPSG","3857"]]
Origin = (-8500416.405268350600000,4435398.925636629600000)
Pixel Size = (0.149300716298692,-0.149018012050865)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  (-8500416.405, 4435398.926) ( 76d21'37.94"W, 36d58'24.22"N)
Lower Left  (-8500416.405, 4431679.436) ( 76d21'37.94"W, 36d56'48.10"N)
Upper Right (-8490971.045, 4435398.926) ( 76d16'32.49"W, 36d58'24.22"N)
Lower Right (-8490971.045, 4431679.436) ( 76d16'32.49"W, 36d56'48.10"N)
Center      (-8495693.725, 4433539.181) ( 76d19' 5.21"W, 36d57'36.17"N)
Band 1 Block=63264x1 Type=Byte, ColorInterp=Red
  NoData Value=0
Band 2 Block=63264x1 Type=Byte, ColorInterp=Green
  NoData Value=0
Band 3 Block=63264x1 Type=Byte, ColorInterp=Blue
  NoData Value=0

1voto

Arlukin Puntos 473

Para quien esté interesado el proceso que seguí para superar este problema fue el siguiente

  1. Ejecute i_view64.exe con el siguiente comando

    i_view64.exe InputImage.bmp /convert=OutputImage.tif
  2. Ejecutar GDAL_Translate

    gdal_translate.exe -of GTiff -a_nodata 0 --config GDAL_DATA "*data path*" -a_ullr tlX tlY brX brY -a_srs EPSG:3857 InputPath.tif OutputPath.tif
  3. A continuación, procedí a utilizar GDALWarp.exe pero eso es más allá de la cuestión aquí.

El resultado era una imagen georreferenciada basada en un mapa de bits de gran tamaño.

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