Problems using geotiffwrite with colormap

5 views (last 30 days)
I have a .png file and his associated .wld file. I’m using “imread” and “worldfileread” to load both files into Matlab and write them back in tif format.
It’s working great, but the file is saved without a color map. So I tried to load the original color map and save it together, but for some reason, I get the error:
Error using geotiffwrite
Function GEOTIFFWRITE expected its third input argument CMAP to be a valid colormap. Valid colormaps must be nonempty, double, 2-D matrices with 3 columns.
As far as I can see, the cmap is a double, 2-D matrix with 3 columns.
Maybe somebody has a solution for that?
The files and script are attached.
Thanks!
[image,cmap] = imread('ABX_N0Q_202109290033.png');
R = worldfileread('ABX_N0Q_202109290033.wld',"geographic",size(image));
geotiffwrite('test.tif', image, R,cmap);

Accepted Answer

Yuvraj Singh
Yuvraj Singh on 20 Feb 2023
Hi Amit,
geotiffwrite('test.tif', image, R,cmap);
'geotiffwrite' expects its third argument to be cmap, in the code mentioned above cmap is the fourth argument.
Refer to the below documentation for the right syntax.
  1 Comment
Amit Kallush
Amit Kallush on 20 Feb 2023
Thanks that was really helpful! I didnt realise that it should come as the third value. now its working
Thanks!

Sign in to comment.

More Answers (0)

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!