Réponse acceptée

Image Analyst
Image Analyst le 23 Fév 2012

0 votes

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

7 commentaires

Jamuna Jayashri Mahalingam
Jamuna Jayashri Mahalingam le 24 Fév 2012
I implemented the code..But what I am getting is a black block..What might be wrong?
Image Analyst
Image Analyst le 24 Fév 2012
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.
Jamuna Jayashri Mahalingam
Jamuna Jayashri Mahalingam le 25 Fév 2012
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?
Image Analyst
Image Analyst le 25 Fév 2012
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.
Image Analyst
Image Analyst le 5 Mar 2012
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

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by