i wanted to display binary image in blue color....
3 views (last 30 days)
Show older comments
i wanted to display binary image in blue color... the code i worked with is...
global image
I= im2bw(image);
axes(handles.axes4);
imshow(I)
colormap([0 0 1; 1 1 1])
axis equal;axis off;
the pblm i'm facing is.. when i execute this code it is coming corectly, but it is altering the other images in axes1,2,3 also to blue color.... i want only axes4 image to be displayed in blue color....
why is it coming like that....what shud i do???please reply....
[EDITED, code formatted, Jan]
Accepted Answer
Image Analyst
on 31 Oct 2012
Edited: Jan
on 31 Oct 2012
blankImage = zeros(size(binaryImage));
rgbImage = cat(3, blankImage , blankImage , binaryImage);
DON'T use image as the name of your variable because it's a built-in function name!!!
5 Comments
Image Analyst
on 1 Nov 2012
Is this what you want:
% Assume binary image is false where the bars are black.
% Extract the individual red, green, and blue color channels.
redChannel = originalRGBImage(:, :, 1);
greenChannel = originalRGBImage(:, :, 2);
blueChannel = originalRGBImage(:, :, 3);
% Make it blue where the bars are.
redChannel (~binaryImage) = uint8(0);
greenChannel(~binaryImage) = uint8(0);
blueChannel (~binaryImage) = uint8(255);
% Combine individual masked channels into a new RGB image.
rgbImage = cat(3, redChannel, greenChannel, blueChannel);
More Answers (0)
See Also
Categories
Find more on Blue in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!