P(1)*x^2+P(2)*y^2+P(3)*x*y+P(4)*x+P(5)*y+P(6)=0
则程郑仔序:
x = x(:)y = y(:)% 设x和y坐标各存于一个向量中
N = length(x)
H = [x.^2, y.^2, x.*y, x, y, ones(N,1)]
Q = (H.'*H)
[V, D] = eig(Q)
D = diag(D)
[~, ind] = sort(D)
P = V(:, ind(1))
最后就得到了长度6的参数向量P。
用的x、y的散点昌基坐标,去拟合椭圆的参数,即长半轴a、短半轴b,中心坐标(h,k)。要拟合这些参数,可以按下列步骤来实现:
首先,我们先要自定义椭圆的一般式函数,即
func=inline('(X(:,1)-a(1)).^2/a(2).^2+(X(:,2)-a(3)).^2/a(4).^2-1','a','X')
其二,根据已知的x、y的散点坐标,利用nlinfit
()非线性回归函数,拟合出a、b、h、k数值。
然后,利用得到a、皮伍b、h、k计算出拟合后的y值。
最后,用polt()函数在同一窗口绘制原始数据曲线与拟合数据曲线
运行程耐握谨序后可得到如下结果。
处理办法是有的,但比较繁琐。实施方法:1、用SP软件或画图软件将原图片上分割成单独八个图片(图形的像素与原图片的像素应一致),分别保存八个图形文件。
2、用图形命令,提取首塌图像边缘数据
3、根据数据,利用一般式的椭圆方程,
Ax²+Bxy+Cy²+Dx+Ey+F=0
拟合出斜椭圆(其方程可以查看有关资料)的系数A、B、C、D、E、F
4、重复八次,就可以得到颤此你想要的椭圆方程及图形者洞圆。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)