Qr分解可以将一个矩阵X分解成 Q R 的矩阵 Q*R=X
其中Q是旋转矩阵,R变换后的矩阵(一下面判断点集的例子来说,R就是以线性点集的线方程为一个轴的,新坐标空间点,由于Q是正交单位的,所以变换后的比例和原来的一样,也就是空间比例一致)
%按照前文中对点集是否在集合中的方法实现如下
L=[-2 -1 0 2
3 2.3 1.7 0.33];
M=[L(1,:)-L(1,4)
L(2,:)-L(2,4)];
a1=M(:,1);
a1=a1/norm(a1);%要求单位向量 否则会变换后放大原来的数据
a2=[0 -1;1 0]*a1;%与a1正交
A=[a1,a2];%构建变换矩阵
Y=inv(A)*M%坐标旋转变换
[Q R]=qr(M)%与Qr分解一致
结果如下
A =
-0.8317 -0.5552
0.5552 -0.8317
Y =
4.8093 3.5889 2.4241 0
-0.0000 0.0270 -0.0291 0
Q =
-0.8317 0.5552
0.5552 0.8317
R =
4.8093 3.5889 2.4241 0
0 -0.0270 0.0291 0