how to divide a picture into 25 pieces and display in one figure randomly?
2 次查看(过去 30 天)
显示 更早的评论
Hello everyone,
I'm willing to divide a picture into 25 pieces 5X5 and display them in one figure randomly, any suggestions ?
thanks ,
Dimitri
0 个评论
采纳的回答
Michael Haderlein
2015-3-13
One way:
img=imread('test.jpg'); %read the image
cimg=mat2cell(img(1:5*fix(end/5),1:5*fix(end/5),:),fix(size(img,1)/5)*ones(5,1),fix(size(img,2)/5)*ones(1,5),3); %divide it into 5x5 parts - if one dimension is not multiple of 5, the remaining elements will be cleared!
scimg=reshape(cimg(randperm(25)),5,5); %shuffle the pieces
simg=cell2mat(scimg); %put them back to an image
figure, imshow(img), figure, imshow(simg) %display both the ordered and the mixed image
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!