我是Matlab的新手..
我的图片尺寸为512x512x3 uint8。而且我使用了“dither'功能如下:
[Myimagedither, Myimagedithermap] = rgb2ind(img, 16, 'dither');
imwrite(Myimagedither,Myimagedithermap,'step_4_RGB_D_U_16.tiff');
之后,我使用imread来读取这样的图像:
new_img = imread('step_4_RGB_D_U_16.tiff');
但是,之后尺寸只变为512x512 unit8。我需要将该图像划分为R G B.任何人都可以帮我解决这个问题吗?
答案 0 :(得分:1)
您需要单独阅读地图。像这样:
[new_img new_img_map] = imread('step_4_RGB_D_U_16.tiff');
然后使用ind2rgb()
将图像转换为rgb,并将颜色通道分成3个单独的图像。像这样:
new_img_RGB = ind2rgb(new_img,new_img_map);
g1_16 = new_img_RGB(:,:,1);
g2_16 = new_img_RGB(:,:,2);
g3_16 = new_img_RGB(:,:,3);