我有一个灰度 matlab 图像,我想将其转换为具有自定义颜色图的 RGB 图像。我可以用我想要的颜色显示图像,但当我使用 imwrite 时,该图不会保存为 RGB 图像。它不是 300x1000x3 数据结构,而是 300x1000。我该怎么做才能解决这个问题?
m=255;
map = ones(m,3);
strongsignal = [3, 7, 41]./ 255;
DRAQ = [100, 85, 105]./255;
R = linspace(DRAQ(1),strongsignal(1),254);
G = linspace(DRAQ(2),strongsignal(2),254);
B = linspace(DRAQ(3),strongsignal(3),254);
Sample = [R', G', B'];
i = imread('sliceXY045_660.png');
limits = graythresh(i);
i_adjust = im2bw(i,limits);
map(2:255,:)= Sample;
imagesc(i_adjust)
colormap(map)
imwrite(i_adjust,map,'colormap45.png')
最佳答案
cmap = colormap(map);
imwrite(i_adjust,cmap, 'colormap45.png', 'png');
将最后一部分改成这个..希望这有帮助..
关于image - 从灰度图像和自定义颜色图创建 RGB 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24965525/