Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I am using Google Maps to implement a GPS Monitoring system of data collected from vehicles. My problem occurs when the points and lines do not match with the route and cut through other streets and structures such as shown in the example below.

How can I solve this problem?

screenshot

share|improve this question
2  
You need to do some map-matching. For that to work out, you need access to the underlying data. This might not be possible with google maps. See this for more details: gis.stackexchange.com/questions/5761/… –  Devdatta Tengshe Jun 26 '13 at 8:34
    
While you may be able to find a solution for some cases, it won't work every time. Think about what's going to happen when you end up in a high rise area - or any area - with little to no GPS signal. The app can't intelligently guess where you're going, so why do you expect it to? You obviously need more training in how this 'stuff' works. –  Geoist Jun 27 '13 at 21:50
    
@Geoist and how do gps tracking applications draw the route ? –  opc0de Jun 28 '13 at 6:09
1  
@opc0de Firstly, you have 2 waypoints over the span of what looks like 500m. Trying to interpolate and superimpose your position between those 2 points is impossible. Google maps can guess where you drove, but with absolutely no certainty unless you have additional accelerometer, wheel tracking data as well. Consumer based products use a combination of high sample rate (1/sec), possible accelerometer data, and complex algorithms that take into account street length, turning time, street direction data etc. Source: I've designed such algorithms that are used in production globally. –  Geoist Jun 28 '13 at 22:49
    
@Geoist thanks a lot, the devices I use have a bad habbit of sending data slowly and sometimes not accurate at all. Chinese...products. So do you think I need to change them in order to acheive a decent result? –  opc0de Jun 29 '13 at 7:12
add comment

4 Answers 4

You should check out trackMatching. Its free, efficient and powerful.

share|improve this answer
add comment

If you only have a few GPS points, you may be able to use the waypoint functionality of the directions API and have Google calculate the routing. This may not reflect the actual route taken, of course, but I doubt thats possible anyway, unless you have other data.

share|improve this answer
add comment

The easiest way to solve your problem is to get more coordinate readings from your GPS device. When you have more GPS coordinates taken is shorted time interval, then you have more points on the map and when you join the lines through the points you will get more precise track.

The current results, shows that your GPS device collected GPS coordinate less frequently or the car was traveling too fast or both case.

share|improve this answer
add comment

If you want to stick to Google maps, they have also released an experimental "Tracks API" which does that. See https://developers.google.com/maps/documentation/tracks/

share|improve this answer

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.