how to break an image into sub images
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
i have an image having pixels 512*512 . i want to break it in equal sub images (for eg like into images of 8*8) and want to apply a function (can be any) on each sub image ??
0 Kommentare
Antworten (3)
Zainab Ishfaq
am 29 Mai 2018
Bearbeitet: Walter Roberson
am 13 Feb. 2020
Height=8; width=8;
currentimage = imread('Image.png');
[r,c,~]=size( currentimage );
count=0;
for i=0:Height:r
count=count+1;
for j=0:width:c
if((i+Height)<r && (j+width)<c)
Image=imcrop( currentimage ,[(i+1) (j+1) Height width]);
imwrite(Image,horzcat(currentfilename, num2str(count),'.tif'));
end
end
end
9 Kommentare
shital shinde
am 21 Feb. 2020
Bearbeitet: shital shinde
am 21 Feb. 2020
Thanks sir. It work now. I have one question. Can we parallelize the above example using parallel computing toolbox.
Walter Roberson
am 21 Feb. 2020
Bearbeitet: Walter Roberson
am 21 Feb. 2020
Yes. Just change for i to parfor i
As we have advised you before, the result will almost certainly be notably slower than your current code. But I know from your previous questions that you feel inclined to do that testing yourself.
image-pro
am 19 Okt. 2021
i have an error please help
Error in p8 (line 11)
Image=imcrop(currentimage ,[(i+1) (j+1) Height width]);
1 Kommentar
Siehe auch
Kategorien
Mehr zu Image Processing Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!