Tuesday, 18 December 2018

research - Managing error with GPS routes (theoretical framework?)


I'm looking for the appropriate theoretical framework or speciality to help me deal with understanding how to deal with the errors that the GPS system has - especially when dealing with routes.


Fundamentally, I'm looking for the requirements on the data and any algorithms to use to be able to establish the length of a trail. The answer needs to be trustworthy.


A friend of mine was the race director of a race which was billed as 160km but the Garmin watches everybody has makes it more like 190km+. It caused quite some grief at the finish line, let me tell you!



So my friend went back to the course with various GPS devices in order to remap it and the results are interesting.


Using a handheld Garmin Oregon 300 she got 33.7km for one leg. For the same leg on a wrist watch Garmin Forerunner 310xt it came out to 38.3km.


When I got the data from the Oregon it was obvious that it was only recording data every 90 seconds or so. The Forerunner does it every couple of seconds.


When I plotted the data from the Oregon I could see that it got confused by some switchbacks and put a line straight through them and a curve was made a little less.


However, I muse that the difference in the recording frequency is much of the explanation. i.e. by recording every couple of seconds the Forerunner is closer to the real route. However, there will be an amount of error because of the way GPS works. If the points recorded are spread around the real route randomly (because of the error) then the total distance will be larger than the real route. (A wiggle line going either side of a straight line is longer than the straight line).


So, my questions: 1. Are there any techniques I can use on a single dataset to reduce the error in a valid way? 2. Does my theory about the difference in recording frequency hold water? 3. If I have multiple recordings of the same routes are there any valid techniques to combine them to get closer to the real route?


As I say, I don't really know what to search for to find any useful science about this. I'm looking for ways to establish just how long a given piece of trail is and it is very important to people. An extra 30km in a race is an extra 5+ hours we weren't expecting.


Thanks for any advice you can give.



Answer



Here's how I would go about this problem, some of my suggestions may not be practicable, but if they aren't just say so in a comment.



I agree with whuber on the stats forum, and the zig-zagging error due to the high frequency of sampling of the one device seems unlikely to me to cause that large a discrepancy in the distance (How fast were you traveling?). Also I'm a bit confused about the switch backs statement, does this mean you did not take samples from one machine during a curve or whatever a switchback is?


First, if available, I would assess the accuracy of the readings overlayed with aerial imagery. Even if only some of the path is visible, it will be insightful to see the error from either GPS unit. It may also provide another means in which to estimate the route length.


Two, I see no benefit of taking readings from multiple machines. They are entirely redundant, and any differences are due to various errors which you won't be able to distinguish. If you are worried about accuracy, you simply need to take more time plotting the route and obtain multiple readings from the same location. This is essentially what you are doing with two machines, although because the samples are not taken at the same space/time point, it becomes difficult to interpolate them, and you do not know if the difference is due to when/where samples were taken between the two machines or due to satellite errors (I have no idea if satellite errors would be expected to be the same between machines, although the comment of auto-correlated errors on the stats forum suggests they might be).


Honestly I believe your time would be better spent improving the accuracy of your plot as opposed to merging the two routes together in any way. I know this could be alot of work to simply find the correct length considering your path is quite long. If you overlay the points of the device that recorded more frequently on satellite imagery and find them to be accurate, I see no problem with just using those readings. You gain what seems to me a trivial amount of information from using the other machines readings, and the added work to figure out how to use both of them together is not worth the time. If that is unsatisfactory for whatever reason, I would go back and plot the points again if you have the time. Take multiple readings at the same location, you can interpolate those readings, and use those interpolations for the vertices along your route. If you have to do this again in the future I would suggest this is the procedure you take the first time you are plotting your route.


HTH


No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...