# US 12,215,985 B1 · Offline registration of elements between maps

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

- Number: US 12,215,985 B1
- Document ID: US12215985B1
- Status: Granted
- Kind: B1
- Application number: 17/701,087
- Filed: 2022-03-22
- Granted: 2025-02-04
- Earliest claimed: 2018-09-06
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Mikhail Tsoupko-Sitnikov; Can Koc; Marlene Wan; Lukas M. Marti
- Web page: https://patentgrep.com/patent/US12215985B1

## CPC

- G01C 21/367: {Details, e.g. road map scale, orientation, zooming, illumination, level of detail, scrolling of road map or positioning of current position marker}
- G01C 21/387: {Organisation of map data, e.g. version management or database structures}
- G01C 21/3446: {Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags or using precalculated routes}
- G01C 21/3453: {Special cost functions, i.e. other than distance or default speed limit of road segments}
- G05D 1/0212: {with means for defining a desired trajectory (involving a plurality of land vehicles G05D1/0287)}
- 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)
- G05D: SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES

## Abstract

A method includes obtaining a first map element from a first map, identifying second map elements from a second map based on locations of the second map elements relative to the first map element, and identifying first and second point on the second map elements based on proximity to beginning and ending points of the first map element. One or more of the second map elements define a corresponding portion of the second map between the first point and the second point. The method also includes determining a registration score for the first map element relative to the corresponding portion of the second map, and in response to determining that the registration score indicates a match between the first map element and the corresponding portion of the second map, defining registration information that describes a relationship between the first map element and the corresponding portion of the second map.

## Claims

### Claim 1

A method, comprising:
obtaining a first map element from a first map, the first map element having a starting location and an ending location;
matching the first map element to one or more second map elements from a second map;
identifying a first point and a second point on the one or more second map elements from the second map, wherein the first point corresponds to the starting location of the first map element and the second point corresponds to the ending location of the first map element;
defining registration information that identifies the first map element as corresponding to the one or more second map elements from the first point to the second point;
storing the registration information for use in transferring information between the first map and the second map;
transferring information from the first map to the second map using the registration information in response to a route request;
generating a route in response to the route request using the second map and the information transferred from the first map to the second map; and
performing one of:
outputting a display of the second map and the route, or
controlling an autonomous vehicle to travel toward a destination using the route.

### Claim 2 (depends on 1)

The method of claim 1, wherein the registration information includes a list of the one or more second map elements, a beginning offset value that represents a location of the first point, and an ending offset value that represents a location of the second point.

### Claim 3 (depends on 1)

The method of claim 1, wherein the registration information identifies a first one of one or more second map elements as corresponding to the starting location of the first map element from the first map and as corresponding to the ending location of the first map element from the first map, describes the starting location of the first map element from the first map as a first position along the first one of the one or more second map elements, and describes the ending location of the first map element from the first map as a second position along the first one of the one or more second map elements.

### Claim 4 (depends on 1)

The method of claim 1, wherein:
the registration information identifies a first one of the one or more second map elements as corresponding to the starting location of the first map element from the first map and describes the starting location of the first map element from the first map as a position along the first one of the one or more second map elements, and
the registration information identifies a second one of the one or more second map elements as corresponding to the ending location of the first map element from the first map and describes the end location of the first map element from the first map as a position along the second one of the one or more second map elements.

### Claim 5 (depends on 1)

The method of claim 1, wherein matching the first map element to the one or more second map elements is based in part on proximity of the first map element from the first map to the one or more second map elements from the second map.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
determining that a traversable route exists along the one or more second map elements from the second map from the first point to the second point to verify that the one or more second map elements are sequentially connected.

### Claim 7 (depends on 1)

The method of claim 1, wherein matching the first map element to the one or more second map elements is based in part on one or more of a Hausdorff distance, a direction mismatch angle, or a relative length metric.

### Claim 8

A non-transitory computer-readable storage device including program instructions executable by one or more processors that, when executed, cause the one or more processors to perform operations, the operations comprising:
obtaining a first map element from a first map, the first map element having a starting location and an ending location;
matching the first map element to one or more second map elements from a second map;
identifying a first point and a second point on the one or more second map elements from the second map, wherein the first point corresponds to the starting location of the first map element and the second point corresponds to the ending location of the first map element;
defining registration information that identifies the first map element as corresponding to the one or more second map elements from the first point to the second point;
storing the registration information for use in transferring information between the first map and the second map;
transferring information from the first map to the second map using the registration information in response to a route request;
generating a route in response to the route request using the second map and the information transferred from the first map to the second map; and
performing one of:
outputting a display of the second map and the route, or
controlling an autonomous vehicle to travel toward a destination using the route.

### Claim 9 (depends on 8)

The non-transitory computer-readable storage device of claim 8, wherein the registration information includes a list of the one or more second map elements, a beginning offset value that represents a location of the first point, and an ending offset value that represents a location of the second point.

### Claim 10 (depends on 8)

The non-transitory computer-readable storage device of claim 8, wherein the registration information identifies a first one of the one or more second map elements as corresponding to the starting location of the first map element from the first map and as corresponding to the ending location of the first map element from the first map, describes the starting location of the first map element from the first map as a first position along the first one of the one or more second map elements, and describes the ending location of the first map element from the first map as a second position along the first one of the one or more second map elements.

### Claim 11 (depends on 8)

The non-transitory computer-readable storage device of claim 8, wherein:
the registration information identifies a first one of the one or more second map elements as corresponding to the starting location of the first map element from the first map and describes the starting location of the first map element from the first map as a position along the first one of the one or more second map elements, and
the registration information identifies a second one of the one or more second map elements as corresponding to the ending location of the first map element from the first map and describes the end location of the first map element from the first map as a position along the second one of the one or more second map elements.

### Claim 12 (depends on 8)

The non-transitory computer-readable storage device of claim 8, wherein matching the first map element to the one or more second map elements is based in part on proximity of the first map element from the first map to the one or more second map elements from the second map.

### Claim 13 (depends on 8)

The non-transitory computer-readable storage device of claim 8, the operations further comprising:
determining that a traversable route exists along the one or more second map elements from the second map from the first point to the second point to verify that the one or more second map elements are sequentially connected.

### Claim 14 (depends on 8)

The non-transitory computer-readable storage device of claim 8, wherein matching the first map element to the one or more second map elements is based in part on one or more of a Hausdorff distance, a direction mismatch angle, or a relative length metric.

### Claim 15

A system, comprising:
a memory; and
a processor configured to execute instructions stored in the memory to:
obtain a first map element from a first map, the first map element having a starting location and an ending location;
match the first map element to one or more second map elements from a second map;
identify a first point and a second point on the one or more second map elements from the second map, wherein the first point corresponds to the starting location of the first map element and the second point corresponds to the ending location of the first map element;
define registration information that identifies the first map element as corresponding to the one or more second map elements from the first point to the second point;
store the registration information for use in transferring information between the first map and the second map;
transfer information from the first map to the second map using the registration information in response to a route request;
generate a route in response to the route request using the second map and the information transferred from the first map to the second map; and
perform one of:
output a display of the second map and the route, or
control an autonomous vehicle to travel toward a destination using the route.

### Claim 16 (depends on 15)

The system of claim 15, wherein the registration information includes a list of the one or more second map elements, a beginning offset value that represents a location of the first point, and an ending offset value that represents a location of the second point.

### Claim 17 (depends on 15)

The system of claim 15, wherein the registration information identifies a first one of the one or more second map elements as corresponding to the starting location of the first map element from the first map and as corresponding to the ending location of the first map element from the first map, describes the starting location of the first map element from the first map as a first position along the first one of the one or more second map elements, and describes the ending location of the first map element from the first map as a second position along the first one of the one or more second map elements.

### Claim 18 (depends on 15)

The system of claim 15, wherein:
the registration information identifies a first one of the one or more second map elements as corresponding to the starting location of the first map element from the first map and describes the starting location of the first map element from the first map as a position along the first one of the one or more second map elements, and
the registration information identifies a second one of the one or more second map elements as corresponding to the ending location of the first map element from the first map and describes the end location of the first map element from the first map as a position along the second one of the one or more second map elements.

### Claim 19 (depends on 15)

The system of claim 15, wherein matching the first map element to the one or more second map elements is based in part on proximity of the first map element from the first map to the one or more second map elements from the second map.

### Claim 20 (depends on 15)

The system of claim 15, wherein the processor is further configured to execute the instructions stored in the memory to:
determine that a traversable route exists along the one or more second map elements from the second map from the first point to the second point to verify that the one or more second map elements are sequentially connected.

### Claim 21 (depends on 15)

The system of claim 15, wherein matching the first map element to the one or more second map elements is based in part on one or more of a Hausdorff distance, a direction mismatch angle, or a relative length metric.
