Info

此问题已关闭。 请重新打开它进行编辑或回答。

I am getting an error as index exceeds matrix dimensions? How do i solve this?

1 次查看(过去 30 天)
inputPath= 'D:\MATLAB.R2010a.X86.Portable\MATLAB.R2010a.X86.Portable\App\toolbox\images\imdemos';
dir(inputPath);
tifFiles = dir([inputPath '\*.tif']);
for k = 1:length(tifFiles)
filename = tifFiles(k).name;
rgbImage = imread(filename);
% operations on "I"
[rows columns numberOfColorBands] = size(rgbImage);
subplot(2, 2, 1);
imshow(rgbImage, []);
pause;
% Extract the individual color planes.
redPlane = rgbImage(:, :, 1);
greenPlane = rgbImage(:, :, 2);
bluePlane = rgbImage(:, :, 3);
figure, imshow(redPlane);
figure,imshow(greenPlane);
figure,imshow(bluePlane);
b = redPlane + greenPlane + bluePlane;
figure,imshow(b);
pause;
end

回答(1 个)

Matt J
Matt J 2013-3-30
I am getting an error as index exceeds matrix dimensions? How do i solve this?
Using DBSTOP
  2 个评论
Ruhi
Ruhi 2013-3-30
that will tell u the line on which the error occurred, which i know is on line 20. how do i resolve it?
Matt J
Matt J 2013-3-30
Line 20 in the code you've shown is
figure,imshow(greenPlane);
Can't see any problem there. "index exceeds matrix dimensions" means you've used an index larger than an array dimension, e.g.,
>> x=rand(1,5); x(6)
Index exceeds matrix dimensions.
DBSTOP will stop the code execution at the point where the error occurs. You can then check the size of the array being indexed and the value of the index and see what is wrong.

此问题已关闭。

Community Treasure Hunt

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

Start Hunting!

Translated by