How to shuffle an image diagonally?

3 views (last 30 days)
Sneha P S
Sneha P S on 11 Apr 2018
Answered: Jan on 11 Apr 2018
I need to shuffle an image of size 256x256x3 along diagonally. That is the pixel value of upper left corner must come at the lower right corner and all the pixels at the corresponding position in the other half. Please help me with that code

Accepted Answer

Guillaume
Guillaume on 11 Apr 2018
Sounds like a 180 rotation, so:
rot90(yourimage, 2)

More Answers (1)

Jan
Jan on 11 Apr 2018
This can be either a rotation or a mirroring. A rotation works either by rot90 (see Guillaume's answer), or by:
s = size(img)
img2 = img(s(1):-1:1, s(2):-1:1, :);
The mirroring needs just an additional transposition of the first two dimensions:
img2 = permute(img(s(1):-1:1, s(2):-1:1, :), [2,1,3]);

Categories

Find more on Images in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!