# US 10,309,788 B2 · Determining street segment headings

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,309,788 B2
- Document ID: US10309788B2
- Status: Granted
- Kind: B2
- Application number: 14/708,624
- Filed: 2015-05-11
- Published: 2016-11-17
- Granted: 2019-06-04
- Earliest claimed: 2015-05-11
- Assignees: United Parcel Service of America, Inc.
- Applicants: United Parcel Service of America, Inc.
- Inventors: Mark J. Davidson
- Web page: https://patentgrep.com/patent/US10309788B2

## CPC

- G01C 21/3815: {Road data}
- G01C 21/34: Route searching; Route guidance
- G01C 21/3848: {Data obtained from both position sensors and additional sensors}
- G01C 21/3852: {Data derived from aerial or satellite images}
- G06Q 10/04: Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem" (market predictions or forecasting for commercial activities G06Q30/0202)
- G09B 29/004: {Map manufacture or repair; Tear or ink or water resistant maps; Long-life maps (printing processes for maps B41M3/02; by permanently attaching map sections to sheets B42B7/00)}
- G09B 29/007: {using computer methods}
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G09B: EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS (devices for psychotechnics or for testing reaction times A61B5/16; games, sports, amusements A63; projectors, projector screens G03B)

## Abstract

Embodiments of the present invention provide methods, systems, computer program products, and apparatuses for determining whether a street segment is a one-way street segment or a bi-directional segment, validating map data, and/or updating map data. In one embodiment, a method for determining whether a street segment is a one-way street segment or a bi-directional segment is provided. The method comprises receiving vehicle telematics data associated with one or more vehicles during one or more time periods, the vehicle telematics data indicating a street segment traveled by the one or more vehicles during the one or more time periods; and based at least in part on the vehicle telematics, determining whether the street segment is a one-way street segment or a bi-directional segment.

## Claims

### Claim 1

A method for updating map data associated with a street segment, the method comprising:
receiving a plurality of instances of vehicle telematics data indicative of a travel path of a vehicle on a street segment during one or more time periods, wherein each instance of the vehicle telematics data (a) comprises location data captured by a location-determining device onboard the vehicle and (b) is captured responsive to a triggering event, the plurality of instances of vehicle telematics data comprising (i) a first instance of telematics data wherein the triggering event is detection of a vehicle event based on data generated by one or more vehicle sensors of a plurality of vehicle sensors onboard the vehicle, and (ii) a second instance of telematics data wherein the triggering event is a determination that a threshold amount of time has elapsed since the preceding instance of the vehicle telematics data was captured;
segmenting the vehicle telematics data to determine a portion of the vehicle telematics data corresponding to the travel path of the vehicle on the street segment, the segmenting of the vehicle telematics data comprising:
accessing a street segment definition associated with the street segment,
identifying a plurality of data points along the street segment, wherein identifying the plurality of data points comprises identifying a segment starting point where the vehicle entered the street segment, where the segment starting point is a data point where an immediately preceding data point was not captured when the vehicle was located on the street segment,
assessing the location data of the vehicle telematics data based on the street segment definition,
identifying one or more instances of vehicle telematics data corresponding to the street segment definition, and
defining a set of instances of vehicle telematics data consisting of the identified one or more instances of vehicle telematics data corresponding to the street segment definition,
based at least in part on the set of instances of vehicle telematics data, determining a street segment direction for the street segment, the determined street segment direction indicating whether the street segment is a one-way street segment or a bidirectional street segment;
identifying map data associated with the street segment, wherein the map data comprises street segment direction data indicator indicating whether the street segment is a one-way street segment or a bidirectional street segment; and
updating the map data to reflect the determined street segment direction for the street segment direction.

### Claim 2 (depends on 1)

The method of claim 1, wherein determining a street segment direction for the street segment comprises determining a heading associated with the travel path of the vehicle based at least in part on the vehicle telematics data.

### Claim 3 (depends on 1)

The method of claim 1, wherein the street segment is a one-way street segment.

### Claim 4 (depends on 1)

The method of claim 1, wherein the street segment is a bidirectional street segment.

### Claim 5 (depends on 1)

The method of claim 1 further comprising:
determining a first heading associated with the vehicle telematics data, wherein the first heading indicates that the vehicle traveled along the street segment in a first direction;
determining a second heading associated with the vehicle telematics data, wherein the second heading indicates that the vehicle traveled along the street segment in a second direction;
determining whether the first direction and the second direction are substantially different directions; and
responsive to determining that the first direction and the second direction are substantially different directions, indicating that the street segment is a bi-directional segment.

### Claim 6 (depends on 1)

The method of claim 1 further comprising:
determining a first heading associated with the vehicle telematics data, wherein the first heading indicates that the vehicle traveled along the street segment in a first direction;
determining a second heading associated with the vehicle telematics data, wherein the second heading indicates that the vehicle traveled along the street segment in a second direction;
determining whether the first direction and the second direction are substantially similar directions; and
responsive to determining that the first direction and the second direction are substantially similar directions, indicating that the street segment is a one-way street segment.

### Claim 7

A computing system comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the processor, cause the computing system to at least:
receive a plurality of instances of vehicle telematics data indicative of a travel path of a vehicle on a street segment during one or more time periods, wherein each instance of the vehicle telematics data (a) comprises location data captured by a location-determining device onboard the vehicle and (b) is captured responsive to a triggering event, the plurality of instances of vehicle telematics data comprising (i) a first instance of telematics data wherein the triggering event is detection of a vehicle event based on data generated by one or more vehicle sensors of a plurality of vehicle sensors onboard the vehicle, and (ii) a second instance of telematics data wherein the triggering event is a determination that a threshold amount of time has elapsed since the preceding instance of the vehicle telematics data was captured;
segment the vehicle telematics data to determine the portion of the vehicle telematics data corresponding to the travel path of the vehicle on the street, wherein to segment the vehicle telematics data, the at least one memory and the computer program code are configured to, with the processor, cause the computing system to at least:
access a street segment definition associated with the street segment,
identify a plurality of data points along the street segment, wherein identifying the plurality of data points comprises identifying (a) a segment starting point where the vehicle entered the street segment, where the segment starting point is a data point where an immediately preceding data point was not captured when the vehicle was located on the street segment and (b) a segment ending point where the vehicle exited the street segment, where the segment ending point is a data point where an immediately seceding data point was not captured when the vehicle was located on the street segment,
assess the location data of the vehicle telematics data based on the street segment definition,
identify one or more instances of vehicle telematics data corresponding to the street segment definition, and
define a set of instances of vehicle telematics data consisting of the identified one or more instances of vehicle telematics data corresponding to the street segment definition,
based at least in part on the set of instances of vehicle telematics data, determine a street segment direction for the street segment, the determined street segment direction indicating whether the street segment is a one-way street segment or a bidirectional street segment;
identify map data associated with the street segment, wherein the map data
comprises street segment direction data indicator indicating whether the street segment is a one-way street segment or a bidirectional street segment; and
update the map data to reflect the determined street segment direction for the street segment direction.

### Claim 8 (depends on 7)

The computing system of claim 7, wherein determining a street segment direction for the street segment comprises determining a heading associated with the travel path of the vehicle based at least in part on the vehicle telematics data.

### Claim 9 (depends on 7)

The computing system of claim 7, wherein the street segment is a one-way street segment.

### Claim 10 (depends on 7)

The computing system of claim 7, wherein the street segment is a bidirectional street segment.

### Claim 11 (depends on 7)

The computing system of claim 7 wherein the at least one memory and the computer program code are further configured to, with the processor, cause the computing system to at least:
determine a first heading associated with the vehicle telematics data, wherein the first heading indicates that the vehicle traveled along the street segment in a first direction;
determine a second heading associated with the vehicle telematics data, wherein the second heading indicates that the vehicle traveled along the street segment in a second direction;
determine whether the first direction and the second direction are substantially different directions; and
responsive to determining that the first direction and the second direction are substantially different directions, indicate that the street segment is a bi-directional segment.

### Claim 12 (depends on 7)

The computing system of claim 7 wherein the at least one memory and the computer program code are further configured to, with the processor, cause the computing system to at least:
determine a first heading associated with the vehicle telematics data, wherein the first heading indicates that the vehicle traveled along the street segment in a first direction;
determine a second heading associated with the vehicle telematics data, wherein the second heading indicates that the vehicle traveled along the street segment in a second direction;
determine whether the first direction and the second direction are substantially similar directions; and
responsive to determining that the first direction and the second direction are substantially similar directions, indicate that the street segment is a one-way street segment.

### Claim 13

A computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:
an executable portion configured to receive a plurality of instances of vehicle telematics data indicative of a travel path of a vehicle on a street segment during one or more time periods, wherein each instance of the vehicle telematics data (a) comprises location data captured by a location-determining device onboard the vehicle and (b) is captured responsive to a triggering event, the plurality of instances of vehicle telematics data comprising (i) a first instance of telematics data wherein the triggering event is detection of a vehicle event based on data generated by one or more vehicle sensors of a plurality of vehicle sensors onboard the vehicle, and (ii) a second instance of telematics data wherein the triggering event is a determination that a threshold amount of time has elapsed since the preceding instance of the vehicle telematics data was captured;
an executable portion configured to segment the vehicle telematics data to determine the portion of the vehicle telematics data corresponding to the travel path of the vehicle on the street, wherein, to segment the vehicle telematics data, the executable portion is configured to:
access a street segment definition associated with the street segment, assess the location data of the vehicle telematics data based on the street segment definition,
identify a plurality of data points along the street segment, wherein identifying the plurality of data points comprises identifying a segment starting point where the vehicle entered the street segment, where the segment starting point is a data point where an immediately preceding data point was not captured when the vehicle was located on the street segment,
identify one or more instances of vehicle telematics data corresponding to the street segment definition, and
define a set of instances of vehicle telematics data consisting of the identified one or more instances of vehicle telematics data corresponding to the street segment definition,
an executable portion configured to, based at least in part on the set of instances of vehicle telematics data, determine a street segment direction for the street segment, the determined street segment direction indicating whether the street segment is a one-way street segment or a bidirectional street segment;
an executable portion configured to identify map data associated with the street segment, wherein the map data comprises street segment direction data indicator indicating whether the street segment is a one-way street segment or a bidirectional street segment; and
an executable portion configured to update the map data to reflect the determined street segment direction for the street segment direction.

### Claim 14 (depends on 13)

The computer program product of claim 13, wherein determining a street segment direction for the street segment comprises determining a heading associated with the travel path of the vehicle based at least in part on the vehicle telematics data.

### Claim 15 (depends on 13)

The computer program product of claim 13, wherein the street segment is a one-way street segment.

### Claim 16 (depends on 13)

The computer program product of claim 13, wherein the street segment is a bidirectional street segment.

### Claim 17 (depends on 13)

The computer program product of claim 13 wherein the computer-readable program code portions further comprise:
an executable portion configured to determine a first heading associated with the vehicle telematics data, wherein the first heading indicates that the vehicle traveled along the street segment in a first direction;
an executable portion configured to determine a second heading associated with the vehicle telematics data, wherein the second heading indicates that the vehicle traveled along the street segment in a second direction;
an executable portion configured to determine whether the first direction and the second direction are substantially different directions; and
an executable portion configured to, responsive to determining that the first direction and the second direction are substantially different directions, indicate that the street segment is a bidirectional segment.

### Claim 18 (depends on 13)

The computer program product of claim 13 wherein the computer-readable program code portions further comprise:
an executable portion configured to determine a first heading associated with the vehicle telematics data, wherein the first heading indicates that the vehicle traveled along the street segment in a first direction;
an executable portion configured to determine a second heading associated with the vehicle telematics data, wherein the second heading indicates that the vehicle traveled along the street segment in a second direction;
an executable portion configured to determine whether the first direction and the second direction are substantially similar directions; and
an executable portion configured to, responsive to determining that the first direction and the second direction are substantially similar directions, indicate that the street segment is a one-way street segment.
