当前位置: 首页 > news >正文

云梦做网站的优势网站创建公司

云梦做网站的优势,网站创建公司,做虾皮网站,wordpress 搜狐视频播放需要基于一些散点拟合椭圆估计并计算出椭圆的参数和周长,搜罗到直接上代码 (1)有用的椭圆拟合及参数计算函数 function W fitellipse(x,y) % 构造矩阵 D [x.*x, x.*y, y.*y, x, y,ones(size(x))]; S D*D; G zeros(6); G(1,3) 2; G(3,1)…

需要基于一些散点拟合椭圆估计并计算出椭圆的参数和周长,搜罗到直接上代码
(1)有用的椭圆拟合及参数计算函数

function W = fitellipse(x,y)
% 构造矩阵
D = [x.*x, x.*y, y.*y, x, y,ones(size(x))];
S = D'*D;
G = zeros(6);
G(1,3) = 2; G(3,1) = 2; G(2,2) = -1;% 求解
[vec, val] = eig(S\G);
[~, idx] = find(val>0&~isinf(val));
W = vec(:,idx);
W = sqrt(1/(W'*S*W))*W;
end
function [Center,Axis,Theta] = calellipseparams(W)
a = W(1); 
b = W(2); 
c = W(3); 
d = W(4); 
e = W(5); 
f = W(6);
% 中心
cx = (b*e-2*c*d)/(4*a*c-b^2);
cy = (b*d-2*a*e)/(4*a*c-b^2);
Center = [cx,cy];
% 长短轴  
MA1 = sqrt(2*(a*cx^2+c*cy^2+b*cx*cy-f)/(a+c+sqrt((a-c)^2+b^2)));
MA2= sqrt(2*(a*cx^2+c*cy^2+b*cx*cy-f)/(a+c-sqrt((a-c)^2+b^2)));
Axis = [max(MA1,MA2),min(MA1,MA2)];% 长轴倾角
if b==0if f*a>f*cTheta = 0;else  Theta = pi/2;end
elseif f*a>f*calpha = atan((a-c)/b);if alpha<0Theta = 0.5*(-pi/2-alpha);elseTheta = 0.5*(pi/2-alpha);endelsealpha = atan((a-c)/b);if alpha<0Theta = pi/2+0.5*(-pi/2-alpha);elseTheta = pi/2+0.5*(pi/2-alpha);endend
end
end
function C=drawellipse(W)
% 获取椭圆参数:中心、长、短半轴和长轴倾角
[Center,Axis,Theta] = calellipseparams(W);% 绘制椭圆
funs = @(x,y) W(1)*x.^2 + W(2)*x.*y + W(3)*y.^2 + W(4)*x + W(5)*y + W(6);
fimplicit(funs,'LineWidth',2)% 绘制长短轴
Majcoor = [-Axis(1),0; Axis(1),0];
Mincoor = [0,-Axis(2); 0,Axis(2)];
RM = [cos(Theta),-sin(Theta);sin(Theta),cos(Theta)];
Majcoor = Majcoor*RM'+Center;
Mincoor = Mincoor*RM'+Center;Slen = sqrt((Mincoor(1,1)-Mincoor(2,1))^2 + (Mincoor(1,2)-Mincoor(2,2))^2);
Llen = sqrt((Majcoor(1,1)-Majcoor(2,1))^2 + (Majcoor(1,2)-Majcoor(2,2))^2);C =(3.1415926*Slen+2*(Llen-Slen));line(Majcoor(:,1),Majcoor(:,2),'Color','r','LineWidth',3)
line(Mincoor(:,1),Mincoor(:,2),'Color','g','LineWidth',3)
plot(Center(1),Center(2),'y.','MarkerSize',15)end

(2)利用以上函数对已有散点进行椭圆拟合,并计算椭圆的周长如下:

XX=[....];%需拟合的散点
YY=[.....];% 椭圆拟合
W = fitellipse(YY',ZZ');%输入参数为列向量且长度一致,不是列向量时需要转置% 绘制结果
figure
plot(YY,ZZ,'.'), 
axis equal
hold on
C=drawellipse(W);%返回椭圆周长
axis equal

下面是本次拟合的结果,看起来还不错,
在这里插入图片描述

http://www.yidumall.com/news/58763.html

相关文章:

  • 南京市公共建设中心网站站长之家查询
  • 微网站如何做宣传新闻20条摘抄大全
  • 做门户网站用什么服务器百度网盘官方网站
  • 官网和门户网站的区别合肥网站维护公司
  • 动漫制作专业零基础宁波seo快速优化课程
  • iis7 默认网站目录百度外链查询工具
  • 宁波p2p网站建设网站出租三级域名费用
  • 建设银行信用卡网站是多少钱seo站长网
  • 做营销网站建设价格可以全部免费观看的软件
  • 有哪些好的印花图案设计网站广州网站推广运营
  • 网站建设经典语录网络营销的优势有哪些
  • 直销可以做网站有效果吗营销团队外包
  • 广州公司注册地址迁址网上办理百度推广seo优化
  • 中国建设银行客户端下载官方网站廊坊seo网站管理
  • 北京 工业网站建设公司排名微信广告投放推广平台多少费用
  • 办公空间设计概念广告优化师培训
  • 帮人家做网站维护长沙公司网络营销推广
  • 微信小程序做直播网站宁波seo行者seo09
  • 上海网站建设 网站开发郑州网站建设推广有限公司
  • 专业旅游网站建设快速seo整站优化排行
  • 世界排名前十的服装设计学院杭州网站seo公司
  • html5手机网站织梦模板武汉网站排名提升
  • 做网站安全的公司有哪些山东大学经济研究院
  • 凡客tv引擎优化seo是什么
  • 深圳做营销网站建设网络营销公司
  • 做课题的网站有多少是备案的营销策划公司靠谱吗
  • 长沙专业做网站全网营销公司排名前十
  • 文学网站开发设计报告网站搜索优化
  • 西安seo优化长沙官网seo服务
  • 网站备案名称规则百度搜索量查询