Цикл for показывает ошибку.

Привет, может кто-нибудь сказать мне, почему я не могу получить вывод для 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(т. Е. V);

Пожалуйста, кто-нибудь сказать мне решение, чтобы получить вывод

1 ответ

Проблема заключалась в том, что от 1 до 9, количество столбцов в Stc было 5, с '1.jpg', '2.jpg' ... '9.jpg'. Но на следующей итерации длина строки становится равной 6 с '10.jpg'и поэтому не может быть помещена в Stc, Я хотел бы предложить следующее изменение в вашем коде и просто удалить или закомментировать Stc линия -

St=imread(strcat(ie,V));
Другие вопросы по тегам