¿Cómo extraer la información RGB de una imagen en MATLAB y generar el resultado en una matriz?
1
Abrir imagen
[Nombre de archivo, Ruta de archivo]=uigetfile('*.jpg;*.png;*.tif;*.img;* .gif;','Por favor seleccione datos de imagen');
str=[FilePath FileName];
Imagen=imread(str);
Para dialogar Seleccione para abrir una imagen en forma de cuadro
2
Establecer parámetros
Gray=rgb2gray(Imagen);
R =Imagen(:,:,1); G=Imagen(:,:,2); B=Imagen(:,:,3);
diff_R=0; ; Establezca umbrales de extracción de color rojo, verde y azul (cuanto más grandes, más estrictos)
3
Extracción de rojo
Image_R=Imagen;
RP_R =Imagen(:,:,1); RP_G=Imagen(:,:,2); RP_B=Imagen(:,:,3);
XYR=~((R-G) gt;diff_Ramp; (R-B)gt;diff_R); La condición para extraer el rojo es que la diferencia entre el componente R y los componentes G y B sea mayor que la configuración
Mask=Gray(XYR); Máscara de foto gris
RP_R (XYR)=Máscara RP_G(XYR)=Máscara RP_B(XYR)=Máscara; Hace que las áreas no rojas sean grises
Image_R(:,:, 1)=RP_R; Imagen_R(:,: ,2)=RP_G; Imagen_R(:,:,3)=RP_B;
4
Extracción verde
Imagen_G=Imagen;
GP_R=Imagen(:,:,1);
XYG=~((G-R)gt ;diff_Gamp; (G-B)gt; diff_G) La condición para extraer verde es que la diferencia entre el componente G y los componentes R y B sea mayor que la configuración
Máscara=Gris(XYG); Máscara de foto gris
GP_R(XYG)=Máscara; GP_G(XYG)=Máscara; GP_B(XYG)=Máscara; >
Imagen_G(:,:,1)=GP_R; Imagen_G(:,:,2)=GP_G; Imagen_G(:,:,3)=GP_B;
5
Extracción de azul
Imagen_B=Imagen;
BP_R=Imagen(:,:,1); :,3);
XYB=~( (B-R)gt;diff_Bamp;(B-G)gt;diff_B); La condición para extraer verde es que la diferencia entre el componente G y los componentes R y B); es mayor que la configuración
Mask_B=Gray(XYB); Máscara de foto gris
BP_R(XYB)=Mask_B; Hacer que el área no azul sea gris
Image_B(:,:,1) =BP_R Image_B(:,:,2)=BP_G;
B(:,:,3)=BP_B;
6
Mostrar resultados
subplot(2, 2, 1), imshow(título de la imagen); ('Imagen');
subtrama(2, 2, 2), imshow(Image_R); título('Pase rojo');
subtrama(2, 2, 3) , imshow(Image_G); title('Pase Verde');
subplot(2, 2, 4), imshow(Image_B)('Pase Azul');
/article/cb5d61050a03e0005c2fe0c1.html