2

我负责一个程序,该程序用于创建一组节点和路径以供自主地面车辆使用。该程序通过将项目的位置指示为原点 0,0 以北 x 米和以东 y 米来跟踪其地图中所有项目的位置。在现实世界中,车辆知道原点的经纬度位置,因为它是由 dgps 系统确定的,并且精确到几厘米。我的程序不知道任何经纬度坐标。

我的目标之一是修改程序以跟踪项目的经纬度坐标,以及原点和项目相对于该原点的 x、y 位置。乍一看,似乎我要修改程序以允许传入原点的经纬度坐标,然后我希望程序会自动计算地图中当前每个项目的经纬度。根据我迄今为止的研究,我相信我需要弄清楚从 UTM (如投影)转换为经纬度坐标背后的数学,我在其中指定原点和经线等,而不是已经为 UTM 定义的任何东西。

我来问你们GIS程序员,我走对了吗?在我看来,有很多事情要处理,而且我不确定答案是否不是那么简单,“哦,是的,这里有从米到纬度的转换”

目前,由于DGPS的性质,系统真的不需要关心超过哦,什么... 40公里的位置?远离原点的半径。鉴于此,以及我需要确保坐标上的误差不大于 0.5 米的事实,我是否需要比简单的纬度/经度到米的转换常数更复杂的东西?

我对这里的材料非常了解。我可以使用一些关于要研究什么概念的指针。

非常感谢!

4

3 回答 3

2

如果可以的话,我会做一个完整的计算。这样,您将始终尽可能准确。

如果您碰巧使用 C++,GDAL是一个非常好的库。

于 2010-03-24T19:07:31.367 回答
2

给定纬度/经度的起点以及距离和方位,找到终点是测地线计算。proj.4 网站上对测地线计算和错误有很好的总结。他们得出的结论是,使用球形模型可以获得点之间距离的结果,误差最多为 0.51%。结合在WGS-84 和 ECEF之间转换的公式(请参阅“LLA 到 ECEF”和“ECEF 到 LLA”部分,似乎它可以满足您的需求。

如果您想通过将平面地图反向投影到 WGS-84 来真正确定错误,proj.4是一个投影软件包。它有源代码,并带有三个命令行实用程序 - proj,它转换为/从制图投影和笛卡尔数据;cs2cs,在不同的制图投影之间转换;和geod,它计算测地线关系。

USGS 发布了一份非常全面的地图投影处理方法

于 2010-03-25T06:45:07.140 回答
0

对于 40 公里的范围,您可能会发现将世界近似为 2D 平面可能会起作用,尽管 UTM 变换将是理想的方法 - 无论如何,我建议使用实际的 WGS84 坐标和椭球用于大圆距离或方位计算等计算。

如果你觉得无聊,你可以沿着我一直在做的事情走类似的路线,它可以用作不同数据的基类,比如 OSGB36 或 WGS84 ......

于 2010-03-24T19:06:58.153 回答