【问题标题】:Array indices must be positive integers or logical value when read images in matlab在matlab中读取图像时数组索引必须是正整数或逻辑值
【发布时间】:2020-08-06 00:27:44
【问题描述】:

尝试在循环中读取matlab中的多张图像,因此出现错误数组索引必须是正整数或逻辑值


for i=1:12  % we have 16 images we have in or folder
clc;clear;
images ='/home/mohamed/Downloads/Lab6-20200415/Lab6-20200421/Lab6/Lab6/';
jpgfiles=dir(fullfile(images,'\*.jpg*'));
n=numel(jpgfiles(i));
im=jpgfiles(i).name;
im1=imread(fullfile(images,im));
d1 = rg2gray(iml);
imshow(im1);
end

【问题讨论】:

标签: matlab image-processing image-segmentation


【解决方案1】:

这是一个演示您的问题的最小示例:

for i=1:10
    clear
    jpgfiles=rand(10,1); %some dummy data to replace your actual code
    jpgfiles(i);
end

clear 删除变量i,这意味着i 是虚数单位,不是有效索引。避免变量名i,它会导致难以调试的问题。使用其他变量名称,更清晰的错误消息应该是:

Unrecognized function or variable 'ix'.

Error in foo (line 4)
    jpgfiles(ix);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-18
    • 2012-11-27
    • 2013-12-04
    • 1970-01-01
    • 2018-08-25
    • 2016-06-12
    • 1970-01-01
    相关资源
    最近更新 更多