returning the indexes of an image displayed with a specific colormap

1 次查看(过去 30 天)
hi, does anyone know hot to get the numeric indexes of a displayed image with a specific user defined colormap???
for example imagesc(IMAGE) colormap(user_colormap)
displays an image mapped into the colormap....and I want the numeric representation of the displayed image.
  5 个评论
Mario Trevino
Mario Trevino 2012-8-14
@ Matt: m-by-n only. @ Sean: I know! yet the colormap is transforming the matrix, and I want THAT transformation (or mapping), and not the original one. I want to recover the transformed 2d matrix after using imagesc with a specific user defined colormap.

请先登录,再进行评论。

采纳的回答

Matt Fig
Matt Fig 2012-8-14
编辑:Matt Fig 2012-8-14
If I understand you correctly, you want (for example):
A = rand(4);
C = [0 0 0;.5 .5 .5;1 1 1];
imagesc(A);
colormap(C);
% idx = interp1([0 .5 1],[0 .5 1],A,'nearest')
idx = ceil(A*size(C,1))
  7 个评论
Matt Fig
Matt Fig 2012-8-14
I don't know what you mean by holding with zeros. But the reshape function does pretty much what the name indicates. Take a look:
X = [1 0 2 0 3 0 4 0 5 0 6 0]
reshape(X,4,3)
reshape(X,3,4)
reshape(X,6,2)
reshape(X,2,6)
reshape(X,12,1)
Mario Trevino
Mario Trevino 2012-8-14
you are absolutely right Matt. What I saw is that none of the elements from A (or idx) can be 0 for the reshape function to work.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Colormaps 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by