你会推荐哪个Python的GPS库?

8 投票
6 回答
36773 浏览
提问于 2025-04-15 12:03

我在找一个免费的Python库,可以根据GPS坐标来计算你的方向和速度,可能还可以判断你是否在某个范围内之类的。

你知道有哪些库吗?用起来还不错的那种?

我们在一台Linux机器上使用Python,并从gpsd获取数据。所以我希望不需要专门的库来和设备通信。我想要的是一些Python代码,可以对数据进行一些基本的计算,比如比较最后的位置,计算速度和方向。

6 个回答

3

这本书《初学者的Python可视化》里就有这样一个例子——解析GPS数据,并从中推算出速度和位置。它的源代码可以在网上找到,地址是 http://www.apress.com/

5

我不太确定你具体的需求是什么,但根据你的设备等情况,似乎有很多可以选择的工具,比如:

如果你是说你已经获取了GPS的输出数据,只需要解析这些数据等,我猜上面提到的一个或多个工具(虽然我自己没有试过)可能会有适合这个任务的模块,具体能不能用还得看它们的许可条件;如果你在做这个,这个StackOverflow的问题也许会对你有帮助。

9

看起来,跟gpsd一起使用的python模块是我们最合适的选择。

这个gps模块提供了一些非常实用的功能。首先,它可以从gpsd获取数据,并把这些数据转换成我们能用的格式。接着,这个模块让你可以查看你的速度,以及你当前相对于北方的方向。

它还包含一个计算地球上两个坐标之间距离的功能,这个计算会考虑到地球是个球体的事实。

不过,对于我们特定的需求,还有一些功能缺失:

  • 计算两个点之间的方向。也就是说,我在点A,面朝北,那么我需要转多少度才能面向我想去的点。

  • 利用第一个功能得到的数据和我们当前的方向,计算出我们需要转动多少度才能面对目标点(这其实不难,因为大部分情况下只是简单的减法)。

使用这个库最大的麻烦是,它主要是一个gpsd的封装。如果你在其他操作系统上编程,比如Windows或MacOS,你的gps代码可能无法运行或者无法安装这个模块。

撰写回答