How to improve accuracy?
1 次查看(过去 30 天)
显示 更早的评论
Attached is an example of deltas(difference between the observed and the truth). How can I improve by making these deltas or residuals smaller(approach to zero)
2 个评论
回答(1 个)
Star Strider
2015-7-15
All the values are positive, leading me to believe they are absolute distances from some reference. You likely cannot improve the accuracy of any measurement, but you can reduce the error by averaging the ‘raw’ GPS readings (not the derived distances) over a small window, then deriving the distance and calculating the error. That will likely reduce it. You can never eliminate it entirely.
2 个评论
Star Strider
2015-7-15
I would use a moving-average filter with a short window on each of the (x,y,z) elements in your GPS data.
This code snippet illustrates the idea. You can use either filter (core MATLAB) or filtfilt (Signal Processing Toolbox) to do the moving-average filtering:
L = 100; % Data Record Length
v = 1:L;
xyz = randn(L, 3); % Hypothetical GPS Data (Lx3)
N = 5; % Moving Average Filter Length
filt_b = ones(1, N);
filt_a = N;
xyz_avg = filter(filt_b, filt_a, xyz);
xyz_dist = sqrt(sum(xyz.^2, 2)); % Sum Across Rows
xyz_avg_dist = sqrt(sum(xyz_avg.^2, 2)); % Sum Across Rows
figure(1)
plot(v, xyz_dist, v, xyz_avg_dist)
grid
xlabel('Observation #')
ylabel('Distance From Reference')
legend('Raw Data', 'Moving Average Of Data')
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!