How to have colourful contours superimposed on a grayscale (imshow) background?

3 次查看(过去 30 天)
Hi! I need to create contours (with the ordinary colorbar) superimposed on a grayscale image, which I have plotted using imshow. The contours tend to appear in white. Is there any way to give them colours?
Here is my code:
Brain=load('Raw.mat');
background=mat2gray(Brain(:,:,26));
figure
imshow(background)
hold on
densities=[1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8000];
contour(volume(:,:,26),densities)
hold off

采纳的回答

Chad Greene
Chad Greene 2016-5-12
编辑:Chad Greene 2016-5-12
Here's one way. If you turn the background matrix into RGB values, imshow won't try to attach the background image to the current colormap.
bg = ind2rgb(imread('cameraman.tif'),gray(256));
imshow(bg)
hold on
contour(peaks(256))

更多回答(1 个)

Zohreh Khazraei Manesh
编辑:Zohreh Khazraei Manesh 2016-5-13
Thank you for your super fast response Chad!
The solution is smart and works perfectly!

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by