Filter löschen
Filter löschen

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

3 Ansichten (letzte 30 Tage)
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

Akzeptierte Antwort

Chad Greene
Chad Greene am 12 Mai 2016
Bearbeitet: Chad Greene am 12 Mai 2016
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))

Weitere Antworten (1)

Zohreh Khazraei Manesh
Zohreh Khazraei Manesh am 13 Mai 2016
Bearbeitet: Zohreh Khazraei Manesh am 13 Mai 2016
Thank you for your super fast response Chad!
The solution is smart and works perfectly!

Community Treasure Hunt

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

Start Hunting!

Translated by