Snapping GPS tracks to road segments
First Claim
1. A method for snapping a position on a location track to a position on a road segment, the method comprising:
- accessing a location track comprising the plurality of geographic positions, each geographic position including a latitude and a longitude, and obtained from a location aware device;
for each of the plurality of geographic positions on the location track, determining a likelihood that a geographic position is snapped to a position on a road segment using the likelihoods of snapping all previous geographic positions on the location track to all possible positions on the road segments, wherein the road segment comprises a plurality of positions having a latitude and a longitude;
determining a most likely snapped position for the last geographic position on the location track received from the location aware device using the likelihoods of snapping all previous geographic positions on the location track to all possible positions on the road segments;
determining a most likely path of snapped positions on the road segments for all of the geographic positions using the most likely snapped position for the last geographic position on the location track;
snapping the plurality of geographic positions on the location track to the most likely path of snapped positions on the road segments; and
storing the most likely snapped positions on the road segments for each of the plurality of geographic positions on the location track.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for snapping positions from location aware devices to road segments are provided. Data from the location aware device is received, which includes data about the location and direction of the location aware device. Each of the positions of the location aware device is snapped to a position on a road segment based on various factors, including the log likelihoods of snapping all of the previous positions of the location aware device to other possible positions on road segments, the comparison of direction of the location aware device and the direction of the road segment, and the distance between the location of the location aware device and the location of the road segment. Multiple threads can be generated to determine the most likely path for the location aware device. A most likely path of positions on road segments is determined for the location aware device and stored.
46 Citations
17 Claims
-
1. A method for snapping a position on a location track to a position on a road segment, the method comprising:
-
accessing a location track comprising the plurality of geographic positions, each geographic position including a latitude and a longitude, and obtained from a location aware device; for each of the plurality of geographic positions on the location track, determining a likelihood that a geographic position is snapped to a position on a road segment using the likelihoods of snapping all previous geographic positions on the location track to all possible positions on the road segments, wherein the road segment comprises a plurality of positions having a latitude and a longitude; determining a most likely snapped position for the last geographic position on the location track received from the location aware device using the likelihoods of snapping all previous geographic positions on the location track to all possible positions on the road segments; determining a most likely path of snapped positions on the road segments for all of the geographic positions using the most likely snapped position for the last geographic position on the location track; snapping the plurality of geographic positions on the location track to the most likely path of snapped positions on the road segments; and storing the most likely snapped positions on the road segments for each of the plurality of geographic positions on the location track. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer-readable storage medium storing executable computer program instructions for snapping a position on a location track to a position on a road segment, the computer program instructions comprising instructions for:
-
accessing a location track comprising the plurality of geographic positions, each geographic position including a latitude and a longitude, and obtained from a location aware device; for each of the plurality of geographic positions on the location track, determining a likelihood that a geographic position is snapped to a position on a road segment using the likelihoods of snapping all previous geographic positions on the location track to all possible positions on the road segments, wherein the road segment comprises a plurality of positions having a latitude, a longitude; determining a most likely snapped position for the last geographic position on the location track received from the location aware device using the likelihoods of snapping all previous geographic positions on the location track to all possible positions on the road segments; determining a most likely path of snapped positions on the road segments for all of the geographic positions using the most likely snapped position for the last geographic position on the location track; snapping the plurality of geographic positions on the location track to the most likely path of snapped positions on the road segments; and storing the most likely snapped positions on the road segments for each of the plurality of geographic positions on the location track. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for snapping a position on a location track to a position on a road segment, the method comprising:
-
accessing a location track comprising the plurality of geographic positions, each geographic position including a latitude and a longitude, and obtained from a location aware device; for one or more geographic positions on the location track, generating one or more worker threads, wherein the one or more worker threads perform steps comprising; determining a likelihood that the geographic position is snapped to a position on a road segment using the likelihoods of snapping a plurality of previous geographic positions on the location track to a plurality of possible positions on the road segment, wherein the road segment comprises a plurality of positions having a latitude and a longitude; determining a plurality of possible snapped positions on the road segment for the geographic position; generating a main thread on the location track, wherein the main thread performs steps comprising; determining transitions between the plurality of possible snapped positions generated by the one or more worker threads; determining a most likely snapped position for the last geographic position on the location track received from the location aware device using the likelihoods of snapping the plurality of previous geographic positions on the location track to the plurality of possible positions on the road segments; determining a most likely path of snapped positions on the road segments for all of the geographic positions using the most likely snapped position for the last geographic position on the location track; snapping the plurality of geographic positions on the location track to the most likely path of snapped positions on the road segments; and storing the most likely snapped positions on the road segments for each of the plurality of geographic positions on the location track.
-
Specification