Vert

I successfully converted, merged and profiled the 2,174 mile Appalachian Trail this week. It’s quite the data set at some 320,000 GPS points. I killed TopoFusion and my computer several times in the process of hastily writing code to wrestle with it.

The challenge? The GPS data, once cleaned up, came to some 2,109 miles, while the guidebook’s distance and tabular elevations come out to 2,174. Now, how to get the two profiles to match, without knowing the source of error on either side?

The GPS data was likely collected by dozens of different groups. Same for the tabular data. Curiously, one lagged behind the other in distance at first, only to be gradually overtaken by the other. So the error was far from constant, and not changing linearly.

The solution was pretty cool – grab the waypoints for the 260 shelters along (or near) the trail, and find the closest point on the GPS track for each of them. Then do a substring match on the tabular data to find the corresponding table distance. Now do a repeated linear interpolation between “calibration” points, and like magic, we have matching profiles.

Other specialized code was also needed to get good DEM data for a 2,100 mile track covering 5-6 UTM zones. Ouch. I hope to soon be using one of Brad Culberson’s elevation servers for GPS track correction.

Estimate for total climbing on the AT: ~500,000 feet. !!!

These profiles will be in an upcoming guidebook for the AT, written by David Miller.

Large datasets are the name of the game recently. I’m still working on my trail finder project, using the 2,500 mile Great Divide route as training (and testing) data. I train my model using the southern 1,200 miles, and test on the northern half. The most recent challenge has been to write a Markov Chain Monte Carlo sampler for trails (linear structure). If you know what that means, you need to email me, because I need help!

1 comment to Vert

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>