clc
clear
close all
data1 = xlsread('E:\SILC\project\VLP-16扫描数据\line14\single0.csv');
data=data1(1:1799,1:3);
% 显示数据点
% plot3(data(:,1),data(:,2),data(:,3),'b');
% hold on
H16=zeros(2,1);
iter =500; %迭代次数
number = size(data,1); % 总点数
sigma = 1;
pretotal=1000; %符合拟合模型的数据的个数
sample1=[]; %选取的拟合点
for i=1:iter
% 随机选择部分点
idx = randperm(number,500);
sample = data(idx,:);
X=sample; %拟合圆形
n=length(X(:,1));
y=ones(n,1);
b=[rand(1)*1000 rand(1) rand(1)];
fun=inline('X(:,1).^2+X(:,2).^2+a(1)*X(:,1)+a(2)*X(:,2)+a(3)','a','X');
[a,r,J] = nlinfit(X,y,fun,b);
vpa(a,10);
%圆心
OX =-a(1)/2;
OY =-a(2)