Image Matlab中双矩阵到HSV的转换

Image Matlab中双矩阵到HSV的转换,image,matlab,hsv,Image,Matlab,Hsv,我有一个双重矩阵​​在matlab中,我想把它转换成一个HSV图像,在这个图像中应该有相似的双值​​将以相同的颜色显示。我已经用mat2gray转换为RGB,但我想直接从双矩阵转换为hsv图像。可能吗 谢谢您询问您是否可以做image和imagesc所做的事情。是的,你可以。您只需在“hsv”颜色贴图中插值即可。下面的代码片段演示了如何执行此操作。它假定您的值在0和1之间缩放;不过,你可以很容易地改变这一点 im = [0 .5 1; .7 .6 .2; .9 .3 .4]; cm = colo

我有一个双重矩阵​​在matlab中,我想把它转换成一个HSV图像,在这个图像中应该有相似的双值​​将以相同的颜色显示。我已经用mat2gray转换为RGB,但我想直接从双矩阵转换为hsv图像。可能吗


谢谢

您询问您是否可以做
image
imagesc
所做的事情。是的,你可以。您只需在“hsv”颜色贴图中插值即可。下面的代码片段演示了如何执行此操作。它假定您的值在0和1之间缩放;不过,你可以很容易地改变这一点

im = [0 .5 1; .7 .6 .2; .9 .3 .4];
cm = colormap('hsv');
cdata = interp1(linspace(0,1,length(cm)),cm,im);
figure;image(cdata)
cdata
将是一个(行x列x 3)矩阵,您可以直接使用
image
查看它,或者从那里执行任何需要的操作