有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

平滑后的javagps数据比较

我试图比较用于平滑GPS数据的多种算法。我想知道什么是比较结果的标准方法,以确定哪种方法可以提供更好的平滑效果

我在考虑一种机器学习方法。将基于分类器的汽车模型装箱,并检查哪些轨道提供更好的性能

对于那些在这方面有更多经验的人来说,这是一个好方法吗?还有其他方法吗


共 (6) 个答案

  1. # 1 楼答案

    机器学习不是一种很适合这项任务的方法,你必须定义什么是好的平滑

    原则上,你的任务不能通过给出一般答案的算法来解决,因为每次平滑都会以一定的量破坏原始数据,并添加虚构的位置,使用平滑数据的不同系统/人员对更改的数据做出不同的反应

    问题是:你想通过平滑实现什么 你为什么需要平滑?(您是否忘记实施或启用静止过滤器,该过滤器可消除车辆静止时的移动,在GPS中,静止时会引入跳跃位置?)

    GPS芯片已经内置了一个(最好的可能?)使用卡尔曼滤波器进行实时平滑,一方面比后期处理的smotthing算法拥有更多信息,另一方面则更少。 所以接下来你要问自己:你比较后处理的smooting算法还是实时算法?(可能是后处理)将实时平滑算法与后处理平滑算法进行比较是不公平的

    再次强调:你对平滑数据的期望是什么?:它们看起来有点不错,但像电视广告的Photoshop模型一样不切实际

    什么是好的平滑?接近无人知晓的真实车辆位置,或低加速度曲线

    我更喜欢一种平滑算法,它能产生最接近真实(通常未知)车辆轨迹的曲线

    或者你可能只是认为它应该看起来很漂亮:在这种情况下,用不同的颜色覆盖曲线,在卫星图像地图上显示,让一组人(至少拥有并驾驶自己的汽车的专家)决定什么看起来好看和真实。 我们人类拥有最好的多用途模式匹配算法

    又一次为什么要平滑:在地图中显示以取悦观看该地图的人类? 或者使用平滑后的轨迹来提供与原始数据有问题的其他算法
    为了取悦人类,我在上面给出了一个答案
    要取悦其他算法:
    他们需要什么?更近的位置?或者更好的路线价值/点间方向。 您希望平滑哪些属性:仅是纬度、经度坐标,还是速度值和航向值

    我在GPS跟踪方面有很多专业经验,我建议,只需移除速度低于7公里/小时的所有位置,并保持其余位置不变。在大多数情况下,不需要进一步平滑

    否则会很贵:
    可能的解决方案:
    1) 您安排了一个2000欧元的参考GPS接收器,该接收器随磁性车顶天线一起交付(例如公司半球2000 GPS接收器),并将其用作参考
    2) 您使用通常用于任务的消费者GPS(智能手机等)

    两者都安装在车内:驾驶一些条件良好(高速公路)的测试跑道,但在非常糟糕的情况下驾驶更多的跑道:强劲的曲线与左右两侧的大房子相结合。穿过隧道,一个是struight,一个是Curve,如果你有的话

    3)将平滑算法应用于消费者GPS轨迹
    4) 通过匹配两个位置,将平滑后的轨迹与参考轨迹进行比较,最后计算(RMSE均方根误差)

    困难 匹配两个位置:希望时间能精确匹配,但通常情况并非如此(0,5s的偏移可能)。 想想当你的GPS出现故障时你会怎么做

    首先考虑显示一个原始轨迹并识别出什么样的不平滑数据是不合适的/好看的。(可能以后会在这里发布照片)

  2. # 2 楼答案

    我在这个话题上没有经验,但我脑子里没有什么东西可以帮助你

    你知道那是一辆车您知道数据是从汽车生成的,因此可以定义汽车的一组属性。例如,如果一辆汽车以高于50公里的速度行驶,则转弯角度应至少为110度。我绝对是在猜测这些值,但如果你做一点研究,我相信你将能够定义这些属性。下一步你可以做的是测试每个近似值如何适合汽车的特性,并选择最好的一个

    原始数据我假设您正在给定道路的一部分上测试所有方法。你可以生成一条“原始gps轨迹”——一条最适合汽车运动的轨迹。谷歌地图可能会帮助你生成一些gps设计的更高精度的跟踪系统。然后测量每个近似值和生成的轨迹之间的距离——距离最小的轨迹获胜

  3. # 3 楼答案

    我认为在地址转换后,你很容易匹配坐标。 因为地址有街道、区域和城市。因此,您可以轻松匹配不同的半径

    让我们试试这个link

  4. # 4 楼答案

    一般来说,没有通用的有效方法来比较两个数据集,因为它完全取决于应用/要求的质量标准

    谢谢你

    I was thinking on a machine learning approach. To crate a car model based on a classifier and check on which tracks provides better behaviour.

    这意味着你需要从数学上定义你的术语“更好的行为”

    应用程序的一个可能的质量标准如下(它由两个部分组成,表示相反的质量方面):

    第一部分(与原始数据的偏差):计算平滑数据和原始数据之间的RMSE(均方根误差)。这将为平滑轨迹与给定原始坐标的偏差提供度量。这意味着,如果进行更多平滑处理,则中的误差(RMSE)会锐化。如果你减少平滑度,它会减少褶皱

    第二部分(轨道平滑度):计算车辆沿轨道所经历的平均绝对横向加速度(第二偏差)。如果你平滑得更多,这将减少褶皱,如果你平滑得更少,这将减少褶皱。也就是说,它的行为与RMSE相反

    结果评估:

    (1)找到一个数据序列,你知道下面的GPS轨迹是一条直线,或者被跟踪的物体没有移动。请注意,对于这些轨道,(横向)加速度定义为零(!)。 对于这些,计算RMSE和平均绝对横向加速度。 加速度(几乎)为零的方法的RMSE来自测量误差

    (2)在坐标系中绘制结果,RMSE位于x轴,平均加速度位于y轴

    (3)选择所有RMSE与步骤(1)类似的方法

    (4)从这些方法中,选择加速度最小的方法。这些给你最平滑的轨迹,误差通过测量误差来解释

    (5)你完成了:)

  5. # 5 楼答案

    看看这篇讨论比较机器学习算法的论文:

    “在两种学习算法中选择 基于“校准测试”,可从以下网址获得: http://www.cs.waikato.ac.nz/ml/publications/2003/bouckaert-calibrated-tests.pdf

    也可以看看这篇文章:

    机器学习算法在单样本和单样本上的贝叶斯比较 “多个数据集”可从以下网址获得: http://www.jmlr.org/proceedings/papers/v22/lacoste12/lacoste12.pdf

    注意:从问题中可以看出,您正在寻找比较机器学习算法结果的最佳方法,而不是寻找可能实现此功能的其他机器学习算法

  6. # 6 楼答案

    使用好的老卡尔曼滤波器怎么样