divide an image into blocks

How can I divide an image into a specific number of blocks, stir them and get a new messy image?

Risposte (1)

Matt J
Matt J il 26 Set 2019
Modificato: Matt J il 26 Set 2019
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)

Richiesto:

il 25 Set 2019

Modificato:

il 26 Set 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by