How to change 1 channel image to 3 channel

55 visualizaciones (últimos 30 días)
evianita dewi
evianita dewi el 13 de Dic. de 2019
Respondida: DGM el 2 de Mayo de 2022
I have several grayscale images with channel 1, then I want to convert it to RGB channel 3 image, how do I change it?

Respuesta aceptada

Image Analyst
Image Analyst el 13 de Dic. de 2019
Try cat() to stack the gray scale image into 3 slices (color channels):
rgbImage = cat(3, grayImage, grayImage, grayImage);
It will be an RGB image though the only colors will be gray since there is no difference between the three different color channels. It will be a 3-D image with the z-direction (third index) being the color channel index.
  2 comentarios
evianita dewi
evianita dewi el 26 de Dic. de 2019
this is very helpful, thank you!!
Muhammad Kamran
Muhammad Kamran el 25 de Mzo. de 2021
Thanks a lot.
It's very helpful.

Iniciar sesión para comentar.

Más respuestas (1)

DGM
DGM el 2 de Mayo de 2022
Alternative to using cat(), the same can also be done a couple other ways.
You can use repmat()
rgbpict = repmat(graypict,[1 1 3]);
... or you can even use basic indexing:
rgbpict = graypict(:,:,[1 1 1]);

Categorías

Más información sobre Image Processing Toolbox en Help Center y File Exchange.

Productos


Versión

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by