翻页的反函数

时间:2016-08-30 15:52:09

标签: image matlab encryption

如果我在加密过程中使用flipud()函数,我当然需要在解密过程中使用与其相反的函数。

是否有任何函数或代码片段在MATLAB中执行flipud()函数的逆操作?

2 个答案:

答案 0 :(得分:5)

再次致电flipudflipud只需获取矩阵的每一列并反转顺序,以便最后一行显示。要撤消反转,请在已反转的矩阵上执行flipud。反转矩阵的最后一行成为第一行,依此类推,因此您将获得原始订单。

观察:

>> A = rand(100,100);
>> B = isequal(A, flipud(flipud(A)))

B =

     1

A是一个随机的100 x 100矩阵。我使用isequal来确保原始矩阵等于该矩阵中每个元素的两次翻转矩阵。但是,如果你不想与这些名字混淆......如果你真的,真的,真的......我的意思是......真的......想要有一个"倒转的功能&#34 ;一个已经反转的矩阵,你可以调用一个名为flipdu的函数来执行这个翻转:

flipdu = @flipud;

答案 1 :(得分:5)

您可以定义辅助功能,向下翻转,以完成您的需要:

function [output] = flipdu(A)
%FLIPDU Flip array in down/up direction.
%   OUTPUT = FLIPDU(A) returns A with the order of elements flipped upside down
%   along the first dimension.  For example,
%   
%   A = 1 4      becomes  3 6
%       2 5               2 5
%       3 6               1 4
%
%   See also FLIPLR, ROT90, FLIP, FLIPUD.
output = flipud(A);  % Equivalent to flip(A, 1)
end