码迷,mamicode.com
首页 > 其他好文 > 详细

[Matlab] LS(least squares)拟合3D平面

时间:2018-10-28 22:03:48      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:mat   方向   red   get   ast   least   方差   function   a*   

function [a,b,c,d]=get_LS_plane(data)
% a*x + b*y + c*z + d = 0
planeData=data;
% 协方差矩阵的SVD变换中,最小奇异值对应的奇异向量就是平面的方向
xyz0=mean(planeData,1);
centeredPlane=bsxfun(@minus,planeData,xyz0);
[~,~,V]=svd(centeredPlane);
a=V(1,3);
b=V(2,3);
c=V(3,3);
d=-dot([a b c],xyz0);

end

  

[Matlab] LS(least squares)拟合3D平面

标签:mat   方向   red   get   ast   least   方差   function   a*   

原文地址:https://www.cnblogs.com/LoveBuzz/p/9867130.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!