# US 10,871,547 B1 · Radiofrequency based virtual motion model for localization using particle filter

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

- Number: US 10,871,547 B1
- Document ID: US10871547B1
- Status: Granted
- Kind: B1
- Application number: 16/725,822
- Filed: 2019-12-23
- Granted: 2020-12-22
- Earliest claimed: 2019-12-23
- Assignees: Fuji Xerox Co., Ltd.
- Applicants: Fuji Xerox Co., Ltd.
- Inventors: Miteshkumar Patel; Jacob Biehl; Andreas Girgensohn
- Web page: https://patentgrep.com/patent/US10871547B1

## CPC

- G01S 5/0294: {Trajectory determination or predictive filtering, e.g. target tracking or Kalman filtering}
- G01S 11/06: using intensity measurements
- G01S 13/74: Systems using reradiation of radio waves, e.g. secondary radar systems; Analogous systems
- G06F 18/24: Classification techniques
- H04B 17/27: for locating or positioning the transmitter
- H04B 17/318: Received signal strength
- H04W 4/027: {using movement velocity, acceleration information}
- H04W 4/80: Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
- 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
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04B: TRANSMISSION
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

System is built using the particle filter (PF) framework which utilizes data from round trip time (RTT) ranging or BLE signal strength to perform both (1) sensing the environment by using the scan data during measurement phase and (2) detect motion state of the user which it utilized during the motion update phase of PF. To detect the motion state of the user the temporal difference of the received ranging scans is used over which is utilized within the PF framework. The primary advantage of the described technique is that the velocity parameter of the PF can dynamically be updated based on the motion state as estimated using ranging scans.

## Claims

### Claim 1

A computer-implemented method, the method being performed in computerized system comprising a central processing unit, a localization signal receiver and a memory, the computer-implemented method comprising, iteratively:
receiving at least one localization signal using the localization signal receiver;
determining a round trip time for the at least one localization signal;
determining at least one velocity parameter of a user's motion state based on the determined round trip time and a preceding round trip time of a preceding iteration;
executing a particle filter loop based at least on the received localization signal and the determined at least one velocity parameter of the user's motion, the particle filter loop comprises performing a measurement update using at least the determined round trip time and calculating a distance between each of a plurality of particles and at least one radiofrequency beacon based on the received radiofrequency localization signal, performing a motion update using at least the at least one velocity parameter, and resampling a plurality of particles; and
determining a position of the user based at least on the execution of the particle filter loop, wherein determining the position of the user comprises continuously executing the particle filter loop in parallel with determining the at least one velocity parameter.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein performing the measurement update comprises updating a plurality of particles using a confidence of a classifier.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein resampling the plurality of particles comprises calculating a weight for each of a plurality of particles and replicating particles of the plurality of particles with higher weights.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the measurement update is performed based on a second received at least one localization signal.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the motion update is performed based on a second velocity parameter of the user's motion state.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein receiving the at least one localization signal comprises determining a strength of the at least one localization signal.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein the at least one localization signal is a radiofrequency (RF) signal.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein the at least one localization signal is a Bluetooth Low Energy (BLE) signal.

### Claim 9 (depends on 1)

The computer-implemented method of claim 1, wherein the at least one localization signal is a WIFI round trip time (WIFI RTT) signal.

### Claim 10 (depends on 1)

The computer-implemented method of claim 1, wherein determining a position of the user comprises determining coordinates of the user.

### Claim 11

A non-transitory computer-readable medium embodying a set of computer-executable instructions, which, when executed in connection with a system comprising a central processing unit, a localization signal receiver and a memory, cause the system to perform a method comprising, iteratively:
receiving at least one localization signal using the localization signal receiver;
determining a round trip time for the at least one localization signal;
determining at least one velocity parameter of a user's motion state based on the determined round trip time and a preceding round trip time of a preceding iteration;
executing a particle filter loop based at least on the received localization signal and the determined at least one velocity parameter of the user's motion, the particle filter loop comprises performing a measurement update using at least the determined round trip time and calculating a distance between each of a plurality of particles and at least one radiofrequency beacon based on the received radiofrequency localization signal, performing a motion update using at least the at least one velocity parameter, and resampling a plurality of particles; and
determining a position of the user based at least on the execution of the particle filter loop, wherein determining the position of the user comprises continuously executing the particle filter loop in parallel with determining the at least one velocity parameter.

### Claim 12

A system comprising a central processing unit, a localization signal receiver and a memory, the memory storing a set of computer-readable instructions causing the system to perform a method comprising, iteratively:
receiving at least one localization signal using the localization signal receiver;
determining a round trip time for the at least one localization signal;
determining at least one velocity parameter of a user's motion state based on the determined round trip time and a preceding round trip time of a preceding iteration;
executing a particle filter loop based at least on the received localization signal and the determined at least one velocity parameter of the user's motion, the particle filter loop comprises performing a measurement update using at least the determined round trip time and calculating a distance between each of a plurality of particles and at least one radiofrequency beacon based on the received radiofrequency localization signal, performing a motion update using at least the at least one velocity parameter, and resampling a plurality of particles; and
determining a position of the user based at least on the execution of the particle filter loop, wherein determining the position of the user comprises continuously executing the particle filter loop in parallel with determining the at least one velocity parameter.
