gpt4 book ai didi

java - GPS位置抖动去除算法/理论

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:03:26 31 4
gpt4 key购买 nike

我正在尝试在 Android 上编写一个 GPS 跟踪(类似于慢跑应用程序),但 GPS 位置抖动问题使它变得丑陋。当精度为 FINE 且精度在 5 米以内时,位置每秒抖动 1-n 米。您如何从合法运动中确定或过滤掉这种抖动?

Sporypal 等应用程序显然有一些方法可以过滤掉这种噪音。

有什么想法吗?

最佳答案

您可以通过低通滤波器运行这些位置吗?

命令的东西

x(n) = (1-K)*x(n-1) + K*S(n)

在哪里

S 是噪声样本,x 是低通滤波样本。 K 是一个介于 0 和 1 之间的常数,您可能必须对其进行试验才能获得最佳性能。

根据 TK 的建议:

我的伪代码看起来非常像 C:

    float noisy_lat[128], noisy_long[128];
float smoothed_lat[128], smoothed_lon[128];
float lat_delay=0., lon_delay=0.;

float smooth(float in[], float out[], int n, float K, float delay)
{
int i;

for (i=0; i<n; i++) {
*out = *in++ * K + delay * (1-K);
delay = *out++;
}

return delay;
}

loop:
Get new samples of position in noisy_lat and noise_lon

// LPF the noise samples to produce smoother position data

lat_delay = smooth(noisy_lat, smoothed_lat, 128, K, lat_delay);
lon_delay = smooth(noisy_lon, smoothed_lon, 128, K, lon_delay);

// Rinse. Repeat.
go to loop:

简而言之,这只是一个具有单样本延迟的反馈积分器。如果您的输入在所需信号之上有低频白噪声,则该积分器将随时间平均输入信号,从而使噪声分量平均到接近零,从而为您留下所需信号。

它的效果如何将取决于你的信号有多少噪声和滤波器反馈系数 K。正如我之前所说,你必须稍微调整一下这个值,看看哪个值产生最干净、最理想的效果结果。

关于java - GPS位置抖动去除算法/理论,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9184418/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com