[gdal-dev] translating palettes in geotiff
David Strip
gdal at stripfamily.net
Tue Apr 23 14:20:42 PDT 2013
From Even's advice, I was able to piece together this workflow.
Given an input geotiff image.gtif
gdaltranslate -of image.gtif image.vrt
Then open image.vrt in a text editor and look for the color table by
searching for the tag <ColorTable> (actually you probably don't need to
search, it's near the top)
Replace the contents of the color palette with the palette entries you
want on output.
Then below the color table look for <SimpleSource> and replace it with
<ComplexSource>
Look for </SimpleSource> and replace with <ComplexSource>
Add a new line above </ComplexSource> that looks like
<LUT>input_color_index:output_color_index,
input_color_index:output_color_index, ... </LUT>
for example if you want to map input palette entry 1 to output entry 10,
input 3, to output 5, ...
<LUT>1:10, 3:5, ...<LUT>
You will need to map EVERY input color that occurs in your image to an
output color or else gdal_translate will interpolate a color for you,
and you don't want that.
Now that you've edited the file run
gdal_translate -of gtiff image.vrt mapped_image.gtif
And you're done.
More information about the gdal-dev
mailing list