# US 2014/0152494 A1 · Elevation Assistance for Location Determination

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

- Number: US 2014/0152494 A1
- Document ID: US20140152494A1
- Status: Published application
- Kind: A1
- Application number: 13/794,117
- Filed: 2013-03-11
- Published: 2014-06-05
- Earliest claimed: 2012-06-08
- Assignees: Apple Inc.
- Inventors: Glenn Donald MacGougan; Robert Mayor
- Web page: https://patentgrep.com/patent/US20140152494A1

## CPC

- G01S 19/03: Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
- G01S 19/26: involving a sensor measurement for aiding acquisition or tracking
- G01S: RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES

## Abstract

In some implementations, a tightly-coupled elevation-assisted location estimate can be calculated based on digital elevation model (DEM) elevation measurements and global navigation satellite system (GNSS) data. The DEM elevation measurements and GNSS data can be provided as input to an estimator (e.g., a Kalman filter) to calculate an estimated geographic location of a mobile device. In some implementations, DEM elevation data can be filtered before being provided to the Kalman filter for estimating the geographic location of the mobile device. The DEM elevation data can be filtered in response to detecting bridge and/or tunnel events that indicate that the DEM elevation data does not accurately represent the actual elevation of the mobile device.

## Claims

### Claim 1

A method comprising:
receiving global navigation satellite system (GNSS) data at a mobile device;
receiving, at the mobile device, elevation data for a current location of the mobile device from an elevation data model;
determining that an bridge event or tunnel event has occurred;
adjusting the elevation data in response to the bridge event or tunnel event; and
estimating a location of the mobile device based on the GNSS data and the elevation data.

### Claim 2 (depends on 1)

The method of claim 1, wherein the elevation data model comprises a look-up table of elevation data indexed by location.

### Claim 3 (depends on 1)

The method of claim 1, wherein estimating the location of the mobile device comprises performing a tightly-coupled estimation using the elevation data and GNSS data measurements as input to the estimation.

### Claim 4 (depends on 1)

The method of claim 1, wherein estimating the location of the mobile device comprises performing sequential Kalman filter measurement updates using the elevation data as input to the Kalman filter.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
determining that the mobile device is moving faster than a threshold speed value; and
excluding the elevation data from the location estimation when a slope between the elevation and a previous elevation is greater than a threshold slope value.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
determining that the mobile device is moving faster than a threshold speed value; and
excluding the elevation data from the location estimation when a slope between the elevation and a previous elevation is less than a threshold slope value.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
determining that elevation data for the current location is not stored on the mobile device; and
receiving elevation data for the current location from a network resource.

### Claim 8 (depends on 7)

The method of claim 7, wherein receiving elevation data for the current location comprises receiving a DEM tile for an area corresponding to the current location and one or more DEM tiles adjacent to the DEM tile.

### Claim 9 (depends on 1)

The method of claim 1, wherein determining an elevation based on the stored elevation data and the current location comprises propagating the current location forward a number of seconds and determining the elevation based on the stored elevation data and the propagated location.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
adding a user elevation bias to the elevation to generate an adjusted elevation; and
estimating the location of the mobile device based on the adjusted elevation and the GNSS data.

### Claim 11

A non-transitory computer-readable medium including one or more sequences of instructions which, when executed by one or more processors, causes:
receiving global navigation satellite system (GNSS) data at a mobile device;
receiving, at the mobile device, elevation data for a current location of the mobile device from an elevation data model;
determining that an bridge event or tunnel event has occurred;
adjusting the elevation data in response to the bridge event or tunnel event; and
estimating a location of the mobile device based on the GNSS data and the elevation data.

### Claim 12 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the elevation data model comprises a look-up table of elevation data indexed by location.

### Claim 13 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the instructions that cause estimating the location of the mobile device comprise instructions that cause performing a tightly-coupled estimation using the elevation data and GNSS data measurements as input to the estimation.

### Claim 14 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the instructions that cause estimating the location of the mobile device comprise instructions that cause performing sequential Kalman filter measurement updates using the elevation data as input to the Kalman filter.

### Claim 15 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the instructions cause:
determining that the mobile device is moving faster than a threshold speed value; and
excluding the elevation data from the location estimation when a slope between the elevation and a previous elevation is greater than a threshold slope value.

### Claim 16 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the instructions cause:
determining that the mobile device is moving faster than a threshold speed value; and
excluding the elevation data from the location estimation when a slope between the elevation and a previous elevation is less than a threshold slope value.

### Claim 17 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the instructions cause:
determining that elevation data for the current location is not stored on the mobile device; and
receiving elevation data for the current location from a network resource.

### Claim 18 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the instructions that cause receiving elevation data for the current location comprise instructions that cause receiving a DEM tile for an area corresponding to the current location and one or more DEM tiles adjacent to the DEM tile.

### Claim 19 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the instructions that cause determining an elevation based on the stored elevation data and the current location comprise instructions that cause propagating the current location forward a number of seconds and determining the elevation based on the stored elevation data and the propagated location.

### Claim 20 (depends on 11)

The non-transitory computer-readable medium of claim 11, wherein the instructions cause:
adding a user elevation bias to the elevation to generate an adjusted elevation; and
estimating the location of the mobile device based on the adjusted elevation and the GNSS data.

### Claim 21

A system comprising:
one or more processors; and
a computer-readable medium including one or more sequences of instructions which, when executed by the one or more processors, causes:
receiving global navigation satellite system (GNSS) data at a mobile device;
receiving, at the mobile device, elevation data for a current location of the mobile device from an elevation data model;
determining that an bridge event or tunnel event has occurred;
adjusting the elevation data in response to the bridge event or tunnel event; and
estimating a location of the mobile device based on the GNSS data and the elevation data.

### Claim 22 (depends on 21)

The system of claim 21, wherein the elevation data model comprises a look-up table of elevation data indexed by location.

### Claim 23 (depends on 21)

The system of claim 21, wherein the instructions that cause estimating the location of the mobile device comprise instructions that cause performing a tightly-coupled estimation using the elevation data and GNSS data measurements as input to the estimation.

### Claim 24 (depends on 21)

The system of claim 21, wherein the instructions that cause estimating the location of the mobile device comprise instructions that cause performing sequential Kalman filter measurement updates using the elevation data as input to the Kalman filter.

### Claim 25 (depends on 21)

The system of claim 21, wherein the instructions cause:
determining that the mobile device is moving faster than a threshold speed value; and
excluding the elevation data from the location estimation when a slope between the elevation and a previous elevation is greater than a threshold slope value.

### Claim 26 (depends on 21)

The system of claim 21, wherein the instructions cause:
determining that the mobile device is moving faster than a threshold speed value; and
excluding the elevation data from the location estimation when a slope between the elevation and a previous elevation is less than a threshold slope value.

### Claim 27 (depends on 21)

The system of claim 21, wherein the instructions cause:
determining that elevation data for the current location is not stored on the mobile device; and
receiving elevation data for the current location from a network resource.

### Claim 28 (depends on 27)

The system of claim 27, wherein the instructions that cause receiving elevation data for the current location comprise instructions that cause receiving a DEM tile for an area corresponding to the current location and one or more DEM tiles adjacent to the DEM tile.

### Claim 29 (depends on 21)

The system of claim 21, wherein the instructions that cause determining an elevation based on the stored elevation data and the current location comprise instructions that cause propagating the current location forward a number of seconds and determining the elevation based on the stored elevation data and the propagated location.

### Claim 30 (depends on 21)

The system of claim 21, wherein the instructions cause:
adding a user elevation bias to the elevation to generate an adjusted elevation; and
estimating the location of the mobile device based on the adjusted elevation and the GNSS data.
