吉文斯矩阵实现图片的旋转

吉文斯变换(Givens transformation)亦称平面旋转变换,数值代数的基本工具之一,它是一种正交变换,最常用的吉文斯变换是使变换后的向量的某个分量。

吉文斯矩阵实现图片的旋转_吉文斯矩阵则变换

吉文斯矩阵实现图片的旋转_吉文斯矩阵_02

吉文斯矩阵实现图片的旋转_吉文斯矩阵_03是平面上向量的一个旋转变换,其中

吉文斯矩阵实现图片的旋转_吉文斯矩阵_04

为正交矩阵,吉文斯矩阵实现图片的旋转_吉文斯矩阵_05中的变换吉文斯矩阵实现图片的旋转_吉文斯矩阵_03,其中吉文斯矩阵实现图片的旋转_吉文斯矩阵_07    

吉文斯矩阵实现图片的旋转_吉文斯矩阵_08

称为吉文斯矩阵实现图片的旋转_吉文斯矩阵_09中平面的吉文斯矩阵实现图片的旋转_吉文斯矩阵_10旋转变换,吉文斯矩阵实现图片的旋转_吉文斯矩阵_11也称为平面旋转矩阵。

 

原图:

 

吉文斯矩阵实现图片的旋转_吉文斯矩阵_12

旋转60度:

 

吉文斯矩阵实现图片的旋转_吉文斯矩阵_13

旋转90度:

 

吉文斯矩阵实现图片的旋转_吉文斯矩阵_14

旋转180度:

吉文斯矩阵实现图片的旋转_吉文斯矩阵_15

 

旋转270度

吉文斯矩阵实现图片的旋转_吉文斯矩阵_16

代码

function H = hand
H = [3.15  -9.00
     4.43  -6.55
     6.13  -4.39
     7.65  -2.21
     7.52  -1.26
     6.75  -0.95
     5.60  -1.56
     4.45  -2.85
     3.07  -3.00
     2.60  -1.70
     2.73   0.59
     3.22   3.66
     3.39   6.79
     2.84   7.92
     2.10   7.41
     1.48   4.25
     0.68   0.79
     0.81   4.96
     0.66   8.36
    -0.33   9.06
    -0.99   8.09
    -1.04   4.68
    -1.17   0.90
    -1.81   4.15
    -2.63   7.45
    -3.39   7.80
    -3.86   6.97
    -3.49   3.35
    -3.13  -0.44
    -4.78   1.87
    -6.00   3.81
    -6.95   3.92
    -7.12   3.04
    -5.82  -0.07
    -4.76  -2.29
    -4.52  -5.62
    -4.00  -9.00]';

 

function dot2dot(X)
%date:2018-10-22
%author:猪猪侠
%邮箱:2377389590@qq.com
X(:,end+1) = X(:,1);%首尾相连接
t=input('请输入夹角');
%吉文斯矩阵
G=[cos(t),-sin(t);sin(t),cos(t)];
X=G*X;
plot(X(1,:),X(2,:),'.-','markersize',18,'linewidth',2)
axis(10*[-1 1 -1 1])
axis square

使用方法:

吉文斯矩阵实现图片的旋转_吉文斯矩阵_17

有问题可以联系小编QQ:2377389590

吉文斯矩阵实现图片的旋转_吉文斯矩阵_18

吉文斯矩阵实现图片的旋转_吉文斯矩阵_19

吉文斯矩阵实现图片的旋转_吉文斯矩阵_20

吉文斯矩阵实现图片的旋转_吉文斯矩阵_21

吉文斯矩阵实现图片的旋转_吉文斯矩阵_22

吉文斯矩阵实现图片的旋转_吉文斯矩阵_23

吉文斯矩阵实现图片的旋转_吉文斯矩阵_24

吉文斯矩阵实现图片的旋转_吉文斯矩阵_25

吉文斯矩阵实现图片的旋转_吉文斯矩阵_26