实际上有一个帖子与此非常相似,但在大约5年前提出了一个不同的问题。
我有一组不是椭圆形的点,我想在最小二乘意义上为它们拟合椭圆。这些是我发现进行计算的函数。我对它们进行了简单检查,但未发现任何错误。
http://nicky.vanforeest.com/misc/fitEllipse/fitEllipse.html
package main
import (
"crypto/aes"
"log"
)
func main() {
result := make([]byte, 16)
key := []byte{
52, 51, 51, 100, 52, 53, 98, 57, 51, 98, 98, 98, 102, 102, 56, 100,
54, 53, 53, 49, 55, 56, 54, 51, 50, 102, 49, 56, 101, 97, 101, 97,
}
data := []byte{89, 0, 192, 238, 251, 3, 19, 11, 0, 0, 0, 0, 0, 15, 0, 236}
cipher, err := aes.NewCipher(key)
if err != nil {
log.Fatal(err)
}
cipher.Encrypt(result, data)
log.Println(result)
}
我的问题是:我有一组地理空间数据,我需要适应这些省略号。为了比较不同纬度的椭圆,我需要将它们全部投射到局部切线平面。这很简单。 但是:使用一个这样的样本数据集,函数可以工作并给我一个格式良好的椭圆。然而,当我进行投影时,它给出了一个椭圆,其长轴比短轴短,这使得计算非虚拟偏心很困难:P($ e = \ sqrt {1 - b / a} $ )。
即使我的投射是错误的(事实并非如此),这些功能仍应能够采用这些点并产生合适的效果。我无法弄清楚为什么有些数据集会产生无意义的几何数据。有什么想法吗?
如果没有,是否有人有任何其他方法将椭圆拟合到python中的数据?