Muestre los planos de color rojo, verde y azul de una imagen en color en MATLAB

Requisito previo: representación de imagen RGB
Una imagen en color se puede representar como una array de 3 órdenes. El primer orden es para las filas, el segundo orden es para las columnas y el tercer orden es para especificar el color del píxel correspondiente. Aquí usamos el formato de color RGB, por lo que el tercer orden tomará 3 valores de Rojo, Verde y Azul respectivamente. Los valores de las filas y columnas dependen del tamaño de la imagen.

Acercarse:

  • Cargue la imagen en una variable J usando imread() .
  • Almacene el número de filas y columnas de la imagen en las variables, r y c.
  • Cree 3 arrays cero R, G y B (una para cada uno de los 3 colores) de tamaño rXc.
  • Almacene el plano de color correspondiente de la imagen en la array cero correspondiente.
    1: Red
    2: Green
    3: Blue 
  • Muestre las imágenes usando imshow() , pero primero cámbielas a uint8 .

Implementación:

% MATLAB code to display the red, green and blue
% color planes of a color image
  
% read the image
I = imread('lenna.png');
  
% rows and columns in the image
r = size(I, 1);
c = size(I, 2);
  
% creating zero matrices
R = zeros(r, c, 3);
G = zeros(r, c, 3);
B = zeros(r, c, 3);
  
% storing the corresponding color plane
  
% red plane
R(:, :, 1) = I(:, :, 1);
  
% green plane
G(:, :, 2) = I(:, :, 2);
  
% blue plane
B(:, :, 3) = I(:, :, 3);
  
% displaying the images
figure, imshow(uint8(R));
figure, imshow(uint8(G));
figure, imshow(uint8(B));

Entrada :

Salida :


Publicación traducida automáticamente

Artículo escrito por Yash_R y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *