How to concatenate only two planes of an image.

1 次查看(过去 30 天)
I have split an RGB image into its 3 different components, now i need a new image that is just the combination of the red and green planes. How do I do this? I used the 'cat' function, and then displayed the image, but it just displays these images next to each other.

回答(2 个)

Image Analyst
Image Analyst 2016-3-24
Try this
blackImage = zeros(size(redChannel), 'uint8');
rgbImage = cat(3, redChannel, greenChannel, blackImage);
imshow(rgbImage);
  2 个评论
Aditya
Aditya 2016-3-24
Thank you for helping, I have tried this already but i want the new image to be only in 2 dimensions not 3.
Image Analyst
Image Analyst 2016-3-25
Then to get a 2D image, stitch them together either side by side or top and bottom
tallImage = [redChannel; greenChannel];
wideImage = [redChannel, greenChannel];
Of course the images will be gray scale not color since to be color you need a third dimension.

请先登录,再进行评论。


Azzi Abdelmalek
Azzi Abdelmalek 2016-3-24
img = imread('ngc6543a.jpg');
red = img(:,:,1); % Red
green = img(:,:,2); % Green
blue = img(:,:,3); % Blue
[n,m,~]=size(img)
a = zeros(n, m);
out=cat(3,red,green,a)
  3 个评论
Vivek
Vivek 2023-1-14
Same problem Aditya I have two images and I want to make a single image from these two but using these commands the output image is in 3d dimension but I want to in 2D dimension.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by