For Loop Problem error
Show older comments
img=imread('C:\Users\Shalaw\Downloads\gray.jpeg');
[n,m]=size(img);
part1=img(1:n/2,1:m/2);
part2=img(1:n/2,(m/2)+1:end);
part3=img(n/2+1:end,1:m/2);
part4=img(n/2+1:end,m/2+1:end);
for i=1:4
subplot(2,2,i);
imshow(part1); -----> I want to change 1 to i, but i cant please help.
end
1 Comment
Simply use a cell array with indexing:
Putting numbers into variable names is a sign that you are doing something wrong. In most cases using indexing is simpler, neater, and much more efficient.
Accepted Answer
More Answers (1)
Andrei Bobrov
on 15 Jul 2019
img=imread('C:\Users\Shalaw\Downloads\gray.jpeg');
[n,m]=size(img);
imgs = mat2cell(img,[n,n]/2,[m,m]/2)';
for ii = 1:4
subplot(2,2,ii);
imshow(imgs{ii});
end
3 Comments
shalaw faraj
on 15 Jul 2019
Andrei Bobrov
on 15 Jul 2019
k = 4;
[n,m]=size(img);
imgs = mat2cell(img, n/k*ones(1,k), m/k*ones(1,k))';
for ii = 1:k^2
subplot(k,k,ii);
imshow(imgs{ii});
end
shalaw faraj
on 15 Jul 2019
Categories
Find more on Matrix Indexing 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!