onev 发表于 2014-5-11 10:20:27

电子罗盘椭球拟合

本帖最后由 onev 于 2014-5-11 10:22 编辑

之前在这里发了一帖子http://www.amobbs.com/thread-5579200-1-1.html,主要是问问题 结果没人愿意解答啊真是无语好吧 但是 里面的椭球拟合是完全可用的 算是开源给大家了没看到有做椭球拟合的 或许是我没找到拟合的方法很简单把你的电子罗盘任意旋转得到六组数据 即六组(X,Y,Z),然后就得出相关参数。如果你使用本方法,请注意:椭球有大旋转或许此法并不适合,因为没有验证过大旋转是否可行。在取样本点时,请尽量取典型值,比如,你可以这样取值:将电子罗盘置于任一姿态位置,因为是椭球拟合,so,你想怎么放就怎么放,但是为了让你的数据足够典型,故推荐我的方法,比如平放,然后在这个平面内(大致就行,再次重申,是椭球拟合,理论上六组数据任意)每旋转九十度得一组数据,这样你就得到了四组,然后将电子罗盘整个翻转九十度相当于是刚才平放,现在立着放,然后每一百八十度取一组数据就得到两组了,总共六组。验证:如图,Mag.TrueX:*** Mag.TrueY:*** Mag.TrueZ:*** 这是电子罗盘读到的真实数据 MAG:***是三者拟合后的平方再开方即本地磁场大小,当然我是令其为1的,可以看到三轴数据不同即电子罗盘任意旋转,但总的磁场大小恒定。

Daniel_Lau 发表于 2014-7-1 21:40:52

感谢楼主分享!!

qwe2231695 发表于 2014-12-7 23:43:24

本帖最后由 qwe2231695 于 2014-12-8 01:52 编辑

每次要对准南北,否则不一定验证了每个轴的最大最小

onev 发表于 2014-12-8 19:33:19

qwe2231695 发表于 2014-12-7 23:43
每次要对准南北,否则不一定验证了每个轴的最大最小

不懂你在说什么?你说的那个最大最小值那是最简单的校正方法,最大加最小然后除以2   。。。。。。

zhenan421731 发表于 2014-12-8 22:18:28

谢谢楼主慷慨分享

wei4350 发表于 2015-5-26 11:53:56

谢谢分享!!!!!

zhao_chunyu9257 发表于 2016-5-10 17:24:11

最近正在找关于椭球拟合的程序,谢谢楼主分享

天浪 发表于 2016-5-12 16:50:06

最近也在了解这方面的东西,谢谢提供!

lmf159 发表于 2016-5-12 17:28:51

一篇电子罗盘椭球拟合的文章

lmf159 发表于 2016-5-12 17:31:02

我试过, 要求到文中的结果对计算精度要求很高.双精度远远不够.

Anteater 发表于 2016-6-15 03:09:25

对球进行一个线性变化,如果这个线性变化是一个对称的3x3矩阵,那么得到的就是一个椭球,这个椭球的半轴长久时矩阵的特征向量,半轴的向量就是矩阵的特征向量,这样如果把一个椭球还原成球,就是要找到这个闲心变化的逆矩阵。

椭球拟合的方式很多,用最简单的就行,然后找出逆矩阵就可以把电子罗盘的soft iron 去掉了
页: [1]
查看完整版本: 电子罗盘椭球拟合