How to get coloured layer from an rgb image in matlab.

49 vues (au cours des 30 derniers jours)
sadiqa ilyas
sadiqa ilyas le 2 Août 2019
Commenté : Walter Roberson le 2 Août 2019
Hi. I want to extract all three layers from rgb colour image.For red layer i want it is red colour and similarly for green layer i need the image in green shade. simple code is attached but it increase the size of the image which i dont want. If an input image is of small size I need the output of the same size.
I1=imread('Hello.png')
I1 = I1(:,:,2);
R=image(I1), colormap([zeros(256,1),[0:1/255:1]', zeros(256,1)]);
figure;
imshow(R,[])

Réponse acceptée

Walter Roberson
Walter Roberson le 2 Août 2019
I1 = imread('Hello.png');
R = 0 * I1; R(:,:,1) = I1(:,:,1);
G = 0 * I1; G(:,:,2) = I1(:,:,2);
B = 0 * I1; B(:,:,3) = I1(:,:,3);
subplot(1,3,1)
image(R)
subplot(1,3,2)
image(G)
subplot(1,3,3)
image(B)
  7 commentaires
sadiqa ilyas
sadiqa ilyas le 2 Août 2019
EncImg is only an enciphered image of green layer, so it is 1 dim
Walter Roberson
Walter Roberson le 2 Août 2019
Then reshape it to 2d and store it as (:, :, 2) of a 3d matrix of zeros like I showed.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by