how to divide image into 16 by16 nonoverlapping blocks of 768 by 512 of original image and randomly scramble the blocks and reverse back to the original image from the scrambled image?

2 views (last 30 days)
Aarach Sap
Aarach Sap on 20 Jul 2017
Answered: Etsuo Maeda on 20 Jun 2018
how to divide image into 16 by 16 of unequal sized original image and randomly scramble the blocks. and again how to obtain the original image from the scrambled image?

Answers (1)

Etsuo Maeda
Etsuo Maeda on 20 Jun 2018
When we have one unique point (x, y), the squared image can be divided into 4 blocks. Two points for 4-9 blocks, Three points for 4-16 blocks, and Four points for more. To generate unique random number, you can use randperm function. For the purpose of reconstruction image, use the difference between original image and generated block. Optimization toolbox will help you to search the minimum point of the difference.
HTH

Community Treasure Hunt

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

Start Hunting!