Error when using rgb2gray in a for loop.

2 visualizaciones (últimos 30 días)
Ailun Yang
Ailun Yang el 2 de Abr. de 2020
Respondida: Walter Roberson el 2 de Abr. de 2020
I have four different .tif images in my folder. I want to use a for loop to load all of the images into Matlab then convert them to grayscale and then perform frame averaging on all for and display them in a montage. But I keep getting an error MAP must be a m x 3 array.
only one section of my code:
for i = 1:4
img{i} = imread(sprintf('PShot%d.tif',i));
Igray = rgb2gray(img);
end
I believe my issue is that the variables are in a cell which is messing with the rgb2gray function but im not sure. I'm fairly new to Matlab so this maybe a trivial question.

Respuesta aceptada

Walter Roberson
Walter Roberson el 2 de Abr. de 2020
nfile = 4;
img = cell(nfile,1);
Igray = cell(nfile,1);
for i = 1:nfile
img{i} = imread(sprintf('PShot%d.tif',i));
Igray{i} = rgb2gray(img{i});
end

Más respuestas (0)

Categorías

Más información sobre Images en Help Center y File Exchange.

Productos


Versión

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by