目的是在MATLAB中跨辅助对角线翻转彩色图像,而无需使用内置函数进行旋转。彩色图像可以表示为3阶矩阵。第一阶用于行,第二阶用于列,第三阶用于层,像素值将基于颜色格式确定像素的颜色。
方法很简单。我们得到了彩色图像。我们必须分开每一层。上下翻转每一层,然后从右到左翻转每一层。进行转置图像。
下面是实现:
% 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));
输入图片:
输出 :