# US 11,079,240 B2 · Method, system and apparatus for adaptive particle filter localization

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

- Number: US 11,079,240 B2
- Document ID: US11079240B2
- Status: Granted
- Kind: B2
- Application number: 16/213,553
- Filed: 2018-12-07
- Published: 2020-06-11
- Granted: 2021-08-03
- Earliest claimed: 2018-12-07
- Assignees: Zebra Technologies Corporation
- Applicants: Zebra Technologies Corporation
- Inventors: Sadegh Tajeddin; Harsoveet Singh; Jingxing Qian
- Web page: https://patentgrep.com/patent/US11079240B2

## CPC

- G01C 21/206: {specially adapted for indoor navigation}
- G05D 1/0231: {using optical position detecting means (position-fixing by using electromagnetic waves other than radio waves, e.g. optical position detecting means G01S5/16)}
- G05D 1/024: {in combination with a laser (lasers per se H01S)}
- G05D 1/0274: {using mapping information stored in a memory device (navigation using map-matching G01C21/30)}
- G06Q 10/08: Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- 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
- 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

## Abstract

A method for localization of a mobile automation apparatus includes, at a navigational controller: generating a set of candidate poses within an environmental map; updating the candidate poses according to motion data corresponding to movement of the mobile automation apparatus; receiving observational data collected at an actual pose of the mobile automation apparatus; generating (i) respective weights for the candidate poses, each weight indicating a likelihood that the corresponding candidate pose matches the actual pose, and (ii) a localization confidence level based on the weights; responsive to determining whether the localization confidence level exceeds a candidate pose resampling threshold: when the determination is affirmative, (i) increasing the candidate pose resampling threshold and (ii) generating a further set of candidate poses; and when the determination is negative, (i) decreasing the candidate pose resampling threshold without generating the further set; and repeating the updating, the receiving, the generating and the determining.

## Claims

### Claim 1

A method for localization of a mobile automation apparatus, the method comprising, at a navigational controller:
generating a set of candidate poses within an environmental map;
updating the set of candidate poses according to motion data corresponding to movement of the mobile automation apparatus;
receiving observational data from a field of view collected at an actual pose of the mobile automation apparatus;
generating (i) respective weights for the candidate poses, each weight indicating a likelihood that the corresponding candidate pose matches the actual pose, and (ii) a localization confidence level based on the weights; and
responsive to determining whether the localization confidence level exceeds a candidate pose resampling threshold:
when the determination is affirmative, (i) increasing the candidate pose resampling threshold and (ii) generating a further set of candidate poses; and
when the determination is negative, (i) decreasing the candidate pose resampling threshold without generating the further set.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
presenting a localization of the mobile automation apparatus based on the localization confidence level.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
prior to generating the set of candidate poses, retrieving the map from a memory.

### Claim 4 (depends on 1)

The method of claim 1, wherein updating the set of candidate poses according to the motion data comprises:
receiving the motion data from a motion sensor of the mobile apparatus; and
re-locating each of the candidate poses relative to the map based on the motion data.

### Claim 5 (depends on 1)

The method of claim 1, wherein receiving the observational data includes receiving depth scan data captured by a depth sensor of the mobile automation apparatus.

### Claim 6 (depends on 1)

The method of claim 1, wherein generating the weights comprises:
determining, based on the map, expected observational data; and
comparing the expected observational data to the observational data.

### Claim 7 (depends on 1)

The method of claim 1, wherein generating the localization confidence level comprises: selecting a subset of the candidate poses, and generating an average of the weights corresponding to the subset.

### Claim 8 (depends on 1)

The method of claim 1, wherein decreasing the candidate pose resampling threshold comprises decreasing the candidate pose resampling threshold by a predetermined step value.

### Claim 9 (depends on 1)

The method of claim 1, wherein increasing the candidate pose resampling threshold comprises setting the candidate pose resampling threshold to a value equal to a highest one of the weights.

### Claim 10

A mobile automation apparatus, comprising
a motion sensor;
an observational sensor; and
a navigational controller connected to the motion sensor and the observational sensor; the navigational controller configured to:
generate a set of candidate poses within an environmental map;
update the set of candidate poses according to motion data collected via the motion sensor;
collect observational data from a field of view corresponding to an actual pose of the mobile automation apparatus via the observational sensor;
generate (i) respective weights for the candidate poses, each weight indicating a likelihood that the corresponding candidate pose matches the actual pose, and (ii) a localization confidence level based on the weights; and
determine whether the localization confidence level exceeds a candidate pose resampling threshold, and responsive to the determination:
when the determination is affirmative, (i) increase the candidate pose resampling threshold and (ii) generate a further set of candidate poses; and
when the determination is negative, (i) decrease the candidate pose resampling threshold without generating the further set.

### Claim 11 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured to: present a localization of the mobile automation apparatus based on the localization confidence level.

### Claim 12 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured to: prior to generating the set of candidate poses, retrieve the map from a memory.

### Claim 13 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured, to update the set of candidate poses according to the motion data, to:
receive the motion data from a motion sensor of the mobile apparatus; and
re-locate each of the candidate poses relative to the map based on the motion data.

### Claim 14 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured to receive the observational data as depth scan data.

### Claim 15 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured, to generate the weights, to:
determine, based on the map, expected observational data; and
compare the expected observational data to the observational data.

### Claim 16 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured, to generate the localization confidence level, to:
select a subset of the candidate poses, and generate an average of the weights corresponding to the subset.

### Claim 17 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured, to decrease the candidate pose resampling threshold, to: decrease the candidate pose resampling threshold by a predetermined step value.

### Claim 18 (depends on 10)

The mobile automation apparatus of claim 10, wherein the navigational controller is further configured, to increase the candidate pose resampling threshold, to set the candidate pose resampling threshold to a value equal to a highest one of the weights.

### Claim 19 (depends on 10)

The mobile automation apparatus of claim 10, wherein the motion sensor includes an inertial measurement unit; and wherein the observational sensor includes a lidar sensor.

### Claim 20

A non-transitory computer-readable medium storing a plurality of computer-readable instructions executable by a navigational controller, wherein execution of the computer-readable instructions configures the navigational controller to:
generate a set of candidate poses within an environmental map;
update the set of candidate poses according to motion data collected via a motion sensor;
collect observational data from a field of view corresponding to an actual pose of the mobile automation apparatus via an observational sensor;
generate (i) respective weights for the candidate poses, each weight indicating a likelihood that the corresponding candidate pose matches the actual pose, and (ii) a localization confidence level based on the weights; and
determine whether the localization confidence level exceeds a candidate pose resampling threshold, and responsive to the determination:
when the determination is affirmative, (i) increase the candidate pose resampling threshold and (ii) generate a further set of candidate poses; and
when the determination is negative, (i) decrease the candidate pose resampling threshold without generating the further set.

### Claim 21 (depends on 1)

The method of claim 1, wherein when the determination is negative, (i) decreasing the candidate pose resampling threshold without generating the further set and (ii) repeating the updating, the receiving, the generating respective weights and the determining.
