Share via


App Building day 3 - data smoothing...

I worked some more on my GPS app, and I'm looking for some advice from somebody with more experience in dealing with chunky data than I do.

One of the problems that I have with the GPS data that I get is that it's noisy. First of all the altitude data for GPS isn't as good as the location data. It acts as if there's a constant bit of noise added to it. The second problem is that the receiver can't always maintain a sync, and if it doesn't, it ends up with a straight-line projection of the last data, and then abruptly re-syncs when it gets a good fix again.

That means I end up with discontinuities in the altitude data, which messes things up when I try to figure out the gradient of the data, and makes the plot look pretty ugly.

What I need is a good way to smooth over those sections of bad data, and I'm open for ideas.

I did realize as I was writing this that I may be able to use the quality of data information that the GPS sends me to decide what data is bad.

Comments

  • Anonymous
    May 07, 2004
    The comment has been removed

  • Anonymous
    May 07, 2004
    Of course I meant that his signal drops and you have one point before he gets in the gondola and one when he gets out.

  • Anonymous
    May 07, 2004
    Check out my post on Savitzky-Golay smoothing filters for advice on how to smooth this type of data, especially if you plan to differentiate.

    GPS altitude data has gotten better since they turned off SA but is still not great. If you wanted to make this a commercial product for skiers though, you could probably set up a local DGPS system for the ski mountain.

  • Anonymous
    May 07, 2004
    The comment has been removed

  • Anonymous
    May 07, 2004
    If you take a look at some of the other NMEA messages, you can tell the number of satellites used to acquire the position. At least then you know what data is suspect. Altitude is particularly sensitive to few satellites and requires one more as a minimum than for lat and lng.
    Id keep a previous known position and altitude and provided I have valid data for position and altitude, Id update those values. If say altitude isnt valid, use the last known valid altitude in its place. This is a very simple filter.

  • Anonymous
    May 08, 2004
    The comment has been removed

  • Anonymous
    May 08, 2004
    The comment has been removed

  • Anonymous
    May 08, 2004
    The comment has been removed

  • Anonymous
    May 10, 2004
    Warning! Whatever you do, do not click the link above in Rolf O. Eiffel's post.

  • Anonymous
    May 10, 2004
    Seriously, that link pretty much brought my machine to a crawl by continuously opening new browser windows - all with the most disturbing pictures I've ever seen. Happens both in IE and Firefox, so be careful! Pop-up blockers will not help.

  • Anonymous
    May 10, 2004
    Thanks Jeremy.

  • Anonymous
    December 18, 2004
    Helpful For MBA Fans.

  • Anonymous
    March 15, 2008
    PingBack from http://bordercrossingstatsblog.info/eric-gunnersons-c-compendium-app-building-day-3-data-smoothing/

  • Anonymous
    June 07, 2009
    PingBack from http://weakbladder.info/story.php?id=6495