Filter löschen
Filter löschen

combining RGB to get a full image

96 Ansichten (letzte 30 Tage)
prem preet
prem preet am 23 Okt. 2011
Kommentiert: Srivatsan N am 21 Jul. 2020
image_RGB = cat(2,final_red,final_green,final_blue)
imshow(image_RGB);
can anyone suggest me that this code is correct for combining RGB components for getting full image
as soon as possible

Akzeptierte Antwort

Image Analyst
Image Analyst am 23 Okt. 2011
IMPORTANT NOTE: MATLAB is case sensitive. redchannel is different than redChannel.
It looks like you've taken code I've posted many times and tried to adapt it:
% Extract the individual red, green, and blue color channels.
redChannel = rgbImage(:, :, 1);
greenChannel = rgbImage(:, :, 2);
blueChannel = rgbImage(:, :, 3);
% Recombine separate color channels into an RGB image.
rgbImage = cat(3, redChannel, greenChannel, blueChannel);
I call them "channels" because that is the terminology Photoshop uses. You have to change the name of the arrays from redChannel to what yours are called. After you split apart your color channels and reprocessed them you have final_red. This, NOT redChannel, is what you need to use. You also need to not change from dimension 3 (which I had) to dimension 2. So the final code would be
% Recombine separate color channels into an RGB image.
rgbImage = cat(3, final_red,final_green,final_blue);
  8 Kommentare
Chrissie Nyssen
Chrissie Nyssen am 1 Jul. 2019
Bearbeitet: Chrissie Nyssen am 1 Jul. 2019
It's a 3D image if you are layering the R G B images on top of each other -
imgRGB = cat(3, R, G, B)
imshow (imgRGB)
Srivatsan N
Srivatsan N am 21 Jul. 2020
Is there any way to transform the grayscale image to rgb image?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Wayne King
Wayne King am 23 Okt. 2011
Hi, You don't want to concatenate along the column dimension. An RGB image has 3 dimensions. You want to concatenate along the 3rd dimension.
imdata = imread('ngc6543a.jpg');
RC = imdata(:,:,1);
GC = imdata(:,:,2);
BC = imdata(:,:,3);
im = cat(3,RC,GC,BC);
isequal(imdata,im)
imshow(im)
  5 Kommentare
prem preet
prem preet am 23 Okt. 2011
??? Undefined function or variable 'redchannel'.
prem preet
prem preet am 23 Okt. 2011
this error occured for all 3 above functions ....
imshow(redchannel);.....
plss rply fast..

Melden Sie sich an, um zu kommentieren.


tablo tofiq
tablo tofiq am 6 Mai 2016
Bearbeitet: Stephen23 am 6 Mai 2016
display image in three color red&green&blue
a=imread('autumn.tif');
a1=a;
a1(:,:,2)=0;
a1(:,:,3)=0;
subplot(3,1,1)
imshow(a1)
a2=a;
a2(:,:,1)=0;
a2(:,:,3)=0;
subplot(3,1,2)
imshow(a2)
a3=a;
a3(:,:,1)=0;
a3(:,:,2)=0;
subplot(3,1,3)
imshow(a3)
  1 Kommentar
Stephen23
Stephen23 am 6 Mai 2016
Without three intermediate variables:
b = imread('autumn.tif');
b(:,:,4) = 0;
subplot(3,1,1)
imshow(b(:,:,[1,4,4]))
subplot(3,1,2)
imshow(b(:,:,[4,2,4]))
subplot(3,1,3)
imshow(b(:,:,[4,4,3]))

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Formatting and Annotation finden Sie in Help Center und File Exchange

Tags

Noch keine Tags eingegeben.

Community Treasure Hunt

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

Start Hunting!

Translated by