Comment puis-je afficher le canal rouge de l'image sous Matlab?
J'ai une matrice 3D im
qui représente une image RVB. Je peux faire
imshow(im)
pour afficher l'image.
Je veux afficher seulement l'un des canaux RVB à un moment: je veux afficher le canal rouge et je veux qu'il apparaisse en rouge.
J'ai essayé
imshow(im(:,:,1))
mais il affiche l'image en niveaux de gris (ce qui n'est pas ce que je veux).
Comment puis-je afficher le canal rouge et le faire apparaître en rouge?
La chose importante ici est que si vous voulez afficher une image couleur en image, assurez-vous que ses 3 dimensions. Si vous n'im(:,:,1), vous êtes de gauche avec seulement une seule dimension.
OriginalL'auteur snakile | 2010-08-23
Vous devez vous connecter pour publier un commentaire.
J'ai trois propositions pour vous.
1.
Utiliser le
imagesc
fonction et choisir une couleur rouge de la palette.2.
Désactivez les autres canaux de couleur:
im(:,:,2:3) = 0; imshow(im);
3. Utiliser le
ind2rgb
fonction avec une carte de la couleur de vous construire en conséquence.OriginalL'auteur ypnos
Essayez ceci:
OriginalL'auteur harja
Essayer cette
OriginalL'auteur Landrover
Vous voulez dire que vous voulez extraire la couleur rouge?
à l'aide de im(:,:,1) seulement séparée de la couche rouge de l'image 3D et de convertir une image 2D.
Essayez ce simple code:
OriginalL'auteur Aatish Ali Khan
Pour une meilleure vue, vous pouvez calculer et afficher l' couleur pure. La formule Rp = Rc /(Rc + Gc + Bc). Et un exemple de code pour la couleur rouge:
Cela rend la couleur d'affichage plus clair, étant donné que les autres couleurs ont été filtrés.
Je vais essayer de l'illustrer avec un exemple:
Image d'origine:
Canal rouge de l'image (
im(:,:,1)
):Rouge pur:
OriginalL'auteur Joren