【问题标题】:for loop shows the error Subscripted assignment dimension mismatch matlabfor循环显示错误下标赋值维度不匹配matlab
【发布时间】:2014-03-26 15:58:49
【问题描述】:

您好,谁能告诉我为什么我无法获得第 10 次迭代的输出以及如何在此循环中解决此问题。

i=10; 

for ix=1:i
    V='.jpg';
    ie=num2str(ix);
    Stc(:,:)=strcat(ie,V);
    St=imread(Stc);
    u=St;
    figure(1),subplot(4,4,ix),imshow(St);
    title('original image');
    Nd(ix)=ndims(St);
    if Nd>2
        St=rgb2gray(St);
    end
end

我收到以下错误:

下标分配维度不匹配。 Main 中的错误(第 12 行) Stc(:,:)=strcat(ie,V);

请有人告诉我获得输出的解决方案

【问题讨论】:

    标签: matlab loops for-loop dimension mismatch


    【解决方案1】:

    问题是从 1 到 9,Stc 中的列数为 5,分别为 '1.jpg'、'2.jpg' ... '9.jpg'。但在下一次迭代中,字符串长度变为 6 和 '10.jpg',因此不能容纳到 Stc 中。我建议对您的代码进行以下更改,然后删除或注释掉 Stc 行 -

    St=imread(strcat(ie,V));
    

    【讨论】:

      猜你喜欢
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 2013-12-10
      • 1970-01-01
      • 2013-05-30
      • 2013-07-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多