在Matlab中将双矩阵转换为HSV

时间:2012-03-28 15:36:42

标签: image matlab hsv

我在matlab中有一个双矩阵,我想把它转换为HSV图像,据说相似的双值会出现相同的颜色。我已经用mat2gray转换为RGB,但我想直接从双矩阵转换为hsv图像。有可能吗?

由于

1 个答案:

答案 0 :(得分:2)

您在询问是否可以执行imageimagesc所做的事情。是的你可以。你只需要插入到' 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将是(row x col x 3)矩阵,您可以直接使用image查看,或者从那里做任何您需要的其他内容。