divide an image into blocks
Show older comments
How can I divide an image into a specific number of blocks, stir them and get a new messy image?
Answers (1)
Using mat2tiles,
it is very easy:
initialImage=imread('sherlock.jpg');
blocksize=[40,40,inf]; %must divide evenly into size(initialImage)
C=mat2tiles(initialImage,blocksize);
C(:)=C(randperm(numel(C)));
messyImage=cell2mat(C);
figure;
subplot(1,2,1);
imshow(initialImage);
subplot(1,2,2)
imshow(messyImage)

Categories
Find more on Morphological Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!