详细原理参考MATLAB圆拟合

圆拟合

function [xc,yc,R,a] = circfit(x,y)
%圆拟合函数
%CIRCFIT Fits a circle in x,y plane
% [XC, YC, R, A] = CIRCFIT(X,Y)
% Result is center point (yc,xc) and radius R.A is an
% optional output describing the circle’s equation:
%
% x^2+y^2+a(1)*x+a(2)*y+a(3)=0
% by Bucher izhak 25/oct/1991
n=length(x); xx=x.*x; yy=y.*y; xy=x.*y;
A=[sum(x) sum(y) n;sum(xy) sum(yy)...
sum(y);sum(xx) sum(xy) sum(x)];
B=[-sum(xx+yy) ; -sum(xx.*y+yy.*y) ; -sum(xx.*x+xy.*y)];
a=A\B;            %x = A\B 用来求解线性方程 A*x = B.  A 和 B 的行数一致.
xc = -.5*a(1);
yc = -.5*a(2);
R = sqrt((a(1)^2+a(2)^2)/4-a(3));end

处理数据,输出图片


%输入数据
m=xlsread('input/xiwo8.xls');
x=m(:,1);
y=m(:,2);%拟合圆
[xc,yc,R,a] = circfit(x,y);%画图,并存图
theta=5/4*pi:0.1:7/4*pi;  Circle1=xc+R*cos(theta);  Circle2=yc+R*sin(theta);   plot(Circle1,Circle2,'g','linewidth',1);  hold on;%plot(x,y,'r','linewidth',1);scatter(x,y,2,'r');axis equal
title(['xc=',num2str(xc),', yc=',num2str(yc),', R=',num2str(R)]);data=[xc,yc,R]%保存数据
% data=['xc','yc','R'];
% [M,N]=size(data);
% data_cell=num2cell(data,ones(M,1),ones(N,1));

处理结果值

m=xlsread('output/result.xls');
y1=m(:,1);
y2=m(:,2);
y3=m(:,3);
x=[1:1:8];
%xc
plot(x,y1,'r','linewidth',1);
title('xc');
waitforbuttonpress;
%yc
plot(x,y2,'g','linewidth',1);
title('yc');
waitforbuttonpress;
%R
plot(x,y3,'b','linewidth',1);
title('R');
waitforbuttonpress;plot(x,y1,'r','linewidth',1);
% legend('xc');
hold on;
plot(x,y2,'g','linewidth',1);
% legend('yc');
hold on;
plot(x,y3,'b','linewidth',1);
legend('xc','yc','R');

使用一组坐标信息拟合圆(matlab)相关推荐

  1. 三维重建(8)之三维空间点集拟合圆,获取圆心及半径

    三维重建之三维空间点集拟合圆,获取圆心及半径 给定任意一组三维空间点,通过拟合运算得到圆的圆心和半径,matlab仿真效果如下: 1. 拟合原理 首先,所有离散点尽可能在一个平面上,平面方程可表示为 ...

  2. 最小二乘法拟合圆公式推导及vc实现[r]

    最小二乘法(least squares analysis)是一种 数学 优化 技术,它通过 最小化 误差 的平方和找到一组数据的最佳 函数 匹配. 最小二乘法是用最简的方法求得一些绝对不可知的真值,而 ...

  3. 圆检测——最小二乘法拟合圆的推导

    http://blog.163.com/small_duan/blog/static/28584262200872340079/ 最小二乘法(least squares analysis)是一种 数学 ...

  4. 最小二乘法拟合圆公式推导及其实现

    1.1最小二乘拟合圆介绍与推导 最小二乘法(least squares analysis)是一种数学优化技术,它通过最小化误差的平方和找到一组数据的最佳函数匹配.最小二乘法是用最简的方法求得一些绝对不 ...

  5. 最小二乘法拟合圆公式推导及vc实现

    最小二乘法(least squares analysis)是一种 数学 优化 技术,它通过 最小化 误差 的平方和找到一组数据的最佳 函数 匹配. 最小二乘法是用最简的方法求得一些绝对不可知的真值,而 ...

  6. 最小二乘法拟合圆c语言,最小二乘法拟合圆公式推导及其实现

    https://blog.csdn.net/Jacky_Ponder/article/details/70314919 1.1最小二乘拟合圆介绍与推导 最小二乘法(least squares anal ...

  7. matlab中离开网格的流量,数学建模【数据处理方法(一维、二维插值方法;数据拟合方法;插值and拟合的MATLAB实现)】...

    [学习网址:MOOC---郑州轻工业大学---数学建模与实验]数学建模专栏 笔记01[第1.2章][概述.软件介绍] 笔记02[第3章][数据处理方法] 笔记03[第4章][规划模型] 笔记04[第5 ...

  8. halcon已知多点拟合圆_Halcon拟合圆spoke、拟合直线算子rake 用于测量 【开源版下载】...

    51Halcon诚邀您的加入,专注于机器视觉开发与应用技术,我们一直都在努力! 您需要 登录 才可以下载或查看,没有帐号?会员注册 x 原826工作室鸟叔真情奉献 Halcon拟合圆Spoke.拟合直 ...

  9. matlab三次拟合多项式,matlab三次多项式拟合

    暂无评价|0人阅读|0次下载|举报文档 DSC曲线的三次样条拟合与Matlab实现_能源/化工_工程科技_专业资料.DSC曲线拟合与Matlab实现第... 人阅读|次下载 曲线拟合的最小二乘法mat ...

最新文章

  1. 网络安全技术分析:DDoS的攻与防
  2. 防URL参数攻击方案
  3. 读书-算法《程序设计导引及在线实践》-简单计算题5:装箱问题
  4. cs224n第二讲词向量表示:word2vec
  5. python requests cookie_Python requests模块cookie实例解析
  6. JAVA中String类的intern()方法的作用
  7. php实现中间件6,说一说ThinkPHP6中五花八门的中间件_PHP开发框架教程
  8. 小程序 | 微信小程序多图上传(点击上传、可修改删除与放大回显)
  9. 正则获取前8位数字_数据取整,获取字符串前数字另辟蹊径之LOOKUP
  10. Matlab实现图像高斯滤波(公开代码)
  11. 基于gmapping的激光slam导航
  12. 读书心得:一个程序员的自我反思
  13. 2022低压电工操作证考试题及模拟考试
  14. 正则表达式--教程二(语法)
  15. 称球问题|信息量|拓展|C++代码实现|12大小一样的球,找出其中质量不一样的球解析和代码实现
  16. 阿里云个人账户如何变更为企业用户
  17. 苯乙酸(PAA)(CAS 103-82-2)的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  18. pdf转excel,如何把pdf转换成excel表格
  19. 拜读阮一峰JavaScript教程笔记
  20. Python:定时运行脚本

热门文章

  1. 房价必然增长的十个原因
  2. matlab学习日志20210812
  3. 【厚积薄发系列】C++项目总结20—pdb和dump服务器部署以及结合windbg自动下载
  4. 8.14-T1村通网(pupil)
  5. 谭八爷系统模式的探讨
  6. DeepSpectra: An end-to-end deep learning approach for quantitative spectral analysis翻译
  7. 各种Android UI开源框架 开源库
  8. 项目三:爬取视频磁力链接
  9. 勇闯掘金小游戏为一款多个小游戏的合集游戏,有五个关卡:找掘金、石头剪刀布、寻找藏宝图、打地鼠、抽奖。基于Vue
  10. docker安装及设置镜像源-zls