Matlab imwrite改变了我的颜色

时间:2018-06-06 11:47:12

标签: image matlab image-processing gif colormap

我试图将一些类似的图像从gif转换为png。 你可以在这里找到两张图片: https://europa.eu/european-union/about-eu/history/1980-1989_en。 转换第一个gif(1981年)之后,您可以看到背景颜色与之前相同,白色,但对于第二个gif(1986年),背景颜色变为粉红色。如何解决?

以下是我的代码:

file_in = uigetfile('*.*', 'All Files', 'MultiSelect','on');
file_out = cellfun(@(x) cat(2, x(1:(length(x)-3)), 'png'),...
   file_in, 'UniformOutput', false); 

for i = 1: length(file_in)    
   [gif,map] = imread (file_in{i});
   imwrite (gif, map, file_out{i}, 'Background', [0 0 0]);
end

1 个答案:

答案 0 :(得分:0)

Matlab从未在转换后更改图像颜色。因此,如果您尝试按imshow打开'gif'或'png',您将获得相同的结果。

enter image description here

无论如何,如果您想将背景颜色更改为白色,请使用this code