EDA365电子论坛网
标题:
如何拟合一个不完整的椭圆?
[打印本页]
作者:
zjsxuw
时间:
2019-12-16 10:09
标题:
如何拟合一个不完整的椭圆?
我想用一组边界点拟合椭圆,但是发现边界点里有四分之一的样本点是噪音,请问如何能够排除这些噪音的影响来拟合椭圆?
- G5 T# c& |$ b9 C7 A- i
另外,我用matlab拟合椭圆的时候发现可能拟合出来是一条双曲线,请问如何加限制条件才能保证拟合的结果一定是椭圆?
! u, p* g1 a* w' Z* g" f$ m
求大神帮助,不甚感激!!
5 V$ r5 r R* B/ g1 \+ l; u7 m& F
作者:
STM
时间:
2019-12-16 19:27
方案1:如果参与拟合椭圆有10个边界点,其中2个点是噪声,那么先用这10个点一起拿进去拟合,再根据拟合出的模型求10个边界点的误差函数,设定误差函数的阈值,大于该阈值则视为噪音提出掉,此方法适用于噪声点占边界点比例较小的情况
6 Y2 d/ l( J1 ?( v% \
方案2:根据椭圆曲率的定义,遍历所有边界点,以某一个边界点为中心,以相邻10个点为一个bin,在中心点前后取两个bin,以各自bin中四个最常出现的切线方向作为这个bin的切线方向,计算相邻两个bin的切线变化值,除以20的弧长,根据曲率定义即可求该边界点的曲率,依次遍历所有边界点得出曲率变化方程,设定阈值,筛掉大于阈值的噪音
" {- _0 w, |: {$ q/ ]( M: Z
实测结果显示,经过两种方法筛选后的边界点交集,已基本去除了噪音点,从而保证拟合的可靠性
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2