# US 12,181,290 B2 · Curvature value detection and evaluation

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

- Number: US 12,181,290 B2
- Document ID: US12181290B2
- Status: Granted
- Kind: B2
- Application number: 17/576,367
- Filed: 2022-01-14
- Published: 2022-07-21
- Granted: 2024-12-31
- Earliest claimed: 2021-01-15
- Assignees: HERE Global B.V.
- Applicants: HERE Global B.V.
- Inventors: Liming Wang; Qin Chen
- Web page: https://patentgrep.com/patent/US12181290B2

## CPC

- G01C 21/32: Structuring or formatting of map data
- G01B 11/24: for measuring contours or curvatures
- G01C 21/265: {constructional aspects of navigation devices, e.g. housings, mountings, displays (G01C21/3688 takes precedence)}
- G01C 21/3819: {Road shape data, e.g. outline of a route}
- G01C 21/3841: {Data obtained from two or more sources, e.g. probe vehicles}
- 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)
- G01B: MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS

## Abstract

Systems and methods for the detection and analysis of curvature data are described. A method includes: receiving position data of a vehicle turning maneuver along a portion of a roadway, where the position data includes measured position data collected by sensors of a vehicle while traversing the vehicle turning maneuver; associating the received position data with map data of the portion of the roadway; generating a spline based on the position data, the spline being a smooth curve representing the vehicle turning maneuver from a first road segment to a second road segment; identifying a segment of the spline containing a turning point of the vehicle turning maneuver, the turning point representing a change of a vehicle path from along the first road segment to along the second road segment; and determining a maximum curvature value for the identified segment of the spline.

## Claims

### Claim 1

A method comprising:
receiving, by a processor, position data of a vehicle turning maneuver along a portion of a roadway, wherein the position data comprises measured position data collected by sensors of a vehicle while traversing the vehicle turning maneuver;
associating, by the processor, the received position data with map data of the portion of the roadway;
generating, by the processor, a spline based on the position data, the spline being a smooth curve representing the vehicle turning maneuver from a first road segment to a second road segment;
identifying a segment of the spline containing a turning point of the vehicle turning maneuver, the turning point representing a change of a vehicle path from along the first road segment to along the second road segment;
determining a maximum curvature value for the identified segment of the spline; and
selecting an assisted or automated driving function based on the maximum curvature value.

### Claim 2 (depends on 1)

The method of claim 1, wherein identifying the segment of the spline comprises:
identifying a common node or point of intersection between the first road segment and the second road segment in the map data;
determining a projection point on the spline nearest the common node or point of intersection; and
identifying a predetermined range of the spline centered at the projection point as the segment of the spline.

### Claim 3 (depends on 1)

The method of claim 1, wherein the receiving, associating, generating, identifying, and determining are repeated for a plurality of sets of position data corresponding to the vehicle turning maneuver, wherein each set of position data of the plurality of sets of position data is separately collected by the vehicle or another vehicle while traversing the vehicle turning maneuver, the method further comprising:
calculating an average curvature value of respective maximum curvature values for the plurality of sets of position data, wherein the average curvature value represents a ground truth curvature value.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
calculating an error tolerance range for the average curvature value based on the received position data for the plurality of sets of position data.

### Claim 5 (depends on 4)

The method of claim 4, wherein calculating the error tolerance range comprises:
calculating a plurality of three-sigma error values for a plurality of radii, wherein a respective three-sigma error value represents an allowable relative error for a respective radius;
applying a least-square curve fitting function to the plurality of three-sigma error values to generate a least-square fitted curve; and
determining the error tolerance range for the average curvature value based on the least-square fitted curve.

### Claim 6 (depends on 1)

The method of claim 1, wherein the associating is performed by a path-based map matcher.

### Claim 7 (depends on 1)

The method of claim 1, wherein the spline is generated using a cubic spline fitting technique.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
associating, by the processor, the maximum curvature value for the identified segment of the spline with the map data.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
reporting the maximum curvature value to a map developer.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
storing the maximum curvature value in a map database or geographic database.

### Claim 11 (depends on 10)

The method of claim 10, wherein storing the maximum curvature value in the map database or geographic database further comprises:
storing the maximum curvature value such that maximum curvature value is queryable using a curvature value, a road segment identifier for a corresponding road segment, a node identifier for a corresponding node, or a combination thereof, as query parameters.

### Claim 12

An apparatus comprising:
a memory including a plurality of sets of vehicle trace data, wherein each set of vehicle trace data is separately collected by one or more vehicles while traversing a turning maneuver from a first road segment to a second road segment along a portion of a roadway;
a map matching module configured to associate the plurality of sets of vehicle trace data with map data of the portion of the roadway;
a splining module configured to generate respective splines for respective sets of vehicle trace data using a cubic spline fitting technique and identify respective segments of the respective splines containing a curve with a smallest radius of curvature;
a curvature module configured to determine respective maximum curvature values for the identified respective segments of the respective splines and calculate an average curvature value of the respective maximum curvature values; and
a controller configured to select an assisted or automated driving function based on the maximum curvature value.

### Claim 13 (depends on 12)

The apparatus of claim 12, wherein the splining module is further configured to identify a common node or point of intersection between the first road segment and the second road segment in the map data, determine a projection point on the respective splines nearest the common node or point of intersection, and identify a predetermined range of the respective splines centered at the projection point as the respective segments of the respective splines.

### Claim 14 (depends on 12)

The apparatus of claim 12, wherein the curvature module is further configured to associate the average curvature value with the map data.

### Claim 15 (depends on 12)

The apparatus of claim 12, wherein the curvature module is further configured to calculate an error tolerance range for the average curvature value based on the plurality of sets of vehicle trace data.

### Claim 16 (depends on 15)

The apparatus of claim 15, wherein the calculation of the error tolerance range comprises:
calculation of a plurality of three-sigma error values for a plurality of radii, wherein a respective three-sigma error value represents an allowable relative error for a respective radius;
application of a least-square curve fitting function to the plurality of three-sigma error values to generate a least-square fitted curve; and
determination of the error tolerance range for the average curvature value based on the least-square fitted curve.

### Claim 17 (depends on 12)

The apparatus of claim 12, further comprising:
a communication interface configured to report the average curvature value to a map developer.

### Claim 18

A non-transitory computer readable medium including instructions that when executed are configured to perform:
receiving position data collected by sensors of a vehicle while traversing a turning maneuver from a first road segment to a second road segment along a portion of a roadway;
associating the received position data with map data of the portion of the roadway;
generating a spline based on the position data, the spline being a smooth curve representing the turning maneuver;
identifying a segment of the spline containing a curve with a smallest radius of curvature;
determining a maximum curvature value for the identified segment of the spline; and
selecting an assisted or automated driving function based on the maximum curvature value.

### Claim 19 (depends on 18)

The non-transitory computer readable medium of claim 18, wherein the assisted or automated driving function generates a driving command based on the maximum curvature value.

### Claim 20 (depends on 19)

The non-transitory computer readable medium of claim 19, wherein the driving command engages a vehicle mechanical system to increase vehicle performance.
