Geotiffwrite without compression

5 vues (au cours des 30 derniers jours)
Albin
Albin le 20 Fév 2012
Hi,
I am struggling to use "geotiffwrite" without compression.
Writing the file with:
geotiffwrite('output.TIF', A, R, 'GeoKeyDirectoryTag', info.GeoTIFFTags.GeoKeyDirectoryTag);
works fine. But using
geotiffwrite('output.TIF', A, R, 'GeoKeyDirectoryTag', info.GeoTIFFTags.GeoKeyDirectoryTag, 'TiffTags', Tiff.Compression.None);
or any similar code does not work.
errormsg:
"Error using ==> geotiffwrite Expected TiffTags to be one of these types:
struct
Instead its type was double."
Which is right, Tiff.Compression.None is 1, but any ohter input, like Tiff.Compression does not work either.
Could anyone help me with the exact coding or writing a geotiff without compression?
thanks in advance,
ah

Réponse acceptée

Rob Comer
Rob Comer le 25 Mar 2012
You almost have it. As the error (and help) indicate, you need to follow 'TiffTags' with a structure when calling geotiffwrite. You can do it in-line, like this:
geotiffwrite('output.TIF',A,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag,'TiffTags',struct('Compression',Tiff.Compression.None))
or you can first create a TIFF tags structure, like this, for example:
tags.Compression = Tiff.Compression.None;
geotiffwrite('output.TIF',A,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag,'TiffTags',tags)
In this case, tags has only one field. But you can add others, such as RowsPerStrip, for example, as needed.

Plus de réponses (1)

Albin
Albin le 26 Mar 2012
Hi Rob,
thanks very much. you have solved my problem!
Albin

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by