1

我正在处理需要在它们之间进行插值的大量坐标点。基本上它是什么,是各个纬度和经度的温度。我想插值以获得圆形纬度和经度的温度。

例如,我知道在

44.56N,56.42W,温度=50

47.82N,57.845 W,温度 = 44.2 度

45.74N,59.216 W,温度 =60.1 度

我想获取这些数据并在 46.0N 58.0 W 处插入温度。有人能指出我正确的方向吗?我什至不知道从哪里开始。甚至一些伪代码或维基百科链接也会有所帮助。插值不必太精确,只要让我进入球场即可。

谢谢

4

2 回答 2

0

有趣的问题。我想最简单的近似方法是加权距离(每个点的平均温度,加权距离目标点的距离)。要确定距离看:计算两个经纬度点之间的距离?(Haversine 公式)http://www.movable-type.co.uk/scripts/latlong.html

如果您想要更好的插值方法,请考虑区域插值。我不知道这将如何适用于特定点而不是区域,但似乎是最适用的方法。

于 2013-07-08T20:39:27.973 回答
0

如果其他人遇到这种情况,我最终将我的数据点存储在四叉树中,然后使用查询范围方法在每个象限中找到两个最近的坐标。然后我根据每个点与目标坐标的距离进行反距离平均。这似乎给出了很好的结果,但运行时间有点慢。将我的 60,000 个数据点加载到四叉树中大约需要 30 秒。然后大约需要一分钟来查询该数据以计算 2500 个点。如果我想出更快的东西,我会更新。

于 2013-07-22T20:37:45.137 回答