采纳的回答

Image Analyst
Image Analyst 2012-2-23

0 个投票

rgbImage = uint8(cat(3, binaryImage, binaryImage, binaryImage));

7 个评论

I implemented the code..But what I am getting is a black block..What might be wrong?
Set a breakpoint right after that line, and issue these commands.
class(binaryImage) % Or whatever name you're using.
max(binaryImage(:)) % Note: no semicolons
min(binaryImage(:))
class(rgbImage)
max(rgbImage(:)) % Note: no semicolons
min(rgbImage(:))
What does it say?
Can you try showing it like this:
imshow(rgbImage);
Why do you want an RGB image anyway? If it's made from a binary image it will be just pure black and pure white anyway, just like your binary image looked like. It's not going to magically add a rainbow of colors to it simply by concatenating to convert into a 3D true color RGB image.
I tried combining with VHDL to reconstruct a colour image. That is why I wanted RGB image. Is there any other way for this conversion?
Well you could use ind2rgb() but you'd need to pass in a colormap. But why? Was the cat(3,) method not workable for some reason?
yeas, the cat(3) method wasnt working.
What was your exact line? Because I know it works since I've been doing it that way for years.
RGB=uint8(cat(3,y,y,y));
y is the binary image

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Image Processing Toolbox 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by