Flip image across Secondary Diagonal in MATLAB

The aim is to flip a colored image in MATLAB across secondary diagonal without using inbuilt functions for rotating. A colored image can be represented as a 3 order matrix. The first order is for the rows, the second order is for the columns and the third order is for the layers, the pixel value will determine the color of the pixel based on the color format.

Approach is very simple. We are given a colored image. We have to separate each layer. Flip every layer up to down then flip every layer right to left. Take transpose of the image.

Below is the implementation:

`% MATLAB code to flip a colored image` `% across secondary diagonal.` ` ` `% Read a colored image` `I=imread(` `'image.jpg'` `);` `figure, imshow(uint8(I));` ` ` `% Initilase an image ` `I2 = [];` ` ` `%iterate each layer` `for` `k = 1:3` ` ` `Im = I(:, :, k);` ` ` ` ` `%Flip every layer up to down.` ` ` `Im1 = Im(` `end` `:-1:1, :); ` ` ` ` ` `%Flip every layer right to left.` ` ` `Im2 = Im1(:, ` `end` `:-1:1); ` ` ` ` ` `%Take transpose of the image.` ` ` `Im3 = Im2'; ` ` ` `I2(:, :, k)=Im3;` `end` ` ` `% Show the image.` `figure, imshow(uint8(I2));` |

**Input Image:**

**Output :**