Error while using rgb2gray
Show older comments
I m trying to accept series of color images and apply edge function on them. this is my code....
if true
for k = 1:10
tifFilename = strcat( num2str(k), '.tif');
[X,map] = imread(tifFilename);
gmap = rgb2gray(map);
BW = edge(gmap,'sobel');
figure, imshow(BW);
end
end
it shows the following error
??? Error using ==> rgb2gray>parse_inputs at 82 MAP must be a m x 3 array.
Error in ==> rgb2gray at 35 X = parse_inputs(varargin{:});
Error in ==> sequenceimageprocessing at 6 gmap = rgb2gray(map);
Accepted Answer
More Answers (1)
Azzi Abdelmalek
on 14 Jul 2013
Maybe your image is not RGB, check
size(X)
7 Comments
Febin Benjamin
on 14 Jul 2013
Edited: Febin Benjamin
on 14 Jul 2013
Azzi Abdelmalek
on 14 Jul 2013
In windows Matlab command, just to check if your image is nxmx3
Febin Benjamin
on 14 Jul 2013
Azzi Abdelmalek
on 14 Jul 2013
Edited: Azzi Abdelmalek
on 14 Jul 2013
Nothing, your image is already grayscale
Febin Benjamin
on 14 Jul 2013
Edited: Febin Benjamin
on 14 Jul 2013
Azzi Abdelmalek
on 14 Jul 2013
Have you the same error message with this case?
Azzi Abdelmalek
on 14 Jul 2013
Edited: Azzi Abdelmalek
on 14 Jul 2013
[X,map] = imread(tifFilename)
Check if map is nx3 array
then write
gmap = rgb2gray(map);
Categories
Find more on Blue in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!