How to shuffle an image diagonally?

4 次查看(过去 30 天)
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

采纳的回答

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

更多回答(1 个)

Jan
Jan 2018-4-11
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]);

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by