我正在使用GPS装置和移动计算机来跟踪行人的行程.我想实时"清理"输入的GPS信号,以提高其准确性.此外,事实上,不一定是实时的,我想"锁定"个人的GPS修复到道路网络的位置.是否有任何技术,资源,算法或现有软件可以在前面提出建议?
我已经在信号清理方面考虑了一些事情: - 丢弃修复数量为num.卫星= 0 - 速度不自然地高(例如,600英里/小时)
并且在"锁定"到街道网络(我听到称为"地图匹配")方面: - 根据均方根误差锁定到最近的网络边缘 - 当修复远离道路网络时,突出显示这些点和允许用户使用GUI(比如Web浏览器中的OpenLayers)来拖动,捕捉和放下道路网络
谢谢你的想法!
我假设你想"清理"你的数据,以消除由狡猾的读数引起的错误尖峰.这是一个基本的dsp过程.您可以采取几种方法,这取决于您希望它有多聪明.
在基本层面是的,你可以只寻找真正的大数字,但是什么是一个非常大的数字?是的600英里每小时很快,但如果你在协调中则不行.虽然您正在寻找一个"与众不同"的价值,但您实际上是硬编码"普通".更好的方法是检查过去的数据以确定"普通"是什么,然后查找偏差.你可能要考虑计算数据的方差在当地小窗口,然后看看你的当前数据的z分数大于某一阈值,如果是的话,排除它.
一个注意事项:您应该使用3作为最小卫星,而不是0. GPS需要至少三个源来计算水平位置.我使用的每个GPS都包含数据流中的状态标志; 少于3颗卫星在某种程度上被报告为"不良"数据.
您还应该考虑"固定"数据.你会如何处理行人站立一段时间?也许在人行横道上等待或与街头小贩互动?
根据您计划对数据执行的操作,您可能需要压缩这些额外的数据点或将它们平均为单个点或位置.
你提到这是行人跟踪,但你也提到了一个道路网络.行人可以在很多汽车无法行驶的地方旅行,事实上,这些地方可能不会出现在你所发现的"公路网"的任何地图上.大多数路线图都没有像公园,徒步旅行路线等的步行路径.不要认为"越野网"意味着GPS没有得到准确的修复.