注意:我不确定这是否是这个问题的正确论坛。如果没有,请指教。
背景:我正在使用放置在车辆上的 android 应用程序收集大量数据。我以大约 1 秒的间隔收集数据大约 2 小时,这提供了近 7200 个数据集。这些是参数:
- 时间戳(毫秒)
- 纬度
- 经度
- 速度
- 加速
现在我正在寻找简化这些数据的方法,因为处理和渲染这些数据点,尤其是在移动设备上并不是一个好主意。
编辑:作为对Spacedman评论的回答:我想简化数据,因为其中大部分是多余的。无论值是恒定的还是变化的,都会每 1 秒收集一次数据。准确性并不重要,因为它仅用于在网站上显示可视图形,在地图上绘制折线。等等所以我只想保留重现图形/线条所需的最少必要数据点。
在搜索时,我遇到了Ramer-Douglas-Peucker 算法,还找到了一个实现该算法的库。
问题:我对如何简化这些数据有点困惑。我可以 :
- 通过将每个数据视为 5D 点,以某种方式简单地了解整个事情,或者
- 生成三组数组,即
[Lat, Long, time]:[Speed, time]和[acceleration, time].
所以我的问题是:
使用这两种方法中的任何一种有什么优点/缺点吗?
我在想——由于每个指标都会有不同的变化模式,将它们结合起来会降低整个简化过程的效率吗?
还是最好将指标分开,以便将每个指标简化为最大效率?
我是一名 Java/Obj-C 开发人员,通常活跃于SO,我不是这些方面的专家,所以我想知道你们的想法。
提前致谢