【问题标题】:Identifying driving events from GPS and accelerometer data从 GPS 和加速度计数据识别驾驶事件
【发布时间】:2017-01-12 17:24:20
【问题描述】:

我有一个物联网设备每秒从正在行驶的汽车发送以下信息:

  1. 时间戳
  2. GPS 坐标(纬度/经度)
  3. GPS 方位角或方位角
  4. 来自 GPS 的车速
  5. X、Y 和 Z 轴上的加速度计读数。

根据这些信息,我必须确定以下驾驶事件:

  1. 制动
  2. 加速
  3. 左转
  4. 右转

    我正在尝试使用 ENCOG .net 库中的神经网络分类器来实现这一点,但我被困在以下几点:

1. 如何格式化输入,以便将其馈送到神经网络 网络?我所拥有的是一个包含 8 列和一个 可变行数:

例如:- 右转可能是下面的矩阵

Timestamp  Lattitude  Longitude   Azimuth     Speed  Xacc        Yacc        Zacc
4:57:08 PM 39.937185  -74.9530667 305.3293762 0     -0.904202607 0.33408456  0.105773433
4:57:09 PM 39.93719   -74.95307   303.1105042 0     -0.89096231  0.37406743  0.091855986
4:57:10 PM 39.9372067 -74.9530783 299.4731445 9     -0.880157497 0.395575262 0.058842602

同样可以左转

Timestamp  Lattitude  Longitude   Azimuth     Speed Xacc         Yacc        Zacc
4:57:26 PM 39.9377    -74.954015  257.7362976 18    -0.932709113 0.267096326 -0.024819622
4:57:27 PM 39.937715  -74.9540733 247.346344  18    -0.94067372  0.271379559 -0.054581382
4:57:28 PM 39.937715  -74.9541317 225.6322174 17    -0.923718111 0.293954308 -0.081829668
4:57:29 PM 39.937695  -74.9541917 213.6928406 20    -0.911598183 0.317324907 -0.128199049
4:57:30 PM 39.93766   -74.9542433 208.975174  24    -0.90052994  0.351010895 -0.121179532
4:57:31 PM 39.9376017 -74.9542833 205.9306641 28    -0.891561502 0.373537211 -0.078259489
4:57:32 PM 39.9375367 -74.9543267 206.532135  31    -0.891412538 0.389423688 -0.047274249

2. 可以应用哪些神经网络模式和类型 解决了吗?

3. 可以使用什么样的训练算法?

如果有人能阐明如何解决这个问题,我将不胜感激。

【问题讨论】:

    标签: .net gps neural-network accelerometer encog


    【解决方案1】:

    这是我试图解决这个问题的方法。

    1. 减少输入矩阵以仅包含相关信息 来识别事件。所以以下列被丢弃 输入
      • 时间戳
      • 纬度
      • 经度和
      • 速度

    2.减少的输入看起来像

    Az      Xacc        Yacc
    257.736 -0.93270911 0.267096326
    247.346 -0.94067372 0.271379559
    225.632 -0.92371811 0.293954308
    213.693 -0.91159818 0.317324907
    208.975 -0.90052994 0.351010895
    205.931 -0.8915615 0.373537211
    

    3.对输入重新采样以至少有 10 个实例(行)

    4.将10行展平为一个包含30个值的向量,如下所示

    Az1     Xacc1       Yacc1       Az2     Xacc2       Yacc2       Az.. Xacc.. Yacc..   Az10       Xacc10      Yacc10      Target
    257.736 -0.93270911 0.267096326 247.346 -0.94067372 0.271379559 ..   ..     ..       206.532    -0.89141254 0.389423688 Left
    

    5.使用像多层感知器这样的前馈模式

    • 30 个输入神经元
    • 2 个隐藏层(使用修剪技术识别神经元数量)
    • 4 个输出神经元(使用等边编码:3 个用于上述 4 个类别,1 个额外用于非事件)
    • 激活函数:双曲正切

    6.使用弹性传播进行训练

    请让我知道您对此解决方案的想法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-19
      • 1970-01-01
      • 2012-03-24
      • 1970-01-01
      • 2019-03-12
      • 1970-01-01
      • 2011-06-17
      • 1970-01-01
      相关资源
      最近更新 更多