问题描述
我正在寻找一种算法来找到点云和球体之间的最佳拟合.
I'm looking for an algorithm to find the best fit between a cloud of points and a sphere.
也就是说,我想最小化
其中 C 是球体的中心,r 是它的半径,每个 P 是我的 n 集合中的一个点 点.变量显然是Cx、Cy、Cz和r.在我的例子中,我可以事先获得一个已知的r,只留下C的组件作为变量.
where C is the centre of the sphere, r its radius, and each P a point in my set of n points. The variables are obviously Cx, Cy, Cz, and r. In my case, I can obtain a known r beforehand, leaving only the components of C as variables.
我真的不想使用任何类型的迭代最小化(例如牛顿法、Levenberg-Marquardt 等) - 我更喜欢一组线性方程或明确使用 SVD 的解决方案.
I really don't want to have to use any kind of iterative minimisation (e.g. Newton's method, Levenberg-Marquardt, etc) - I'd prefer a set of linear equations or a solution explicitly using SVD.
推荐答案
没有即将推出的矩阵方程.你选择 E 的行为很糟糕;它的偏导数甚至不是连续的,更不用说线性了.即使有不同的目标,这个优化问题从根本上来说似乎是非凸的;一个点P和一个非零半径r,最优解集是关于P的球体.
There are no matrix equations forthcoming. Your choice of E is badly behaved; its partial derivatives are not even continuous, let alone linear. Even with a different objective, this optimization problem seems fundamentally non-convex; with one point P and a nonzero radius r, the set of optimal solutions is the sphere about P.
您可能应该重新询问具有更多优化知识的交流.
You should probably reask on an exchange with more optimization knowledge.
这篇关于球体与点的线性最小二乘拟合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!