java里的椭圆拟合_[求助]椭圆的跟踪拟合

[求助]椭圆的跟踪拟合

图中的小黑点表示数据点,这些数据点是角度编码器在转动过程中依次得到(可以理解为这些数据点表示转轴当时的角度位置),理想情况下编码器转动一圈得到的数据点应组成一个圆(圆心为原点,半径R)。但由于数据存在噪声,并且在转动过程中有直流偏差,而且x轴和y轴的增益大小不同,所以数据点形成如图所示的椭圆状。我的目的是找到一种算法能求出由数据点拟合出的最佳椭圆(即椭圆的长轴a,短轴b以及圆心位置)。

导师建议的思路:从一个单位圆开始(如图),根据不断得到的每个数据将单位圆进行调整(不断变化圆心位置及半径大小,每次的变化量都很小,所谓的跟踪算法),使得单位圆在编码器转动时不断逼近最佳椭圆,经过转动若干圈后逼近这个椭圆。数据点存储个数越少越好(因为片上存储器很小)。因为每一圈得到的数据值都不同,所以这种方法优点是不用关联很多数据点,可以实时跟踪数据点的变化,拟合出比较精确椭圆。如果有更好的解决方法也欢迎指教。

小弟之前从来没有类似的经验,拜托各位大哥大姐给点建议,先谢过!

[此贴子已经被作者于2006-11-15 23:30:26编辑过]

搜索更多相关的解决方案:

椭圆  拟合  跟踪

----------------解决方案--------------------------------------------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值